xenron 发表于 2018-8-27 06:53

Spark的ML和MLLib两个包区别和联系



Spark的ML和MLLib两个包区别和联系

Spark官方文档 Spark ML Programming Guide。
ML是1.4比Mllib更高抽象的库,它解决如果简洁的设计一个机器学习工作流的问题,而不是具体的某种机器学习算法。未来这两个库会并行发展。

spark.mllib中的算法接口是基于RDDs的;spark.ml中的算法接口是基于DataFrames的。
实际使用中推荐ml,建立在DataFrames基础上的ml中一系列算法更适合创建包含从数据清洗到特征工程再到模型训练等一系列工作的ML pipeline;而且未来mllib也会被弃用。

大体概念:DataFrame => Pipeline => A new DataFrame
Pipeline: 是由若干个Transformers和Estimators连起来的数据处理过程
Transformer:入:DataFrame => 出: Data Frame
Estimator:入:DataFrame => 出:Transformer




shidongdong 发表于 2018-8-27 07:47

不适用于迭代计算的场景,因此不适用机器学习的算法。

bingoliang205 发表于 2019-4-1 00:44

这里有介绍 https://blog.csdn.net/rlnLo2pNEfx9c/article/details/78692975
页: [1]
查看完整版本: Spark的ML和MLLib两个包区别和联系