Подтвердить что ты не робот

Простой алгоритм предложения/рекомендации

Я ищу простой алгоритм предложения для реализации в моем веб-приложении. Как Netflix, Amazon и т.д. Но проще. Мне не нужны команды Phd для получения лучшего показателя.

Так сказать, у меня есть:

  • Пользователь1 любит Object1.
  • Пользователь2 любит Object1 и Object2.

Я хочу предложить User1 им также может понравиться Object2.

Я, очевидно, могу придумать что-то наивное. Я ищу что-то проверенное и легко реализуемое.

4b9b3361

Ответ 1

Есть много простых и не очень простых примеров алгоритмов предложения в отличном Программирование коллективного интеллекта

коэффициент корреляции Пирсона (немного сухая статья Википедии) может дать неплохие результаты. Здесь реализована реализация в Python и другая в TSQL вместе с интересное объяснение алгоритма.

Ответ 2

попробуйте алгоритм Slope One, он один из наиболее используемых для такого рода проблем.

здесь пример реализации в t-sql

Ответ 3

Вы можете посмотреть Обучение правила ассоциации и Априорный алгоритм. Основная идея заключается в том, что вы создаете такие правила, как "если пользователь как Object1, чем пользователь любит Object2" и проверяет, насколько хорошо они описывают (вашу) реальность. В вашем конкретном примере это правило будет иметь поддержку 2 (в качестве двух пользователей, таких как Object1) и доверие 50% a (как правило, это верно в 1 из 2 случаев). Я только что внедрил базовый концепт концепции (на самом деле мои первые шаги на Hadoop), и это не слишком сложно сделать.

Кроме того, вы можете посмотреть Apache Mahout - Taste. Я никогда не использовал его сам, хотя.

Ответ 4

Я бы пошел с ближайшими соседями К. запись в википедии объясняет это хорошо и имеет ссылки на эталонные реализации.

Ответ 5

k-ближайший алгоритм соседства

Ответ 6

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

Помимо очевидной необходимости кэширования такой информации, с ним что-то не так с ним использует?