В чём суть
Обучение с подкреплением — это тип машинного обучения, при котором нейросеть принимает решения и получает награду, если они оказываются правильными. Основная задача — довести вознаграждение до максимума, поэтому алгоритм путём проб и ошибок корректирует свои действия и в итоге приходит к поведению, которое ведёт к наилучшим результатам.
Например, чтобы научить нейросеть играть в классическую «Змейку» с помощью обучения с подкреплением, можно использовать такую схему:
🔸 за каждый съеденный объект алгоритм получает 10 баллов
🔸 за каждое столкновение алгоритм теряет 10 баллов
🔸 за каждый шаг без еды алгоритм теряет 1 балл.
Таким образом, нейросеть будет искать стратегию, позволяющую избегать столкновений и съедать объекты как можно чаще, потому что так она получит максимум баллов.
Чем это отличается от других типов машинного обучения
Отсутствием «правильных ответов» в обучающих данных. К примеру, при обучении визуальных нейросетей используют размеченные датасеты, где каждой картинке соответствует точное описание. При обучении с подкреплением алгоритм самостоятельно исследует систему и определяет, что правильно, а что нет — с помощью обратной связи в виде вознаграждений.
Например, можно научить робота ходить, показав ему датасет с примерами правильной ходьбы. А можно дать ему свободу действий и предложить 10 баллов за каждый удачный шаг, отнимая 100 баллов за каждое падение. Со временем робот найдёт способ получать максимальную награду, то есть ходить без падений (вот наглядное видео).
Где используют обучение с подкреплением
Для сложных задач, где нужно учитывать много факторов и нет правильных решений для каждой ситуации, а также там, где нужно быстро и дёшево масштабировать обучение:
🔸 в рекомендательных системах маркетплейсов и стримингов наградой может быть лайк рекомендованного трека или покупка предложенного товара. А в более совершенных алгоритмах вроде рексистемы Яндекса ARGUS модели используют не только позитивную обратную связь, но и множество других видов действий
🔸 в языковых моделях обучение с подкреплением позволило учить их предпочтениям людей, а также стало катализатором развития рассуждающих моделей. Из-за этого последние версии больших языковых моделей показывают наибольший прирост в математике и программировании — это области, где легко проверить правильность решения задачи, а значит и реализовать обучение с подкреплением.
🔸 в беспилотном транспорте — чтобы научить машины принимать решения в постоянно меняющейся среде, где невозможно предсказать развитие событий.
Подписывайтесь 👉 @techno_yandex
