我是mahout的新手,我使用给定here的parallelALS作业构建隐式反馈推荐器。我的数据集的每一行都包含user_id,product_id,preference_score(这是用户对产品的访问次数)。用户和产品ID类型很长。在过滤单次或双次访问后,我有一百万个此类数据点。
我基本上编写了一个bash脚本,它运行两个作业“parallelALS”和“recommendedfactorized”,就像示例“factorize-movielens-1M”中所示。运行脚本后,结果建议似乎有一个错误。结果的每一行的格式(如几篇博客文章中所述)似乎是: - user_id [product_id:score,...]
然而,每一行中的所有products_id都是0.我不确定这里出了什么问题。这是数据集的问题还是调整参数(alpha,lambda等)或其他问题?
答案 0 :(得分:0)
用户和项目的ID必须是Mahout ID,表示连续的整数。您需要维护字典以将用户和项目ID映射到mahout ID(两个HashBiMaps将起作用或数据库),这是新用户经常错过的。
要确定发布输入数据的示例。