博客
关于我
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/

    你可能感兴趣的文章
    Mysql学习总结(72)——MySQL 开发者开发,设计规范再总结
    查看>>
    Mysql学习总结(73)——MySQL 查询A表存在B表不存在的数据SQL总结
    查看>>
    Mysql学习总结(74)——慢SQL!压垮团队的最后一根稻草!
    查看>>
    Mysql学习总结(75)——并发量大、数据量大的互联网业务数据库设计军规
    查看>>
    Mysql学习总结(76)——MySQL执行计划(explain)结果含义总结
    查看>>
    Mysql学习总结(77)——温故Mysql数据库开发核心原则与规范
    查看>>
    Mysql学习总结(78)——MySQL各版本差异整理
    查看>>
    Mysql学习总结(79)——MySQL常用函数总结
    查看>>
    Mysql学习总结(7)——MySql索引原理与使用大全
    查看>>
    Mysql学习总结(80)——统计数据库的总记录数和库中各个表的数据量
    查看>>
    Mysql学习总结(81)——为什么MySQL不推荐使用uuid或者雪花id作为主键?
    查看>>
    Mysql学习总结(82)——MySQL逻辑删除与数据库唯一性约束如何解决?
    查看>>
    Mysql学习总结(83)——常用的几种分布式锁:ZK分布式锁、Redis分布式锁、数据库分布式锁、基于JDK的分布式锁方案对比总结
    查看>>
    Mysql学习总结(84)—— Mysql的主从复制延迟问题总结
    查看>>
    Mysql学习总结(85)——开发人员最应该明白的数据库设计原则
    查看>>
    Mysql学习总结(8)——MySql基本查询、连接查询、子查询、正则表达查询讲解
    查看>>
    Mysql学习总结(9)——MySql视图原理讲解与使用大全
    查看>>
    Mysql学习笔记 - 在Centos7环境下离线安装Mysql
    查看>>
    MySQL学习笔记十七:复制特性
    查看>>
    Mysql学习第一课-mysql的定义及sql语句
    查看>>