По-английски метод машинного обучения с учителем называется supervised learning. Его суть в том, что для обучения нейросеть получает специальный набор данных (датасет), в котором заранее отмечено, что эти данные означают. То есть нейросеть получает и вопрос, и ответ, который должна давать. Она «смотрит» на большие объёмы таких данных и так учится отвечать правильно.
Также с его помощью можно научить нейросеть строить прогнозы на основе данных: оценивать недвижимость, предполагать изменение цен, создавать планы закупок.
❌ Нужно собрать и разметить очень большой объём обучающих данных. Это дорого и трудно, поэтому подходит не всем компаниям.
❌ Подходит не для всех видов данных. При обучении с учителем подразумевается, что нейросеть и в реальной работе будет получать точно такие же данные, какие были в обучающем датасете. Это характерно для задач классификации, но не всегда подходит для работы с более неопределёнными данными и параметрами.
Вот для каких задач можно использовать такую нейросеть:
Проводить кластерный анализ. Обученные без учителя нейронные сети лучше всего справляются с задачей кластеризации — делением большого массива данных на группы. Нейросеть способна выделить критерии отличия и поделить данные на их основе. А потом с группами уже смогут работать люди, находя нужные тенденции и проводя аналитику.
Выявлять аномалии. Для этого нейросеть сначала обучают на нормальных данных, и, когда в реальности она встречается с выбросами, то должна об этом сигнализировать. Так можно быстро обнаруживать необычное поведение покупателей, например резкий рост спроса на конкретный товар.
Находить ассоциации. Нейросеть может определить критерии похожести одних объектов на другие и строить связи. Например, рекомендовать товары в дополнение к купленным. Или показывать, что параметры сложной системы неожиданно связаны и влияют друг на друга.
❌ Нейросеть может ошибиться: выделить не те блоки данных, неправильно объединить объекты, найти связи, которых на самом деле не существует. Кроме того, она может поделить данные теоретически правильно, но не по важным для человека признакам. Например, рассортировать товары не по объёму тары, а по её цвету, что не нужно для конкретной задачи.
❌Обучение может потребовать больше данных и занять значительное время, так как нейросети нужно пройти много итераций, чтобы сделать верные выводы.
Даже для обучения без учителя набор данных, на котором нейросеть будет тренироваться, нуждается в подготовке и очистке. Этим занимаются специалисты по машинному обучению. Для этого им нужно уметь работать с данными, а затем правильно выстраивать нейронные сети, чтобы они могли на этих данных обучаться. Эти навыки студенты получают на курсе «Инженер машинного обучения».
Суть метода в том, что нейронная сеть получает входные данные и случайным образом их обрабатывает. Потом результат её работы оценивают по определенным критериям. Нейросеть видит эти критерии — и в следующий раз обрабатывает данные так, чтобы им соответствовать. Прежде чем удается сформировать оптимальную стратегию проходит много итераций. Для этого не нужен учитель или специальный обучающий набор данных — только чёткие задачи и критерии оценки их выполнения.
Самый простой пример — видеоигры. Представим нейросеть, которую тренируют выигрывать в определённую игру. Сначала она играет случайно и видит результат. Потом «пробует» другие стратегии, постепенно формируя паттерн поведения, который позволяет набрать максимум баллов.
Кроме видеоигр, есть ещё несколько сценариев, в которых можно использовать такую нейросеть:
● Обучение машин механическим манипуляциям: передвигаться, что-то чинить, хватать предметы. Нейросеть постепенно понимает, какие движения приводят к нужному результату.
● Управление транспортом: нарушая ПДД, нейросеть получает отрицательную обратную связь, соблюдая их — положительную. Так тренируют автопилоты дронов, автомобилей и других движущихся устройств.
● Работа в техподдержке: нейросеть может распознавать ответы пользователей и отвечать на них. За правильные ответы она получает положительную обратную связь, за неправильные — отрицательную.
Машинное обучение с подкреплением помогает нейросети научиться принимать оптимальные решения там, где нет четкого массива данных оптимальных решений. То есть обучающую выборку полностью сформировать нельзя, но можно научить нейросеть действовать не по шаблонам, а по-настоящему принимать решения.
❌ Занимает очень много времени, так как требует огромного количества обучающих итераций — особенно если задача стоит сложная и комплексная. Там, где у задачи есть заведомо правильные ответы, лучше выбирать другой метод тренировки нейросети.
❌Требует множества реальных примеров, чтобы нейросеть могла выстроить полноценную картину. Например, если ее учат управлять автомобилем — нужно в процессе обучения предоставить ей как можно больше реальных дорожных ситуаций. Иначе, встретив что-то неожиданное, нейросеть просто не сможет отреагировать правильно.
Читать также: