Пример анализа данных — как Netflix использовала науку о данных для улучшения своей системы рекомендаций?

Вы помните последний фильм, который вы смотрели на Netflix? Я не хочу знать название; просто подумайте - после просмотра вам рекомендовали похожие фильмы? Как Netflix узнает, чего вы хотите? Секрет здесь — наука о данных. Netflix использует науку о данных, чтобы предоставлять вам актуальные и интересные рекомендации. Итак, сегодня в этой статье мы обсудим то же самое. Давайте начнем изучать науку о данных в Netflix с основного введения в Netflix.

Наука о данных в Netflix

Первоначально Netflix начал свою деятельность как служба проката DVD в 1998 году. В основном он полагался на сторонние почтовые службы для доставки своих DVD пользователям. Это привело к большим потерям, которые они вскоре компенсировали, представив свой онлайн-сервис потокового вещания в 2007 году. Чтобы это произошло, Netflix инвестировала множество алгоритмов, чтобы обеспечить своим пользователям безупречный просмотр фильмов. . Одним из таких алгоритмов является система рекомендаций, которую Netflix использует для предоставления предложений пользователям. Система рекомендаций понимает потребности пользователей и предлагает различные кинематографические продукты.

Что такое рекомендательная система?

Система рекомендаций — это платформа, которая предоставляет своим пользователям различный контент в зависимости от их предпочтений и предпочтений. Система рекомендаций принимает информацию о пользователе в качестве входных данных. Эта информация может быть в форме прошлого использования продукта или оценок, которые были предоставлены продукту. Затем он обрабатывает эту информацию, чтобы предсказать, насколько пользователь оценит или предпочтет продукт. Система рекомендаций использует различные алгоритмы машинного обучения.

Еще одна важная роль, которую сегодня играет рекомендательная система, — это поиск сходства между разными товарами. В случае с Netflix система рекомендаций ищет фильмы, похожие на те, которые вы смотрели или которые вам понравились ранее. Это важный метод для сценариев, включающих холодный запуск. При холодном старте у компании не так много данных о пользователях, доступных для выработки рекомендаций. Поэтому, основываясь на просмотренных фильмах, Netflix рекомендует фильмы, которые имеют определенную степень сходства. Существует два основных типа рекомендательных систем:

1. Контентно-рекомендательные системы

В системе рекомендаций на основе контента учитываются базовые знания о продуктах и ​​информация о клиентах. Основываясь на контенте, который вы просматривали на Netflix, он предлагает вам аналогичные предложения. Например, если вы смотрели фильм в жанре научной фантастики, система рекомендаций на основе контента предложит вам похожие фильмы того же жанра.

2. Коллективные системы рекомендаций по фильтрации

В отличие от фильтрации на основе содержимого, которая давала рекомендации по похожим продуктам, совместная фильтрация предоставляет рекомендации на основе схожих профилей своих пользователей. Одним из ключевых преимуществ совместной фильтрации является то, что она не зависит от знаний о продукте. Скорее, он опирается на базовое предположение пользователей о том, что то, что им нравилось в прошлом, понравится и в будущем. Например, если человек А смотрит жанры криминал, научная фантастика и триллер, а Б смотрит жанры научной фантастики, триллера и боевика, то А будет любить боевик, а Б - криминальный жанр.

Существует также третий тип системы рекомендаций, который сочетает в себе как методы контента, так и методы совместной работы. Эта форма системы рекомендаций известна как Гибридная система рекомендаций. Netflix в первую очередь использует гибридную систему рекомендаций для предложения контента своим пользователям.

Как Netflix решил проблему рекомендаций с помощью науки о данных

Еще в 2006 году, когда Netflix хотел выйти на рынок потокового вещания, он начал с конкурса на предсказание рейтинга фильмов. Он предоставил приз в размере 1 миллиона долларов тому, кто повысит точность своей тогдашней платформы «Cinematch» на 10%. По итогам конкурса команда БеллКор представила свое решение, которое увеличило точность предсказания на 10,06%. Более 200 часов работы и ансамбль из 107 алгоритмов обеспечили им этот результат. Их окончательная модель дала RMSE 0,8712. Для своего решения они использовали алгоритм K-ближайших соседей для постобработки данных.

