我在mllib中使用协同过滤来训练我的火花星团上的ALS模型。我使用python api。
als = ALS(maxIter=10, rank=10, regParam=0.01, userCol="member_srl", itemCol="productid", ratingCol="rating")
model = als.fit(training)
pred = model.transform(test)
但是当我查看pred时,它似乎正在改变。
如果我运行查询pred.count()
,结果不稳定,稍有差异。那么为什么结果总是在变化。
例如:
pred.count()
4219257
再次运行:
pred.count()
4220723
再次运行:
pred.count()
4222431
答案 0 :(得分:0)
ALS是一种使用随机数初始化的算法。所以预计会有一点变化。尝试使用明确的种子编号,例如:
als.setSeed(123)