Попробуй это! Исследователи разработали лучший алгоритм рекомендаций: подход должен работать особенно хорошо, когда рейтинговые данные «скудны».

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

На этой неделе на той же конференции они сообщают, что использовали свою структуру для создания нового алгоритма рекомендаций, который должен работать лучше, чем те, которые используются сегодня, особенно когда рейтинговые данные «разрежены», то есть когда мало пересекаются между рассмотренными продуктами и оценками, присвоенными разными клиентами.Основная стратегия алгоритма проста: пытаясь предсказать оценку продукта покупателем, используйте не только оценки людей со схожими вкусами, но также оценки людей, которые похожи на этих людей, и так далее.Идея интуитивно понятна, но на практике все снова зависит от конкретной меры сходства.«Если мы будем действительно великодушны, все будут выглядеть друг на друга», — говорит Деваврат Шах, профессор электротехники и информатики и старший автор статьи. "С другой стороны, если мы будем действительно строги, мы вернемся к тому, чтобы эффективно просто смотреть на ближайших соседей.

Или, говоря другими словами, когда вы переходите от предпочтений друга к предпочтениям друга друга, какой шум появляется? в процессе, и есть ли правильный способ количественно оценить этот шум, чтобы мы могли сбалансировать получаемый сигнал с шумом, который мы вносим? Благодаря нашей модели мы точно знали, что нужно делать ».

Все углыКак оказалось, правильнее снова использовать косинусное сходство. По сути, косинусное сходство представляет предпочтения клиента в виде линии в очень многомерном пространстве и количественно определяет сходство как угол между двумя линиями.

Предположим, например, что у вас есть две точки на декартовой плоскости, двумерной системе координат, знакомой из школьной алгебры. Если вы соединяете точки с началом координат — точкой с координатами (0, 0) — вы определяете угол, и его косинус может быть вычислен из самих координат точки.

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

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

Анализ исследователей носит теоретический характер, но вот пример того, как их алгоритм может работать на практике. Для любого конкретного покупателя он выбирает небольшую группу — скажем, пять — клиентов с наибольшим косинусным сходством и усредняет их рейтинги.

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

Заполнение пробеловДля Шаха и его коллег — первого автора Кристины Ли, доктор философии ’17, которая работает постдоком в Microsoft Research, и двух ее коллег из Microsoft, Кристиана Боргса и Дженнифер Чейес, разработка такого алгоритма не была сложной задачей. Задача заключалась в том, чтобы доказать, что это будет хорошо работать, и именно на этом и сосредоточена статья.

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

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

У каждого из клиентов службы потоковой передачи фильмов есть своя собственная ценностная функция: кто-то может быть склонен оценивать фильм гораздо выше, если он соответствует жанру боевиков и имеет большой бюджет; другой может дать высокую оценку фильму, получившему множество номинаций на «Оскар» и имеющему небольшого художественного дистрибьютора.Игра на шансыВ новой аналитической схеме «вы не изучаете функции; вы не изучаете функции», — говорит Шах.

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

«Когда мы сэмплируем фильм, мы на самом деле не знаем, в чем его особенность, поэтому, если бы мы хотели точно предсказать функцию, мы не смогли бы это сделать», — говорит Ли. «Но если бы мы просто хотели оценить разницу между функциями пользователей, мы могли бы вычислить эту разницу».Используя свою аналитическую структуру, исследователи показали, что в случаях разреженных данных, которые описывают ситуацию большинства интернет-магазинов, их алгоритм «сосед-сосед» должен давать более точные прогнозы, чем любой известный алгоритм.

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


Портал обо всем