2015-05-12 3 views
0

Я работаю над сайтом электронной коммерции. Я хочу создать рекомендацию на основе истории просмотров продукта пользователя с помощью Apache Mahout. Сейчас я могу генерировать рекомендации, основанные на данных рейтинга, которые предоставляет пользователь. В настоящее время ввод рекомендацией - user_id, item_id и рейтинги. Я хочу создать рекомендацию, которая генерирует рекомендации на основе продуктов, просматриваемых пользователем. Может ли кто-нибудь сказать мне, как это можно достичь?Рекомендации, основанные на истории просмотров продукта с помощью Mahout

PS. Мне нужно использовать Apache Mahout.

+0

Является ли данные пользовательских предпочтений агрегированными, то есть пользователь x просмотрел элемент y 7 раз или просто boolean, то есть пользователь x просмотрел элемент y? –

+0

yaa ... просто пользователь x просмотрел элемент y ... и затем, основываясь на пользовательских сравнениях, mahout порекомендует некоторые другие предметы. Количество раз, когда элемент был посещен, не имеет значения ... –

ответ

0

Mahout может обрабатывать логические настройки, которые имеют ваши неявные оценки. Булевы datamodels могут быть созданы из csv-файлов или баз данных с классами PostgreSQLBooleanPrefJDBCDataModel или MySQLBooleanPrefJDBCDataModel. Основное различие с рекомендациями с небулевыми рейтингами заключается в том, что с булевыми предпочтениями сходство должно быть сходством с Tanimoto или Log Leyelihood. Таким образом, пример код из Mahout домашней страницы будет выглядеть следующим образом:

  DataModel model = new FileDataModel(new File("booleanpref.dat")); 

      UserSimilarity userSimilarity = new TanimotoCoefficientSimilarity(
        model); 

      UserNeighborhood neighborhood = new NearestNUserNeighborhood(3, 
        userSimilarity, model); 
      Recommender recommender = new GenericUserBasedRecommender(model, 
        neighborhood, userSimilarity); 
      Recommender cachingRecommender = new CachingRecommender(recommender); 
      List<RecommendedItem> recommendations = cachingRecommender 
        .recommend(1234, 10); 

Это blog дает примеры элементов на основе логических рекомендаций.

+0

Thanxx много ... !!! Это сработало для меня ... –