spark MLLib的基础统计部分学习

参考学习链接:http://www.itnose.net/detail/6269425.html

机器学习相关算法,建议初学者去看看斯坦福的机器学习课程视频:http://open.163.com/special/opencourse/machinelearning.html(已经被翻译了)

所有文中示例见:http://spark.apache.org/docs/latest/mllib-statistics.html

统计工具
(1)摘要统计
我们通过统计中可用的colStats函数提供RDD [Vector]的列摘要统计。
colStats()返回多变量统计摘要的实例,其中包含列向量的最大值,
最小值,平均值,方差和非零数,以及总计数。
(2)相关性
计算两个数据系列之间的相关性是统计学中的常见操作。
在spark.mllib中,我们提供了在许多系列之间计算成对相关性的灵活性。
支持的相关方法目前是Pearson‘s和Spearman
(3)分层抽样
与驻留在spark.mllib中的其他统计函数不同,分层抽样方法sampleByKey
和sampleByKeyExact可以对RDD的键值对执行。 对于分层抽样,键可以被
认为是一个标签,而值作为一个特定的属性。 例如,密钥可以是男人或
女人或文档ID,并且相应的值可以是人口中的人的年龄列表或文档中的单
词列表。 sampleByKey方法将翻转硬币以决定是否对采样进行采样,因此
需要对数据进行一次传递,并提供预期的采样大小。 sampleByKeyExact比
在sampleByKey中使用的每层简单随机抽样需要更多的资源,但是将提供具
有99.99%置信度的精确抽样大小。 sampleByKeyExact目前不支持在python中。

(4)假设检验
MLlib当前支持用于判断拟合度或者独立性的Pearson卡方(chi-squared ( χ2) )检验。
不同的输入类型决定了是做拟合度检验还是独立性检验。拟合度检验要求输
入为Vector, 独立性检验要求输入是Matrix。
Statistics.chiSqTest(vector1, vector2)
假设检验是统计学中一个强大的工具,用于确定结果是否具有统计显着性,
这种结果是否偶然发生。 spark.mllib目前支持Pearson的卡方拟合和独立性的卡方检验(χ2χ2)
。 输入数据类型决定是否进行拟合优度或独立性检验。
拟合优度测试需要一个输入类型的向量,而独立性测试需要一个矩阵作为输入。
spark.mllib还支持输入类型RDD [LabeledPoint],以通过卡方独立性测试启用功能选择。

在Spark repo中的“examples / src / main / scala / org / apache / spark / examples / mllib / HypothesisTestingExample.scala”下找到完整的示例代码。

此外,spark.mllib提供了Kolmogorov-Smirnov(KS)检验的一个单样本,双侧实现,
用于概率分布的相等。 通过提供理论分布的名称(目前仅针对正态分布支持)及其参数,
或者根据给定的理论分布计算累积分布的函数,用户可以测试它们的样本是从哪个 分配。
在用户针对正态分布(distName =“norm”)进行测试但不提供分布参数的情况下,
测试初始化为标准正态分布并记录适当的消息。

(5)流线型测试
spark.mllib提供了一些测试的在线实现,以支持A / B测试等用例。
这些测试可以在Spark Streaming DStream [(Boolean,Double)]上执行,其中每个元组的第
一个元素表示控制组(false)或治疗组(true),第二个元素是观察值。

流式重要性测试支持以下参数:
peacePeriod - 从流中忽略的初始数据点的数量,用于减轻新奇效应。
windowSize - 执行假设测试的过去批次的数量。 设置为0将使用所有前面的批次执行累积处理。
(6)随机数生成
随机数据生成对于随机算法,原型设计和性能测试非常有用。
spark.mllib支持使用i.i.d生成随机RDD。 从给定分布绘制的值:均匀,标准正态或泊松。

RandomRDDs提供了工厂方法来生成随机双RDD或向量RDD。 以下示例生成随机双RDD,其值遵循标准
正态分布N(0,1),然后将其映射到N(1,4)。

有关API的详细信息,请参阅RandomRDDs Scala文档。
(7)Kernel density estimation
核密度估计是用于可视化经验概率分布而不需要关于观察到的样本从其中绘制的特定分布的假
设的技术。 它计算在给定的一组点处评估的随机变量的概率密度函数的估计。 它通过将特定
点处的经验分布的PDF表示为以每个样本为中心的正态分布的PDF的均值来实现该估计。

核密度估计(Kernel density estimation),是一种用于估计概率密度函数的非参数方法,
为独立同分布F的n个样本点,设其概率密度函数为f,核密度估计为以下

时间: 2024-10-15 05:01:37

spark MLLib的基础统计部分学习的相关文章

Spark MLlib Deep Learning Convolution Neural Network (深度学习-卷积神经网络)3.2

