Определения, структура и развитие систем ИИ

Рис. 1.47. Полуконтролируемое обучение занимает промежуточное положение между контролируемым и неконтролируемым
Создание размеченных данных для машинного обучения - это длительный процесс, который часто требует квалифицированных специалистов в предметной области и достаточно высоких затрат. Процесс сбора немаркированных данных намного легче и дешевле. Соответственно, затраты на процесс обучения с использованием только размеченных данных могут быть слишком большими, и полуконтролируемое обучение может быть решением проблемы. В последнем случае используются две выборки с данными из одних и тех же классов 41То есть если в размеченной выборке фотографии кошек и собак, то в неразмеченной тоже должны быть изображения только кошек и собак (размеченная и неразмеченная).
Типичный пример полуконтролируемого обучения - это обучение по фотографиям в социальных сетях, когда есть фото, где пользователь отметил на изображении людей или место съемок, то есть присвоил им теги (разметил данные), а есть фото, где данные не размечены.
Обучение с подкреплением
Машинное обучение с подкреплением напоминает обучение с учителем, однако в данном случае в роли "учителя" выступает окружающая (настоящая или виртуальная) среда, которая показывает, как агенты должны действовать, чтобы получить наибольшее суммарное вознаграждение (рис. 1.48 б ).
Если в случае (рис. 1.48 а ) мы отвечаем на вопрос "К какому классу относится исследуемый объект?", то в случае (рис. 1.48 б) мы пытаемся ответить на вопрос "Что нужно сделать, чтобы достичь жела-емого результата?". При этом мы, как правило, не знаем, хороший или плохой выбор мы делаем на каждом шаге, а получаем "вознаграждение" (подкрепление) после завершения эпизода обучения.
![Обучение с учителем (а) и обучение с подкреплением (б) имеют сходные схемы. Источник: адаптировано по материалам [57]](/EDI/18_12_24_2/1734474022-28631/tutorial/963/objects/1/files/01-48.jpg)
Рис. 1.48. Обучение с учителем (а) и обучение с подкреплением (б) имеют сходные схемы. Источник: адаптировано по материалам [57]
Еще в 1951 году Марвин Минский, будучи студентом Гарвардского университета, построил машину, использующую простой метод обучения с подкреплением для имитации поведения мышей, которые учатся находить выход из лабиринта.
В качестве примера обучения с подкреплением можно привести компьютерную игровую модель, где агент пытается найти выход из лабиринта и в процессе поиска получает от внешней среды информацию (сигналы подкрепления) о том, где выхода нет, агент анализирует эту информацию и учится находить выход.
Робот (агент) учится выполнять задачу путем повторяющихся проб и ошибок при взаимодействии с незнакомой динамической средой, выполняя определенные действия, получая определенные результаты (и в зависимости от них награды), и при этом его задача - добиваться максимальной награды. Часто, говоря об обучении с подкреплением, в качестве аналогии приводят пример дрессировки домашних животных, которые ориентируются на подкрепление в виде лакомства, которое они получают, выполняя правильные действия.
Аналогично действуют агенты, которые максимизируют метрику вознаграждения за выполнение задачи. При этом следует отметить, что в случае с роботами (агентами) процесс проходит без вмешательства человека и без явного программирования шагов выполнения задачи.
Важным отличием обучения с подкреплением от классического обучения с учителем является то, что подкрепление возникает после нескольких шагов или действий, в то время как в классическом обучении с учителем для каждого обучающего примера известен правильный ответ. Например, при обучении компьютера игре в шахматы методом обучения с подкреплением подкрепление возникает лишь в конце партии - в случае выигрыша или проигрыша.
Мы обещали в начале курса приводить более полные структурные схемы понятия ИИ по мере толкования новых терминов. После того как мы ввели понятия контролируемое обучение, неконтролируемое и обучение с подкреплением, можно несколько усложнить картинку (рис. 1.14), добавив в нее новые элементы (рис. 1.49).
Соотношение категорий машинного обучения можно также наглядно представить в зависимости от решаемых задач и используемых алгоритмов (рис. 1.50).
Перечень вариантов машинного обучения расширяется. Сравнительно недавно появилась так называемая форма самоконтролируемого обучения (Self-supervised learning SSL).
Самоконтролируемое обучение (предиктивное обучение или самообучение) - это процесс машинного обучения, в котором модель обучается самостоятельно, получая информацию о некоторой части входных данных на основе другой части входных данных (см. рис. 1.51).
Метод самоконтролируемого обучения заключается в определении любой скрытой части входных данных из любой открытой части входных данных. В этом процессе задача из неконтролируемой преобразуется в задачу с контролем путем автоматической генерации меток.
Например, при обработке видео мы можем предсказать прошлые или будущие кадры на основе имеющихся видеоданных.
![Предсказание неизвестной части входных данных по другой части ввода. Источник: LeCun [59]](/EDI/18_12_24_2/1734474022-28631/tutorial/963/objects/1/files/01-51.jpg)
Рис. 1.51. Предсказание неизвестной части входных данных по другой части ввода. Источник: LeCun [59]
Продолжая разговор об эволюции систем машинного обучения, следует отметить рост точности и адекватности создаваемых моделей, что, естественно, приводило к повышению доверия к более зрелым моделям со стороны пользователей. Менялись способы создания программного обеспечения, которое обеспечивало решение задач (рис. 1.52).