【发布时间】:2017-04-10 03:26:15
【问题描述】:
我正在使用 Apache Spark (Pyspark API for Python) ALS MLLIB 开发一项服务,该服务可为我网站中的匿名用户(不在训练集中的用户)执行实时推荐。 在我的用例中,我以这种方式在用户评分上训练模型:
from pyspark.mllib.recommendation import ALS, MatrixFactorizationModel, Rating
ratings = df.map(lambda l: Rating(int(l[0]), int(l[1]), float(l[2])))
rank = 10
numIterations = 10
model = ALS.trainImplicit(ratings, rank, numIterations)
现在,每次匿名用户在目录中选择一个项目时,我想折叠它在 ALS 模型中的向量并获得推荐(就像recommendProducts() 调用),但避免重新训练整个模型。
在 Apache Spark 中训练 ALS 模型后,有什么方法可以轻松折叠新的匿名用户向量?
提前致谢
【问题讨论】:
-
澄清一下:您只是想在测试集上运行模型,还是想要某种“模型服务”解决方案来实时为网站提供动力?
-
我绝对希望“模型服务”解决方案能够实时为网站提供动力!
-
我将此问题标记为重复问题,希望通过链接获得更多曝光:stackoverflow.com/questions/30509335/…
标签: python apache-spark pyspark apache-spark-mllib collaborative-filtering