Алгоритмы бинарных рекомендаций

В настоящее время я делаю некоторые исследования для школьного задания. У меня есть два потока данных: один - рейтинги пользователей, а другой - история поиска, кликов и заказов (двоичные данные) интернет-магазина.

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

На основе памяти

  1. пользовательский

    • pearson correlation
    • ограниченный Пирсон
    • сходство векторов (косинус)
    • Среднеквадратическая разница
    • взвешенный Пирсон
    • порог корреляции
    • максимальное количество соседей
    • взвешенный по корреляции
    • Нормализация Z-оценки
  2. на основе предметов

    • adjusted cosine
    • максимальное количество соседей
  3. слияние подобия

модель на основе

  1. на основе регрессии
  2. склон один
  3. лси/свд
  4. регуляризованная свд (рсвд/рсвд2/нсвд2/свд++)
  5. интегрированный соседний
  6. кластерное сглаживание

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

Заранее извиняюсь за орфографические ошибки, так как у меня дислексия, и я не являюсь носителем языка. Спасибо marc_s за помощь.


person DutchGuy    schedule 17.09.2015    source источник


Ответы (1)


Взгляните на алгоритмы интеллектуального анализа данных, такие как анализ ассоциативных правил (также известный как анализ потребительской корзины). Вы столкнулись с серьезной проблемой в рекомендательных системах: унарные и бинарные данные распространены, но лучшие алгоритмы персонализации не работают с ними. Данные рейтинга могут представлять предпочтения для одной пары «пользователь-элемент»; например, я оцениваю этот фильм на 4 звезды из 5. Но с бинарными данными у нас наименее детализированный тип рейтинговых данных: мне что-то либо нравится, либо не нравится, либо я это потреблял, либо не потреблял. Будьте осторожны, чтобы не перепутать двоичные и унарные данные: унарные данные означают, что у вас есть информация о том, что пользователь потреблял что-то (которое закодировано как 1, очень похоже на двоичные данные), но у вас нет информации о том, что пользователю не понравилось или что он потреблял. что-то (которое кодируется как NULL вместо двоичных данных 0). Например, вы можете знать, что человек просмотрел 10 веб-страниц, но вы понятия не имеете, что бы он подумал о других страницах, если бы знал, что они доступны. Это унарные данные. Вы не можете получить какую-либо информацию о предпочтениях от NULL.

person Dan Jarratt    schedule 21.09.2015