博客
关于我
Spark MLlib 官方指南手册中文版
阅读量:462 次
发布时间:2019-03-06

本文共 1466 字,大约阅读时间需要 4 分钟。

Spark机器学习库(MLlib)指南

Spark MLlib 是 Spark 生态系统中专门为机器学习设计的库,它的目标是使实用的机器学习算法能够高效地扩展并易于使用。MLlib 提供了多种机器学习工具和算法,涵盖分类、回归、聚类和协同过滤等常见任务。

MLlib 的主要功能

  • 机器学习算法

    MLlib 提供了多种标准的机器学习算法,包括分类、回归、聚类和协同过滤算法。

  • 特征工程

    特征工程是机器学习中的核心环节,MLlib 提供了多种特征处理工具,包括特征提取、特征转换、特征选择和降维方法。

  • 管道构建

    MLlib 提供了构建、评估和调整机器学习管道的工具,使得用户能够轻松地构建和优化机器学习流程。

  • 数据存储与加载

    MLlib 提供了将算法、模型和管道保存和加载的功能,简化了机器学习模型的管理和部署。

  • 实用工具

    MLlib 还集成了线性代数、统计和数据处理等实用工具,为机器学习任务提供了强大的支持。

  • MLlib 的接口转变

    在 Spark 2.0 的版本中,MLlib 的主要机器学习接口已经从基于 RDD 的接口转向了基于 DataFrames 的接口。以下是关于这一转变的详细信息:

  • 基于 RDD 接口的维护

    MLlib 将继续在 spark.mllib 包中支持基于 RDD 的接口,这些接口仍然可以用于旧版本的 Spark。

  • 不再添加新的 RDD 接口

    MLlib 不再在基于 RDD 的接口中添加新的特征,未来所有新功能都将重点放在基于 DataFrames 的接口上。

  • 持续优化 DataFrames 接口

    随着 Spark 2.0 以后的版本推进,MLlib 将继续向基于 DataFrames 的接口添加新特征,缩小与基于 RDD 接口的差异。

  • 接口统一的时间表

    当基于 RDD 的接口与基于 DataFrames 的接口在特征上实现完全统一时(预计在 Spark 2.2 版本中),基于 RDD 的接口将被逐步废弃。

  • 接口全面移除

    预计在 Spark 3.0 版本中,基于 RDD 的 MLlib 接口将被完全移除。

  • 为什么选择基于 DataFrames 的接口?

    基于 DataFrames 的接口具有以下优势:

  • 更易于使用

    DataFrames 提供了更直观和易于掌握的接口,支持多种编程语言的统一开发体验。

  • 更强大的数据处理能力

    DataFrames 提供了对 Spark 数据源的更高效的操作,以及结构化查询语言(DataFrame 的查询语言),使得数据处理更加灵活。

  • 更完善的机器学习管道支持

    DataFrames 的接口更适合构建和优化机器学习管道,特别是在特征工程和模型调试方面表现更为突出。

  • MLlib 的工具包信息

    MLlib 的工具包使用 Breeze 作为线性代数库,Breeze 又依赖于 Netlib-Java 进行数值计算优化。如果本地的 Breeze 包未安装,运行时将显示警告提示,并切换到纯虚拟机模式执行。

    需要注意的是,由于本地的 Netlib-Java 安装可能会涉及证书许可问题,默认情况下 MLlib 不会使用本地代理进行优化。如果需要使用本地代理,请参考 Netlib-Java 的官方文档获取安装说明。

    对于基于 Python 的使用,需要确保安装了 NumPy 1.4 及以上版本,以便充分发挥 MLlib 的性能。

    中文指南目录

    点击以下目录项可查看详细内容:

    1. 特征提取、特征变换、特征选择
    2. 分类和回归
      • 3.1 分类
      • 3.2 回归
    3. 聚类
    4. 模型选择和调试

    转载地址:http://fnfbz.baihongyu.com/

    你可能感兴趣的文章
    python + requests实现的接口自动化测试(超详细~)
    查看>>
    Python + selenium 如何截图?
    查看>>
    Python + Selenium 登录QQ邮箱
    查看>>
    Python + selenium如何做接口自动化测试?
    查看>>
    Python + selenium如何截图!
    查看>>
    Python + selenium自动化生成测试报告!
    查看>>
    Python - C 嵌入式分段错误
    查看>>
    Python - DM 一个用户 Discord 机器人
    查看>>
    python - Flask 基础 - 蓝图( Blueprint )(2)
    查看>>
    python - os.getenv 和 os.environ 看不到我的 bash shell 的环境变量
    查看>>
    Python - while循环
    查看>>
    Python - “if“中的逻辑评估顺序陈述
    查看>>
    Python - 从 Google Cloud Storage 下载整个目录
    查看>>
    Python - 使用 pandas 格式化 Excel 单元格
    查看>>
    python - 列表
    查看>>
    Python - 可用时从串行端口数据逐行读取到列表中
    查看>>
    Python - 在应用程序中显示 Web 浏览器/iframe
    查看>>
    Python - 如何使用管道执行shell命令,但没有‘shell = True‘?
    查看>>
    Python - 如何使这个不可腌制的对象可腌制?
    查看>>
    Python - 如何在 Windows 10 上完全卸载 Anaconda?
    查看>>