Как следует обращаться с неявными данными в рекомендации


9

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

user_id item_id result
1       4       1
1       7       -1
5       19      1
5       80      1

где 1 означает, что пользователь принял рекомендацию, а -1 означает, что пользователь не ответил на рекомендацию.

Вопрос: Если я собираюсь давать рекомендации группе пользователей на основе описанного выше вида журнала и хочу максимально увеличить баллы MAP @ 3, как мне поступить с неявными данными (1 или -1)?

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

Редактировать 1 Давайте подумаем об этом в контексте подхода матричной факторизации. Если мы будем рассматривать -1 и 1 как рейтинги, возникнут некоторые проблемы. Например, пользователю 1 нравится фильм А, который получает высокие оценки по одному фактору (например, имеет великолепную фоновую музыку) в пространстве скрытых факторов. Система рекомендует фильм B, который также имеет высокие оценки в «великолепной фоновой музыке», но по какой-то причине пользователь 1 слишком занят, чтобы рассмотреть рекомендацию, и у нас есть фильм с рейтингом -1, равный -1. , тогда система может отговорить рекомендовать фильм с великолепной фоновой музыкой пользователю 1, в то время как пользователь 1 все еще любит фильм с великолепной фоновой музыкой. Я думаю, что этой ситуации следует избегать.


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

1
Каноническая статья для неявной обратной связи Ху, Корен и Волынский . Там много хороших рекомендаций, включая оценку вашей уверенности в том, что -1 указывает на неприязнь или просто «не видел».
Трей

Ответы:


5

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

Вы предполагаете, что не глядя на предмет является негативным сигналом. Я настоятельно рекомендую вам не относиться к этому так. Не взаимодействовать с чем-то почти всегда лучше всего рассматривать как отсутствие информации. Если у вас есть явный сигнал, который указывает на неприязнь, например, отрицательное голосование (или, возможно, просмотрели 10 секунд видео и остановили), возможно, это действительно так.

Я бы не стал воспринимать эти данные как данные, подобные рейтингу. (Хотя в вашем случае вам это может сойти с рук.) Вместо этого думайте о них как о весах, что в точности отражено в статье Ху Корена Волинского о ALS, которую @Trey упоминает в комментарии. Это позволяет записывать относительную силу положительных / отрицательных взаимодействий.

Наконец, я хотел бы отметить, что этот документ, хотя, скорее всего, будет именно тем, что вы ищете, не содержит отрицательных весов. Это просто расширить таким образом. Если вы продвинетесь так далеко, я могу указать вам на простое расширение, которое существует уже в двух известных мне реализациях, в Spark и Oryx .


2
Я считаю разумным вписывать небольшие отрицательные значения для предметов, которые видели много раз, но никогда не выбирали. ОП не указывает, что у них есть доступ к данным, которые квалифицируют эти отрицательные вменения, но я бы не стал полностью исключать эту тактику. Оптимальная величина отрицательного значения может быть определена из данных. Я получил небольшой выигрыш от этого в сценариях recsys. В любом случае ... вы бы предложили другие способы отличить предмет, увиденный один раз, и не выбранный, от увиденного N раз и никогда не выбранный, кроме отрицательного вменения?
cwharland
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.