Затем они реализовали модель факторизации, широко известную как Декомпозиция по сингулярным значениям (SVD), которая обеспечивает оптимальное многомерное встраивание для пользователей. Они также использовали Ограниченные машины Больцмана (RBM) для расширения возможностей модели совместной фильтрации. Эти два алгоритма в ансамбле, SVD и RBM, обеспечили им наилучшие результаты. Линейная комбинация этих двух алгоритмов снизила RMSE до 0,88.

Однако даже после снижения RMSE и повышения точности Netflix столкнулся с двумя серьезными проблемами: во-первых, данные, предоставленные во время конкурса, включали 100 миллионов оценок фильмов, а не более 5 миллиардов оценок, из которых состоял Netflix. Кроме того, алгоритмы были статическими, то есть они работали только с историческими данными и не учитывали динамику добавления пользователями отзывов в режиме реального времени. После того, как Netflix преодолел эти трудности, он сделал алгоритмы выигрыша частью своей системы рекомендаций.

Использование чередования для улучшения персонализации

Netflix использует алгоритмы ранжирования, чтобы предоставить ранжированный список фильмов и телешоу, которые больше всего нравятся его пользователям. Однако при наличии различных алгоритмов ранжирования часто бывает сложно учесть их все и проверить их производительность одновременно. В то время как традиционное A/B-тестирование на сокращенном наборе алгоритмов не могло определить лучшие алгоритмы с меньшим размером выборки и также занимало много времени, Netflix решил обновить свой алгоритмический процесс. Чтобы ускорить процесс экспериментирования с алгоритмами ранжирования, Netflix применил технику чередования, которая позволила определить лучшие алгоритмы. Этот метод применяется в два этапа, чтобы обеспечить лучший алгоритм ранжирования страниц для предоставления персонализированных рекомендаций своим пользователям.

На первом этапе проводятся эксперименты для определения предпочтений участников между двумя алгоритмами ранжирования. В отличие от A/B-тестирования, когда две группы зрителей подвергаются воздействию двух алгоритмов ранжирования, Netflix использует чередование, чтобы смешивать ранжирование алгоритмов A и B. Netflix предоставляет своим пользователям обогащенный контент, основанный на этом методе чередования, который очень чувствителен к ранжированию качества алгоритма.

Важность контекстной осведомленности в рекомендациях

Контекстная осведомленность — один из ключевых элементов персонализации рекомендаций для пользователей. Это не только повышает производительность системы рекомендаций, но и побуждает пользователей предоставлять более качественную обратную связь, которая приведет к качественной рекомендации. Существует две категории контекстных классов:

Явный

· Место расположения

· Язык

· Время суток

· Устройство

Предположительно

· Шаблоны переедания

· Компаньон

Чтобы предсказывать контексты, мы используем репрезентативное обучение. Это метод глубокого обучения, который выполняет разработку функций, обнаруживая функции без явного программирования. Основываясь на времени и периодах просмотра, Netflix основывает свои данные на различных параметрах, таких как день, неделя, сезон и даже на более длительных периодах, таких как Олимпийские игры, ФИФА и выборы.

Для выполнения контекстных прогнозов Netflix рассматривает рекомендации как проблему классификации последовательности. Он принимает ввод как последовательность действий пользователя и выполняет прогнозы, которые выводят следующий набор действий. Примером проблемы с последовательностью является Gru4Rec. А в случае прогнозирования контекстной последовательности ввод состоит из контекстных действий пользователя, а также текущего контекста пользователя. Это помогает механизму рекомендаций решить вопрос:

«Основываясь на всех исторических действиях, предпринятых пользователем, какое видео с наибольшей вероятностью будет воспроизводиться прямо сейчас?»

Итак, вот как Netflix использует науку о данных для предоставления рекомендаций.

Резюме

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