我们推荐您使用spark.ml,因为基于DataFrames的API更加的通用而且灵活。不过我们也会继续支持spark.mllib包。用户可以放心使用,spark.mllib还会持续地增加新的功能。不过开发者需要注意,如果新的算法能够适用于机器学习管道的概念,就应该将其放到spark.ml包中,如:特征提取器和转换器。

下面的列表列出了两个包的主要功能。

spark.mllib: 数据类型,算法以及工具

spark.ml: 机器学习管道高级API

虽然还有些降维技术在spark.ml中尚不可用,不过用户可以将spark.mllib中的的相关实现和spark.ml中的算法无缝地结合起来。

依赖项

MLlib使用的线性代数代码包是Breeze,而Breeze又依赖于 netlib-java 优化的数值处理。如果在运行时环境中这些原生库不可用,你将会收到一条警告,而后spark会使用纯JVM实现来替代之。

由于许可限制的原因,spark在默认情况下不会包含netlib-java的原生代理库。如果需要配置netlib-java/Breeze使用其系统优化库,你需要添加依赖项:com.github.fommil.netlib:all:1.1.2(或者在编译时加上参数:-Pnetlib-lgpl),然后再看一看 netlib-java 相应的安装文档。

要使用MLlib的Python接口,你需要安装NumPy 1.4以上的版本。

迁移指南

MLlib目前还在积极的开发当中。所以标记为 Experimental / DeveloperApi 的接口可能在未来发生变化,下面的迁移指南说明了版本升级后的变化。

从1.5升级到1.6

从1.5到1.6,spark.mllib 和 spark.ml 包中并没有重大的API变化,不过有一些行为不再支持或者发生变化。

已经废弃:

SPARK-11358: spark.mllib.clustering.KMeans 的runs参数已经废弃

SPARK-10592: spark.ml.classification.LogisticRegressionModel和spark.ml.regresion.LinearRegressionModel 中,weights字段改名为coefficients。这一变动有助于消除歧义,可以和输入给算法的实例(行)权重(weights)区分开来。

行为有变:

SPARK-7770: spark.mllib.tree.GradientBoostedTrees: validationTol 的语义在1.6中有变。原先其代表误差变化绝对值的一个阈值,而现在它类似于GradientDescent中的convergenceTol:对于较大的误差,使用相对误差(相对于上一次);而对于较小的误差(<0.01),使用绝对误差。

SPARK-11069: spark.ml.feature.RegexTokenizer:以前,在分词之前不会讲字符串转小写。现在的实现是,默认会将字符串转小写,不过有选项可以设为不转。这中实现和Tokenizertransformer的行为相匹配。

Spark老版本

以前版本的迁移指南归档在这里:on this page

要了解更多有关系统优化的好处和背景资料,可以看看Sam Halliday关于ScalaX的演讲:High Performance Linear Algebra in Scala

mllib调参 spark_《Spark 官方文档》机器学习库(MLlib)指南相关推荐

  1. Spark官方文档整理:spark-core

    Spark 官方文档 1,spark 概述 Apache Spark 是一个快速通用的集群计算系统,它提供了提供了java,scala,python和R的高级API,以及一个支持一般图计算的优化引擎. ...

  2. mllib调参 spark_从Spark MLlib到美图机器学习框架实践

    MLlib 是 Apache Spark 的可扩展机器学习库,旨在简化机器学习的工程实践工作,并方便扩展到更大规模的数据集. 机器学习简介 在深入介绍 Spark MLlib 之前先了解机器学习,根据 ...

  3. spark官方文档_Apache Spark 文档传送门

    新手会对官方文档比较陌生,不知道从何入手,下面整理基于 Spark 的常用文档链接 Apache Spark Github https://github.com/apache/spark Apache ...

  4. spark官方文档_这些未在 Spark SQL 文档中说明的优化措施,你知道吗?

    本文来自上周(2020-11-17至2020-11-19)举办的 Data + AI Summit 2020 (原 Spark+AI Summit),主题为<Spark SQL Beyond O ...

  5. spark官方文档_Spark机器学习之Pipeline

    部门的大数据平台支持spark编程了,赶紧跟上步伐看能把分析水平提高到哪一个台阶! 底层是基于数平TDW的,对编程接口进行了封装,管道使用的是 from lib.pipeline import MLP ...

  6. spark官方文档_Spark整合Ray思路漫谈

    什么是Ray 之前花了大概两到三天把Ray相关的论文,官网文档看了一遍,同时特意去找了一些中文资料看Ray当前在国内的发展情况(以及目前国内大部分人对Ray的认知程度). 先来简单介绍下我对Ray的认 ...

  7. Spark官方文档——本地编写并运行scala程序

    快速开始 本文将介绍如何用scala.java.python编写一个spark单击模式的程序. 首先你只需要在一台机器上成功建造Spark:做法: 进入Spark的根目录,输入命令:$ sbt/sbt ...

  8. 《Spark 官方文档》Spark配置(一)

    Spark配置 Spark有以下三种方式修改配置: Spark properties (Spark属性)可以控制绝大多数应用程序参数,而且既可以通过 SparkConf 对象来设置,也可以通过Java ...

  9. java spark yarn_《Spark官方文档》在YARN上运行Spark

    原文链接 Spark在 0.6.0版本后支持在YARN(hadoop NextGen)上运行,并且在后续版本中不断改进. 在YARN上启动Spark 首先,确认 HADOOP_CONF_DIR或YAR ...

最新文章

  1. activiti工作流连接mysql_Activiti工作流 安装myeclipse activiti设计插件并生成数据库表...
  2. 为什么我们有时不用配置java环境变量?
  3. C#代码规范 .NET程序员需要提升的修养1
  4. python怎么一直循环_python 基础之while无限循环
  5. 谷歌浏览器设置定位_Chrome如何设置允许所有网站跟踪我的地理位置
  6. RHEL 7.0系统安装配置图解教程
  7. 最新老男孩Linux云计算sre学什么
  8. wireshark抓包分析怎么看进程_wireshark抓包数据怎么看?wireshark数据分析教程
  9. 阿里矢量图可根据样式修改颜色
  10. 2. Ruby下载安装
  11. 快递 code与快递名称
  12. 《黄昏清兵卫》中学到的工作态度
  13. 自我管理类书籍推荐以及如何进行自我管理
  14. AD633JRZ-ASEMI代理ADI亚德诺AD633JRZ车规级芯片
  15. Java中Scanner类的用法
  16. 任务调度 cron使用
  17. java web热区链接_HTML图片热区map area的用法
  18. 怎么区分三种基本放大电路?
  19. 换位思考:大学教育我之见
  20. 如何运行android sdk sample中的单元测试

热门文章

  1. ETL数据导入/导出工具 HData
  2. android job service,服务保活那些事(Job Service ,JobScheduler)
  3. java动态是如何根据实体建表_传入Java对象 自动创建动态表 并录入数据
  4. python单元测试框架作用_Python单元测试框架:Pytest简介
  5. mysql选择utf 8编码_MySQL支持UTF-8编码全攻略
  6. vue获取当前选中行的数据_Vue编程的团队代码规范
  7. linux一次性密码确保ssh登录安全,使用 SSH 时确保 EC2 Linux 实例安全的最佳实践
  8. 第一次作业 四班15
  9. ubuntu16.04系统上安装CAJViewer方法步骤教程详解
  10. 企业用好大数据只需这6招