一颗蔬菜

我虽是只猫却也常常思考

MLlib介绍

  • 是基于Spark Core的机器学习库,具有Spark的优点
  • 底层计算经过优化,比常规编码效率往往更高
  • 实现了多种机器学习算法,可以进行模型训练及预测

Spark MLlib实现的算法

  • 逻辑回归 朴素贝叶斯 线性回归 SVM 决策树 LDA 矩阵分解 etc.

Spark MLlib官方文档预览

MLlib是Spark的机器学习(ML)库。它的目标是让实用的机器学习变得可扩展和容易。在高层次上,它提供以下工具:

  • ML算法:常用的学习算法,如分类、回归、聚类和协同过滤
  • 特征化:特征提取、变换、降维和选择
  • 管道:用于构造、评估和调优ML管道的工具
  • 持久性:保存和加载算法、模型和管道
  • 实用:线性代数,统计,数据处理等
声明: DataFrame-base是主要的API

基于MLlib rdd的API现在处于维护模式。从Spark2.0开始, spark.mllib 中的 RDD-based API 已经进入维护模式,现在Spark的机器学习API主要是 spark.ml 中的 DataFrame-based API 。

这意味着什么?
  • MLlib仍然支持spark中基于rdd的API,并修复了错误的mllib
  • MLlib不会向RDD-based API 添加新特性
  • 在Spark2.x中,MLlib将为 DataFrames-based API 添加新特性, 以实现与RDD-based API 相同的特性
  • 预计Spark2.3以后,RDD-based API将被弃用
  • RDD-based API预计将在Spark 3.0中删除
为什么 MLlib 要切换到DataFrame-based API呢?
  • DataFrames 提供了更友好的API,DataFrames的许多优点包括Spark数据源、SQL/DataFrame查询、 Tungsten 和 Catalyst 优化以及跨语言的统一API。
  • DataFrames-based API为MLlib提供了跨ML算法和跨多种语言的统一API。
  • DataFrames促进了实际的ML管道,特别是特性转换。

发表评论

正在加载 Emoji