我用https://databricks-training.s3.amazonaws.com/movie-recommendation-with-mllib.html中所述的方法为MovieLens数据库创建了一个简单的推荐系统。
同时,我在显式训练方面遇到了问题,就像Apache Spark ALS collaborative filtering results. They don't make sense中所描述的那样。使用隐式训练(在显式和隐式数据上)可以给出合理的结果,但显式训练则不能。
目前这对我来说还可以接受,但我很好奇如何更新模型。虽然我的当前解决方案是:
虽然第一种方法适用于批处理(例如夜间批量生成推荐),但第二种方法适用于几乎实时生成推荐。
同时,我在显式训练方面遇到了问题,就像Apache Spark ALS collaborative filtering results. They don't make sense中所描述的那样。使用隐式训练(在显式和隐式数据上)可以给出合理的结果,但显式训练则不能。
目前这对我来说还可以接受,但我很好奇如何更新模型。虽然我的当前解决方案是:
- 拥有所有用户评分
- 生成模型
- 为用户获取推荐
- 创建一组基础评级
- 生成模型一次(可选项:保存和加载它)
- 由一个用户对10个随机电影进行评分(未包含在模型中!)
- 使用模型和新的用户评分获得推荐
虽然第一种方法适用于批处理(例如夜间批量生成推荐),但第二种方法适用于几乎实时生成推荐。