我考虑使用PredictionIO
来构建音乐推荐系统。
但是,在用户项交互中,仅支持以下操作:例如,不喜欢,查看,转换和费率(比例1 - 5)。
我现有的数据仅包含视图(用户收听歌曲)。
我应该如何将数据翻译为PredictionIO
输入?我可以为同一个用户项创建多个视图记录(更多视图=更多权重),还是PredictionIO
根据时间戳查看最新的视图记录?
答案 0 :(得分:0)
我只使用Mahout,因此不知道PredictionIO如何将您的数据转换为输入和算法选择。
对于Mahout,您可以使用基于项目的推荐器使用布尔输入并输入您的" listen"作为值为1的动作和相似性度量SIMILARITY_LOGLIKELIHOOD。 LLR无论如何都会忽略权重。权重用于尝试预测用户评级的旧式推荐器。这些天大多数人对排名更感兴趣,上面的配置会给你最好的结果。
答案 1 :(得分:0)
仅仅为了完整性,正如PredictionIO user group:
中所回答的那样截至当前版本0.7,内置算法不会聚合多个 查看动作,因此更多的视图动作并不意味着更多的重量。你可以 自定义算法来处理它。
如果您有多个U2I操作(例如,查看,比如评分),您可以定义冲突解决标准(例如,最新,最高)。但在你的情况下,只有一个动作(即用户听歌),多个“视图”将相当于一个“视图”。
下一版本的PredictionIO将更好地支持自定义算法和引擎(例如音乐推荐)。