Одновременная релевантность и разнообразие: новый подход к выводу рекомендаций

МЕНЮ


Искусственный интеллект
Поиск
Регистрация на сайте
Помощь проекту

ТЕМЫ


Новости ИИРазработка ИИВнедрение ИИРабота разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика

Авторизация



RSS


RSS новости


Yifang Liu, Zhentao Xu, Qiyuan An, Yang Yi, Yanzhi Wang, Trevor Hastie

Smule, Virginia Tech, Northeastern University, Stanford University; 2020

Paper: https://arxiv.org/pdf/2009.12969.pdf

Автор конспекта: Сухочев Александр (https://vk.com/id11472575)

Ключевые слова: Recommender Systems, Diversity, Exploration

Какую задачу решают в статье?

Одной из основных мер качества рекомендательной системы является то, насколько рекомендованные объекты, посты и клипы в социальных сетях, товары в интернет-магазинах вроде shop.kz  и т.д. Релевантны пользователю.

Помимо релевантности, всё чаще к рекомендательным системам предъявляют дополнительные требования. Одним из таких требований является наличие разнообразия (англ. diversity) в рекомендациях. То есть при предложении пользователю очередного объекта на рассмотрение мы не должны просто предоставлять ему то, что очень похоже на элемент из его предыдущего пользовательского опыта. Хотелось бы уметь расширять пользовательский опыт путём исследования (англ. exploration) других его интересов, помимо тех, которые он уже проявил. Это позволит поддерживать интерес пользователя к ресурсу и расширять взаимодействие с ним.

Большинство современных алгоритмов рекомендаций ориентированы на релевантность. Как правило, разнообразие в данные алгоритмы вводится путём различных отклонений от их базовых рекомендаций. Таким образом, при повышении разнообразия понижается релевантность и наоборот. Хотелось бы научиться строить рекомендательные системы, в которых не нужно было бы искать баланс между этими двумя мерами качества, а в ходе одного оптимизационного процесса одновременно их увеличивать. Именно такой алгоритм коллаборативной фильтрации и предложили авторы данной статьи и назвали его Heterogeneous Inference(HI).

В чём состоит идея авторов?

Одним из основных подходов в рекомендательных системах является коллаборативная фильтрация. Она обычно основана на подходе p2p(positive-to-positive inference). Этот подход заключается в рекомендации пользователю объектов, похожих на те, с которыми у него был опыт положительного взаимодействия (например, лайк клипу). Из описания данного подхода следует, что он приводит к высокой релевантности, но, в конечном итоге, замыкает пользователя на каком-то очень узком круге его интересов, рекомендуя очень похожие друг на друга объекты. Другими словами, приводит к крайне низкому разнообразию.

Авторы данной статьи предлагают рассмотреть подход n2p (negative-to-positive inference). Этот подход заключается в рекомендации объектов, не похожих на те, с которыми у пользователя был отрицательный опыт взаимодействия(например, пролистывание клипа или поста). Из интуитивных соображений кажется, что множество объектов, не похожих на данный, гораздо шире (и, скорее всего, разнообразнее) множества похожих. Также интуитивно кажется, что объект, не похожий на тот, что нам не нравится, имеет заметные шансы нам понравиться. Таким образом, исходя из всех этих предположений, в рамках подхода n2p мы одновременно стремимся к релевантности и разнообразию в рамках одного процесса поиска релевантных рекомендаций.

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

X - mxn матрица положительных взаимодействий m пользователей с n объектами. Для простоты рассмотрим случай, когда при положительном взаимодействии в соответствующей ячейке стоит единица, в противном случае(то есть взаимодействия нет, или оно является отрицательным) - ноль.

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

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

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

n2p коллаборативная фильтрация выглядит следующим образом

Y - mxn матрица отрицательных взаимодействий m пользователей с n объектами. Для простоты рассмотрим случай, когда при отрицательном взаимодействии в соответствующей ячейке стоит единица, в противном случае (то есть взаимодействия нет или оно является положительным) - ноль.

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

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

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

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

p2p и n2p подходы можно комбинировать. Далее мы разберём, как это делается.

Как справедливо отметили авторы статьи, в этом случае мы будем использовать больше информации для построения моделей.

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

На вход данной нейросети подаётся вектор положительных взаимодействий пользователя i (X[i, :]), вектор положительных взаимодействий объекта j (X[:, j]) и вектор отрицательных взаимодействий пользователя i (Y[i, :]).

Далее мы получаем обученные представления (англ. embedding) данных векторов и с помощью различных комбинаций этих скрытых представлений пытаемся восстановить реальный ответ на паре (i, j) пользователя и объекта, то есть X[i, j]. Таких приближений несколько: +r[i, j], *r[i, j] и -r[i, j]. Формулы того, как мы их получаем, представлены на рисунке.

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

Помимо нейросетевого подхода n2p и p2p можно совместить и в рамках уже знакомого алгоритма матричных разложений.

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

Данный алгоритм можно адаптировать к высоконагруженной среде посредством использования Apache Spark ALS.

Новый подход, состоящий из комбинации p2p и n2p подходов под названием Heterogeneous Inference сравнили с обычной p2p коллаборативной фильтрацией на двух датасетах: MovieLens и некой платформе, в рамках которой пользователи делятся контентом, сгенерированным ими же (скорее всего Smule).

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

Моё мнение

Во-первых, кажется, что подход n2p всё-таки больше про разнообразие, чем про релевантность, так как совсем не гарантирует последнее свойство. Таким образом, как и в подходах других учёных, в комбинации подходов p2p и n2p есть две составляющие: одна про релевантность, другая больше про разнообразие (но может быть и про релевантность тоже). Значимость той или ной компоненты можно, как я понял, регулировать, например, с помощью коэффициента ? из формулы 17. В нейросетевом подходе аналог этого коэффициента, судя по всему, неявно настраивается в ходе обучения.

Во-вторых, если посмотреть философски и метафорически, то авторы предлагают кроме парадигмы “Друг моего друга - мой друг” рассмотреть ещё и парадигму “Враг моего врага - мой друг”. В самой возможности более широкого взгляда на термин дружбы, наверно, нет ничего плохого, это позволит рассматривать большее и более разнообразное количество кандидатов. Насколько полезной может быть такая возможность, зависит от принципов и степени враждебности мира.


Источник: m.vk.com

Комментарии: