Apache Spark机器学习.1.4 MLlib

本文涉及的产品
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
交互式建模 PAI-DSW,每月250计算时 3个月
模型训练 PAI-DLC,100CU*H 3个月
简介:

1.4 MLlib


MLlib是一个可扩展的Spark机器学习库,包括很多常用的机器学习算法。MLlib内置的算法如下:

以向量和矩阵形式处理数据

基本的统计计算,例如:汇总统计和相关性、简单随机数生成、分层抽样、执行简单的假设检验

分类和回归建模

协同过滤

聚类

降维

特征提取与转换

频繁模式挖掘

开发优化

PMML模型导出

Spark MLlib还处在活跃开发阶段,预计每次新版发布都会有新的算法加入其中。

MLlib符合Apache Spark的计算哲学,简单易用,性能卓越。

MLlib使用依赖于netlib-java和jblas的线性代数包Breeze。netlib-java和jblas依赖于本地Fortran程序。如果节点没有安装gfortran运行库,用户需要自行安装。要是没有自动检测到库,MLlib会报链接错误。

关于MLib用例和详细的使用信息,请访问:http://researcher.watson.ibm.com/researcher/files/us-ytian/systemML.pdf。

其他机器学习库

正如前面讨论的,MLlib已经实现了常用的回归和分类算法。但这些基本的算法不足以支持复杂的机器学习。

如果我们等待Spark团队将所有需要的机器学习算法加入库中,则需要很长时间。正因为如此,很多第三方团队向Spark贡献了机器学习库。

IBM已经向Apache Spark贡献了机器学习库SystemML。

除了MLlib提供的功能外,SystemML提供了更丰富的机器学习算法,如缺失数据填补、SVM、GLM、ARIMA、非线性优化、图建模及矩阵分解等算法。

SystemML由IBM Almaden研究组开发,是一个分布式机器学习引擎,可以扩展到任意大的数据集,它的优势有:

整合了分散的机器学习环境

给出了Spark核心生态完整的DML集

允许数据科学家集中精力关注算法问题,而不是具体实现

提升了数据科学团队的时间价值

建立了一个事实上可重用的机器学习程序标准

SystemML参考了R 语言语法和语义,并提供通过其自己的语言编写新算法的能力。

Spark通过SparkR与R语言进行了较好的集成,用户需要时可以使用R语言众多的机器学习算法。正如后面我们要讨论的,SparkR notebook使得这些操作非常容易。

相关实践学习
使用PAI-EAS一键部署ChatGLM及LangChain应用
本场景中主要介绍如何使用模型在线服务(PAI-EAS)部署ChatGLM的AI-Web应用以及启动WebUI进行模型推理,并通过LangChain集成自己的业务数据。
机器学习概览及常见算法
机器学习(Machine Learning, ML)是人工智能的核心,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,它是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。 本课程将带你入门机器学习,掌握机器学习的概念和常用的算法。
相关文章
阿里云 EMR Serverless Spark 在微财机器学习场景下的应用
面对机器学习场景下的训练瓶颈,微财选择基于阿里云 EMR Serverless Spark 建立数据平台。通过 EMR Serverless Spark,微财突破了单机训练使用的数据规模瓶颈,大幅提升了训练效率,解决了存算分离架构下 Shuffle 稳定性和性能困扰,为智能风控等业务提供了强有力的技术支撑。
265 15
【机器学习】Spark ML 对数据进行规范化预处理 StandardScaler 与向量拆分
标准化Scaler是数据预处理技术,用于将特征值映射到均值0、方差1的标准正态分布,以消除不同尺度特征的影响,提升模型稳定性和精度。Spark ML中的StandardScaler实现此功能,通过`.setInputCol`、`.setOutputCol`等方法配置并应用到DataFrame数据。示例展示了如何在Spark中使用StandardScaler进行数据规范化,包括创建SparkSession,构建DataFrame,使用VectorAssembler和StandardScaler,以及将向量拆分为列。规范化有助于降低特征重要性,提高模型训练速度和计算效率。
363 6
【机器学习】Spark ML 对数据特征进行 One-Hot 编码
One-Hot 编码是机器学习中将离散特征转换为数值表示的方法,每个取值映射为一个二进制向量,常用于避免特征间大小关系影响模型。Spark ML 提供 OneHotEncoder 进行编码,输入输出列可通过 `inputCol` 和 `outputCol` 参数设置。在示例中,先用 StringIndexer 对类别特征编码,再用 OneHotEncoder 转换,最后展示编码结果。注意 One-Hot 编码可能导致高维问题,可结合实际情况选择编码方式。
275 6
使用Spark进行机器学习
【5月更文挑战第2天】使用Spark进行机器学习
168 2
Spark机器学习之推荐引擎
spark是现在非常流行的一个计算框架,本文重要是用spark框架做推荐系统的实现。
3793 0

推荐镜像

更多
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问