Давай представим обычный день. Ты заходишь в VKвидео, и лента сама подкидывает смешные видео именно про то, что тебе нравится. Или Кинопоиск предлагает новый сериал, который ты и правда потом смотришь сутки напролет. Как они это делают? Неужели у них там сидит суперумный программист и угадывает твои мысли?
На самом деле, нет. За этим стоит машинное обучение (ML) — что-то вроде суперспособности компьютеров учиться на примерах. И сегодня мы разберем два его главных типа: с учителем и без учителя. Это не скучно, обещаю!
Учитель сказал: «Повторяй за мной!»
Представь, что ты учишь младшую сестрёнку или братика различать породы собак. Ты показываешь на картинку и говоришь: «Смотри, это хаски, у него голубые глаза и пушистая шерсть. А это корги — у него короткие лапки и большие уши».
Ты — учитель. Ваши уроки — это данные с правильными ответами, так называемые «размеченные данные». А малыш — это компьютерная модель, которая учится.
Вот как это работает в жизни:
Спам-фильтр в почте. Ты же замечал, что реклама «волшебных таблеток» летит в «Спам», а письма от друзей — во «Входящие»? Программа проанализировала миллионы писем, которые люди пометили как «спам» и «не спам», и научилась видеть разницу. Это классификация.
Прогноз оценок. Допустим, алгоритм знает, сколько часов ты играешь в компьютер, сколько времени тратишь на домашку и какие оценки получал раньше. Он может спрогнозировать твою оценку за следующую контрольную. Это регрессия — предсказание числа.
Короче говоря, обучение с учителем — это когда у компьютера есть готовые ответы, и он учится по ним, как по шпаргалке.
Без учителя, на своей волне
А теперь другая ситуация. Ты пришёл на крупное мероприятие, где никого не знаешь. Ты не ждёшь указаний, а просто наблюдаешь. Через какое-то время ты замечаешь: «О, вот группа хипстеров обсуждает новейшие кроссовки, а вон те ребята в чёрном слушают металл, а эти всё время шутят про аниме».
Ты сам нашёл группы по интересам, без всякого учителя. Именно так работает обучение без учителя. Компьютер получает кучу данных без всяких подсказок и пытается сам найти в них скрытые закономерности и группы.
Вот, например, Твоя лента в соцсетях. Алгоритм не знает заранее, что ты любишь. Но он смотрит и подмечает: «Окей, этот пользователь досматривает ролики про котов до конца, лайкает скейтбординг и на три секунды задерживается на видео про готовку». Он группирует тебя с другими такими же пользователями и советует тебе то, что понравилось им. Это называется кластеризация!
Ещё детектор странного поведения в играх. Представь, что ты разработчик Genshin Impact. Алгоритм анализирует поведение игроков при фарме артефактов. Например, в подземелье «Скрытый дворец Ляньшэнь». Большинство игроков проходят подземелье сотни раз, и их дроп — это случайные артефакты. Но один аккаунт ведёт себя аномально. Каждое прохождение подземелья приносит ему именно тот артефакт, который он хочет. Он получает легендарные пятизвёздочные артефакты с частотой, статистически невозможной для обычного дропа. Детектор аномалий Он помечает его как «подозрительный» и советует тебе проверить, не читер ли это. Это поиск аномалий.
Таким образом, обучение без учителя — это когда компьютер сам ищет крутые паттерны и группировки в данных, как будто он детектив или трендвотчер.
Так кто круче?
Спросишь, какой тип лучше? Ответ один: они просто разные, как два супергероя с разными силами.
Супервизор (с учителем) — это лидер, он точен, дисциплинирован, следует правилам и точно знает, кто враг, а кто друг. Идеален для четких задач: «распознать это», «предсказать то». Напоминает кого-нибудь из супергероев?
Ансупервизор (без учителя) — это гений, который видит мир не так, как все, находит связи там, где их никто не замечает, и сам создает новые решения. Он идеально исследует неизвестное и ищет скрытые инсайты.
В следующий раз, когда социальная сеть предложит тебе идеальный рекламный баннер или RUтуб включит именно тот клип, который ты хотел посмотреть, ты будешь знать — это не магия, а крутая работа машинного обучения. Возможно, именно ты придумаешь следующий гениальный алгоритм?
Ольга Алексеева