3.Spark MLlib Deep Learning Convolution Neural Network(深度学习-卷积神经网络)3.2 http://blog.csdn.net/sunbow0 第三章Convolution Neural Network (卷积神经网络) 2基础及源码解析 2.1 Convolution Neural Network卷积神经网络基础知识 1)基础知识: 自行google,百度,基础方面的非常多,随便看看就可以,只是很多没有把细节说得清楚和明白: 能把细节说清

Spark MLlib Deep Learning Neural Net(深度学习-神经网络)1.2

Spark MLlib Deep Learning Neural Net(深度学习-神经网络)1.2 http://blog.csdn.net/sunbow0/ 第一章Neural Net(神经网络) 2基础及源码解析 2.1 Neural Net神经网络基础知识 2.1.1 神经网络 基础知识参照: http://deeplearning.stanford.edu/wiki/index.php/%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C 2.1.2 反向传导算法

Spark MLlib Deep Learning Neural Net(深度学习-神经网络)1.3

Spark MLlib Deep Learning Neural Net(深度学习-神经网络)1.3 http://blog.csdn.net/sunbow0/ 第一章Neural Net(神经网络) 3实例 3.1 测试数据 3.1.1 测试函数 采用智能优化算法的经典测试函数,如下: (1)Sphere Model 函数表达式 搜索范围 全局最优值 函数简介:此函数为非线性的对称单峰函数,不同维之间是不可分离的.此函数相对比较简单,大多数算法都能够轻松地达到优化效果,其主要用于测试算法的寻优

Spark MLlib Deep Learning Deep Belief Network (深度学习-深度信念网络)2.2

Spark MLlib Deep Learning Deep Belief Network (深度学习-深度信念网络)2.2 http://blog.csdn.net/sunbow0 第二章Deep Belief Network (深度信念网络) 2基础及源代码解析 2.1 Deep Belief Network深度信念网络基础知识 1)综合基础知识參照: http://tieba.baidu.com/p/2895759455   http://wenku.baidu.com/link?url=

分布式深度学习(Spark MLlib,Parameter Server、Ring-allreduce和Tensorflow )

Spark MLlib Spark分布式计算原理 Spark(分布式的计算平台),分布式:指计算节点之间不共享内存,需要通过网络通信的方式交换数据.Spark最典型的应用方式是建立在大量廉价计算节点(廉价主机.虚拟的docker container)上:但这种方式区别于CPU+GPU的架构和共享内存多处理器的高性能服务器架构. 从Spark架构图看出,Manager node调度组织Spark程序,而Worker Node(可分为不同的partition(数据分片),是spark的基本出来单元)

Spark MLlib Deep Learning Convolution Neural Network (深度学习-卷积神经网络)3.1

3.Spark MLlib Deep Learning Convolution Neural Network (深度学习-卷积神经网络)3.1 http://blog.csdn.net/sunbow0 Spark MLlib Deep Learning工具箱,是根据现有深度学习教程<UFLDL教程>中的算法,在SparkMLlib中的实现.具体Spark MLlib Deep Learning(深度学习)目录结构: 第一章Neural Net(NN) 1.源码 2.源码解析 3.实例 第二章D

Spark MLlib Deep Learning Convolution Neural Network (深度学习-卷积神经网络)3.3

3.Spark MLlib Deep Learning Convolution Neural Network(深度学习-卷积神经网络)3.3 http://blog.csdn.net/sunbow0 第三章Convolution Neural Network (卷积神经网络) 3实例 3.1 测试数据 按照上例数据,或者新建图片识别数据. 3.2 CNN实例 //2 测试数据 Logger.getRootLogger.setLevel(Level.WARN) valdata_path="/use

Spark MLlib Deep Learning Neural Net(深度学习-神经网络)1.1

Spark MLlib Deep Learning Neural Net(深度学习-神经网络)1.1 http://blog.csdn.net/sunbow0/ Spark MLlib Deep Learning工具箱,是根据现有深度学习教程<UFLDL教程>中的算法,在SparkMLlib中的实现.具体Spark MLlib Deep Learning(深度学习)目录结构: 第一章Neural Net(NN) 1.源码 2.源码解析 3.实例 第二章Deep Belief Nets(DBNs

Spark MLlib Deep Learning Deep Belief Network (深度学习-深度信念网络)2.3

Spark MLlib Deep Learning Deep Belief Network (深度学习-深度信念网络)2.3 http://blog.csdn.net/sunbow0 第二章Deep Belief Network (深度信念网络) 3实例 3.1 測试数据 依照上例数据,或者新建图片识别数据. 3.2 DBN实例 //****************例2(读取固定样本:来源于经典优化算法測试函数Sphere Model)***********// //2 读取样本数据 Logge