作者:wwjieabc_584 | 来源:互联网 | 2023-09-07 15:47
SparkMLPipeline的引入,是受到scikit-learn的启发,虽然MLlib已经足够简单实用,但如果目标数据集结构复杂,需要多次处理,或是在学习过程中,要使用多个转化
Spark ML Pipeline 的引入,是受到 scikit-learn 的启发,虽然 MLlib 已经足够简单实用,但如果目标数据集结构复杂,需要多次处理,或是在学习过程中,要使用多个转化器 (Transformer) 和预测器 (Estimator),这种情况下使用 MLlib 将会让程序结构极其复杂。所以,一个可用于构建复杂机器学习工作流应用的新库已经出现了,它就是 Spark 1.2 版本之后引入的 ML Pipeline。ML Pipeline 是建立在 DataFrames 上的更高层次的 API 库,旨在帮助使用者来创建和调试实际的机器学习工作流。
Pipeline 组件
DataFrame
ML API 使用 Spark SQL 中的 DataFrame 作为机器学习数据集,可以容纳很多种类型的数据:文本、向量、图像和结构化数据等等。Spark DataFrame 以 RDD(Resilient Distributed Datasets) 为基础,但是带有 Schema(数据库中对象的集合)信息,类似于传统