我注意到有两个LinearRegressionModel
SparkML 中的类,ML 包中的一个类(spark.ml
)和另一个MLLib
(spark.mllib
) 包裹。
这两者的实现方式完全不同 - 例如那个来自MLLib
实施Serializable
,而另一个则没有。
顺便说一句,这也是同样的道理RandomForestModel
or Word2Vec
.
为什么有两个班级?哪一个是“正确的”?有没有办法将一种转换为另一种?
o.a.s.mllib
包含旧的基于 RDD 的 API,同时o.a.s.ml
包含新的 API 构建Dataset
和机器学习管道。ml
and mllib
在 2.0.0 中达到了同等功能并且mllib
正在慢慢被弃用(这在线性回归的情况下已经发生)并且很可能会在下一个主要版本中被删除。
因此,除非您的目标是向后兼容,否则“正确的选择”是o.a.s.ml
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)