8.3 KiB
Введение в обучение с подкреплением
Обучение с подкреплением (Reinforcement learning, RL) рассматривается как одна из основных парадигм машинного обучения, наряду с обучением с учителем (supervised learning) и без учителя (unsupervised learning). RL - это все о принятии решений: принятии правильных решений или, по крайней мере, извлечении уроков из них.
Представьте, что у вас есть смоделированная среда, такая как фондовый рынок. Что произойдет, если вы введете определенное правило. Имеет ли это положительный или отрицательный эффект? Если происходит что-то негативное, вам нужно принять это негативное подкрепление, извлечь из него урок и изменить направление. Если это положительный результат, вам нужно использовать это положительное подкрепление.
Пете и его друзьям нужно спастись от голодного волка! Автор изображения Jen Looper
Региональная тема: Петя и Волк (Россия)
Петя и Волк - музыкальная сказка русского композитора Сергея Прокофьева. Это история о юном пионере Пете, который смело выходит из своего дома на лесную поляну, чтобы преследовать волка. В этом разделе мы обучим алгоритмы машинного обучения, которые помогут Пете:
- Исследовать окрестности и построить оптимальную навигационную карту.
- Научиться пользоваться скейтбордом и балансировать на нем, чтобы двигаться быстрее.
🎥 Нажмите на изображение выше, чтобы послушать Петю и Волка Прокофьева
Обучение с подкреплением
В предыдущих разделах вы видели два примера проблем машинного обучения:
- Обучение с учителем, где у нас есть наборы данных, которые предлагают примеры решений проблемы, которую мы хотим решить. Классификация и регрессия - это задачи обучения с учителем.
- Обучение без учителя, в котором у нас нет размеченных данных для обучения. Основным примером обучения без учителя является Кластеризация.
В этом разделе мы познакомим вас с новым типом задач, которые не требуют маркированных данных для обучения. Есть несколько типов таких проблем:
- Обучение с частичным привлечением учителя, где у нас есть много немаркированных данных, которые можно использовать для предварительного обучения модели.
- Обучение с подкреплением, в котором агент учится вести себя, проводя эксперименты в некоторой моделируемой среде.
Пример - компьютерная игра
Предположим, вы хотите научить компьютер играть в игру, например, в шахматы или Супер Марио. Чтобы компьютер мог играть в игру, нам нужно, чтобы он предсказывал, какой ход сделать в каждом из игровых состояний. Хотя это может показаться проблемой классификации, это не так - потому что у нас нет набора данных с состояниями и соответствующими действиями. Хотя у нас могут быть некоторые данные, такие как существующие шахматные матчи или записи игроков, играющих в Супер Марио, скорее всего, что эти данные не будут в достаточной степени охватывать достаточно большое количество возможных состояний.
Вместо поиска существующих игровых данных Обучение с подкреплением (RL) основано на идее заставить компьютер играть много раз и наблюдать за результатом. Таким образом, чтобы применить обучение с подкреплением, нам нужны две вещи:
-
Среда и симулятор, которые позволяют нам играть в игру много раз. Этот симулятор будет определять все правила игры, а также возможные состояния и действия.
-
Функция вознаграждения, которая сообщит нам, насколько хорошо мы сделали отдельный ход или прошли всю игру.
Основное различие между другими типами машинного обучения и RL заключается в том, что в RL мы обычно не знаем, выиграем мы или проиграем, пока не закончим игру. Таким образом, мы не можем сказать, является ли отдельно взятый ход хорошим или нет - мы получаем награду только в конце игры. И наша цель - разработать алгоритмы, которые позволят нам обучать модель в неопределенных условиях. Мы познакомимся с одним алгоритмом RL под названием Q-Learning.
Уроки
Благодарности
«Введение в обучение с подкреплением» написано с ♥ ️Дмитрием Сошниковым