我们正在尝试使用PredictionIO(版本0.9.5)+ Universal Recommender(v。0.2.3)为我们服务的用户构建个人推荐。 EventServer正在收集有关用户对MySQL数据库中项目评级的事件,由调度程序运行推荐人的重新训练以及将个人推荐存储到ElasticSearch。在开始和后来的一些火车上,推荐人的反应对很多项目看起来不错,但过了一段时间,推荐数量开始下降。我们查看了ElasticSearch中的数据:项目存在,但它们的属性已被删除。 我们想知道为什么会发生这种情况?
附件中的engine.json示例:engine.json
提前致谢!
答案 0 :(得分:0)
如果EventServer中没有事件,则不会将该项写入Elasticsearch。您是否在培训时间之间删除EventServer中的数据?或者从所有新数据开始,放弃旧的?
如果您曾经有过事件,则会将一个项目写入Elasaticsearch,但如果以后没有事件,它将会消失,因为Elasticsearch索引会在每列火车上被替换。 EventServer旨在随着时间的推移累积数据,而不是在每列火车之前删除。
BTW你应该升级到新的PredictionIO v0.9.6和Universal Recommender v0.3.0。这些必须一起升级并从这些存储库中获取。
https://github.com/actionml/PredictionIO
https://github.com/actionml/template-scala-parallel-universal-recommendation