赞
踩
请先阅读leboop发布的博文《Spark MLlib协同过滤之交替最小二乘法ALS原理与实践》。
核心代码如下:
- //定义ALS,参数初始化
- val als = new ALS().setRank(50)
- .setMaxIter(10)
- .setRegParam(0.01)
- .setUserCol("userId")
- .setItemCol("itemId")
- .setRatingCol("rating")
- //训练模型
- val model = als.fit(training)
下面详细介绍这段代码:
一、fit函数源码
fit函数在ALS类中,重写了抽象类Estimator的fit函数。
ALS类如下:
- @Since("1.3.0")
- class ALS(@Since("1.4.0") override val uid: String) extends Estimator[ALSModel] with ALSParams
- with DefaultParamsWritable
Estimator类如下:
abstract class Estimator[M <: Model[M]] extends PipelineStage
重写后的fit函数如下:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。