Как многие из вас, возможно, заметили, Netflix совсем недавно внедрил функцию «Просмотр в случайном порядке» на экранах Smart TV, которая поможет вам найти следующую серию, которая может вам понравиться. Это предназначено для того, чтобы помочь зрителям разгула в это время, когда время просмотра Netflix в расчете на один дом находится на пике, но многие пользователи все еще пытаются найти хорошие фильмы / сериалы для просмотра с разгулом.

Это классический пример обучения с подкреплением, и люди могут увидеть его реализацию в действии. В этой статье я объясню концепции обучения с подкреплением на примере воспроизведения в случайном порядке Netflix, чтобы его было легко понять. На сегодняшний день это лучший и самый простой пример обучения с подкреплением, который я когда-либо встречал.

Что такое обучение с подкреплением?

Обучение с подкреплением (RL) — это область машинного обучения, связанная с тем, как программные агенты должны выполнять действия в среде, чтобы максимизировать понятие кумулятивного вознаграждения. Итак, в контексте Netflix, что такое агенты и что такое среда? Различными объектами обучения с подкреплением являются агент, среда, действие, внутреннее состояние и функция вознаграждения.

Агент: Агент — это пользователь (может быть, вы), который смотрит Netflix и использует воспроизведение в случайном порядке, чтобы определить следующую серию/шоу.

Среда:это ваш телевизор и ваше приложение Netflix со всеми алгоритмами, лежащими в его основе, которые удовлетворяют ваши потребности.

Действие: действие выполняется каждый раз, когда вы нажимаете «воспроизведение в случайном порядке», это действие, которое вы выполняете в окружающей среде.

Награда: что такое награда, это количество времени, в течение которого вы смотрите, как проигрывается новая рекомендованная серия, это вопрос секунд или минут. Чем больше времени вы смотрите, тем лучше награда, поэтому цель алгоритма — максимизировать награду.

Внутреннее состояние: Внутреннее состояние не совпадает с приложением или средой, это текущее состояние рекомендации, т. е. какой жанр он сейчас рекомендует вам, какую текущую серию он вам показал и какова награда, которую он получил. Мы поговорим об этом чуть позже

Как работает обучение с подкреплением?

На рисунке ниже показано, как работает обучение с подкреплением в контексте примера Shuffle.

Как это работает:

1) Когда пользователь, смотрящий Netflix, нажимает воспроизведение в случайном порядке, это действие отправляется в среду (приложение Netflix), которое инициирует внутреннее состояние.

2) Это рекомендует пользователю результат, и эта награда измеряется количеством времени, которое пользователь тратит на просмотр фильма.

3) Цель алгоритма — максимизировать вознаграждение, то есть время, которое пользователь тратит на просмотр рекомендованного фильма или сериала. Одним из распространенных подходов, которые алгоритмы RL используют для определения и поддержания внутреннего состояния, является «Марковский процесс принятия решений».

4) Марковский процесс принятия решений (МПР) представляет собой стохастический процесс управления с дискретным временем. Он обеспечивает математическую основу для моделирования принятия решений в ситуациях, когда результаты частично случайны и частично находятся под контролем лица, принимающего решения.

5) Алгоритм определил следующий рекомендуемый пример: если вознаграждение очень меньше, например, пользователь мгновенно меняет фильм, это означает, что предыдущий путь, выбранный моделью, неверен, что побуждает модель выбрать другой жанр, т. е. другой путь достижения фильмы, которые имеют потенциально большое время просмотра.

6) Если пользователь просматривает фильм в течение разумного времени (несколько минут, означает, что награда лучше, чем в предыдущем сценарии), он интерпретирует его как частично правильный путь и определяет следующий возможный вариант. Что можно интерпретировать как жанр, может быть правильным, но подхарактер выбора неверен. Непрерывный процесс обучения поможет определить правильный фильм для пользователя.

Примечание. Приведенная выше оценка является исключительно моим личным мнением, и я намереваюсь только объяснить обучение с подкреплением. Очевидно, мы никогда не знаем, какой подход использует Netflix.

Ссылки:

https://www.analyticsvidhya.com/blog/2017/01/introduction-to-reinforcement-learning-implementation/

https://www.cs.toronto.edu/~zemel/documents/411/rltutorial.pdf

https://wiki.pathmind.com/deep-reinforcement-learning

https://en.wikipedia.org/wiki/Reinforcement_learning

https://en.wikipedia.org/wiki/Markov_decision_process

https://deepsense.ai/what-is-reinforcement-learning-the-complete-guide/