MLlib是spark的机器学习库,其目的是使得机器学习算法更容易使用和扩展。MLlib包含分类、回归、聚类、协同滤波、降维,以及更低层级的优化原语和更高层级的管道API。MLlib分成两个包:spark.mllib包含建立在RDD之上的原始API,spark.ml提供了建立在DataFrames之上的更高层级的机器学习管道API。推荐使用spark.ml,因为DataFrames使得API更加通用和灵活。
下面链接是本人做的一个关于半监督式学习的ppt
半监督学习ppt
MLlib数据类型
- MLlib支持保存在本地的,或者由RDD所表示的分布式向量和矩阵。代数运算由Breeze和jblas库支持。在监督式学习中,一个训练样本称为:a labeled point
- 本地向量:元素为double类型,向量下标索引从0开始的int整数;支持dense和sparse两种类型。dense 向量由一个double数组保存向量中所有的值;sparse向量由两个并行的数组支持,分别保存索引和值。类继承关系:Vector -> (DenseVector, SparseVector)
- LabeledPoint:包括一个本地向量(可以是dense vector或者sparse vector),和给该向量打上的标签。标签采用double类型保存,所以LabeledPoint可用于分类和回归问题中。对于二值分类问题,标签要么为0,要么为1;对于多类问题,标签为从0开始的整数:0,1,2,...。实际问题中经常遇到训练数据稀疏的情况,MLlib支持从LIBSVM文件加载数据,构造LabeledPoint
- 本地矩阵:元素值为double类型,行列索引为int类型;支持dense和sparse矩阵。dense矩阵采用一个double数组,按照列主序保存数组;sparse矩阵采用CSC(Compressed sparse column)格式,以列主序保存矩阵中非零元素。Matrix -> (DenseMatrix, SparseMatrix)
- 分布式矩阵:采用long类型保存行列索引,元素值依然是double类型,分布式保存在一个或者多个RDD之中。选择正确的保存格式对分布式矩阵非常重要,因为转换分布式矩阵的格式很可能会牵涉到大量的shuffle IO操作,目前支持3种类型的分布式矩阵:RowMatrix, IndexedRowMatrix, CoordinateMatrix。最基本的类型RowMatrix,是一个以行为主的矩阵,每一行可以看成是一个特征向量,以向量的形式存储在本地。IndexedRowMatrix是特殊的RowMatrix,其还保存了每一行的索引,用于定位特定的行和执行join操作。CoordinateMatrix以坐标序列的形式保存数组中的元素。BlockMatrix是为分块矩阵设计的数据结构,矩阵被分割成一个个矩阵块,保存到本地。
MLlib数据统计
- 在RDD[Vector]上,Statistics类提供了基于列的统计函数colStats,colStats返回每一列的最大值,最小值,均值,方差,非零元素个数,以及所有元素数量
- 计算两个序列的相关性是一项很常用的操作,使用corr函数可以很容易的计算两个或者多个向量的相关系数,corr函数支持Pearson和Spearman相关系数。
- 在RDD[(K,V)],采用分层抽样函数sampleByKey,需指定每一个key抽样的比例
- 假设检验,支持皮尔逊卡方检验
- 随机数生成,支持均匀分布、标准正态分布、泊松分布
- kernel density estimation:允许在不知道被观察样本概率分布的情况下,对其经验概率分布进行可视化。通过评估给定的样本,估计随机变量的分布。在评估随机变量的分布时,假设随机变量的经验概率分布函数,可以表示为以所有采样点为中心的正态分布的均值。
转载于:https://my.oschina.net/jhone/blog/330596
分享到:
相关推荐
《Spark+MLlib机器学习实践》是王晓华撰写的一本深度解析Spark机器学习库MLlib的实战指南。这本书全面介绍了如何利用Apache Spark的MLlib库进行高效、大规模的数据挖掘和机器学习任务。以下是对该书内容的详细解读:...
《Spark专刊 SparkMLlib机器学习》是由作者李军编写的关于Spark机器学习库MLlib的专业文献,旨在为读者提供全面、清晰的Spark MLlib学习资料。这本书的内容涵盖了MLlib库的基础概念、核心功能以及实际应用,对于想要...
Spark MLlib是Apache Spark的核心库之一,专注于提供机器学习算法和工具。它是大数据处理和分析领域的一个重要组件,尤其在分布式环境下,Spark MLlib能够帮助用户高效地执行各种机器学习任务。下面将深入探讨Spark ...
SparkMLlib是Apache Spark的机器学习库,它提供了一系列实用的机器学习算法和工具,可以帮助用户更容易地实施机器学习算法和进行大规模数据分析。SparkMLlib的主要特点包括高效性、可扩展性和易用性。 SparkMLlib...
Spark MLlib是Apache Spark的一个内置库,专门用于机器学习任务。它提供了一系列的工具,使开发者能够实现常见的机器学习算法,例如分类、回归、聚类、协同过滤等。本知识点将重点介绍Spark MLlib机器学习入门的基础...
Spark 机器学习实战介绍是 Apache Spark 的机器学习库,提供了一个统一的高级 API,用来构建机器学习模型。Spark MLlib 库提供了大量的机器学习算法和工具,包括分类、回归、聚类、推荐系统等。 Spark MLlib 的...
Spark MLlib作为一个强大的机器学习库,提供了实现推荐系统的关键工具,尤其是交替最小二乘法(ALS)算法,适用于处理大规模的用户-商品评分矩阵,为实现用户推荐提供了解决方案。 交替最小二乘法(Alternating ...
标题:Spark机器学习案例实战 1. Spark简介 Apache Spark是一个开源的大数据处理框架,主要用于大规模数据集的处理。它构建在Hadoop之上,提供了比Hadoop MapReduce更快的数据处理能力。Spark提供了用于快速计算的...
Spark MLlib机器学习算法的算法,教程视频,工具数据和数据都是经过验证正确的,下载下来即可直接使用
Apache Spark:SparkMLlib机器学习基础.docx
1.Spark及其生态圈简介.pdf ...8.SparkMLlib(上)--机器学习及SparkMLlib简介.pdf 8.SparkMLlib(下)--SparkMLlib实战.pdf 9.SparkGraphX介绍及实例.pdf 10.分布式内存文件系统Tachyon介绍及安装部署.pdf
1.Spark及其生态圈简介.pdf ...8.SparkMLlib(上)--机器学习及SparkMLlib简介.pdf 8.SparkMLlib(下)--SparkMLlib实战.pdf 9.SparkGraphX介绍及实例.pdf 10.分布式内存文件系统Tachyon介绍及安装部署.pdf
- **Spark MLlib** 是 Apache Spark 的机器学习库,提供了丰富的工具和算法来处理大规模的数据集。 - **目标**:使用户能够快速开发和部署复杂的机器学习应用。 - **特性**: - 支持多种类型的机器学习任务,如分类...
在机器学习领域,尤其是针对大数据处理框架Apache Spark中的机器学习库MLlib(Machine Learning Library),线性回归是一种非常基础且重要的算法。它主要用于预测数值型目标变量与一个或多个自变量之间的关系。本文...
Spark MLlib 是 Apache Spark 的一个核心模块,专门用于机器学习(Machine Learning)算法的实现。这个压缩包包含的资源很全面,旨在帮助你深入理解并掌握 Spark MLlib 中的基础机器学习算法。Spark 以其分布式计算...
Spark MLlib是Apache Spark的一个分布式机器学习库,为机器学习算法提供了高效的实现。本文研究的是如何利用Spark MLlib实现分布式学习算法,尤其是在处理电子商务服务中海量用户数据的场景下,对比传统的单机算法,...
Spark MLlib机器学习实践 ,王晓华著
Spark MLlib 是 Apache Spark 中的一个机器学习库,提供了许多机器学习算法和工具,可以用于数据处理、模型训练和模型评估等。 这篇文章为读者提供了机器学习的基本概念和实践经验,以及 Spark MLlib 的应用,可以...
Spark MLlib是Apache Spark生态系统中的一个模块,专门用于机器学习(Machine Learning)。它提供了一系列的算法、工具和实用程序,支持数据科学家和开发人员构建高效、可扩展的机器学习模型。MLlib集成了广泛的数据...