参考学习链接: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,核密度估计为以下

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

  1. Spark MLlib知识点学习整理

    MLlib的设计原理:把数据以RDD的形式表示,然后在分布式数据集上调用各种算法.MLlib就是RDD上一系列可供调用的函数的集合. 操作步骤: 1.用字符串RDD来表示信息. 2.运行MLlib中的 ...

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

    3.Spark MLlib Deep Learning Convolution Neural Network(深度学习-卷积神经网络)3.2 http://blog.csdn.net/sunbow0 ...

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

    Spark MLlib Deep Learning Deep Belief Network (深度学习-深度信念网络)2.2 http://blog.csdn.net/sunbow0 第二章Deep ...

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

    3.Spark MLlib Deep Learning Convolution Neural Network (深度学习-卷积神经网络)3.1 http://blog.csdn.net/sunbow0 ...

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

    Spark MLlib Deep Learning Deep Belief Network (深度学习-深度信念网络)2.3 http://blog.csdn.net/sunbow0 第二章Deep ...

  6. spark MLlib BasicStatistics 统计学基础

    一, jar依赖,jsc创建. package ML.BasicStatistics; import com.google.common.collect.Lists; import org.apach ...

  7. 【原创 Hadoop&Spark 动手实践 12】Spark MLLib 基础、应用与信用卡欺诈检测系统动手实践

    [原创 Hadoop&Spark 动手实践 12]Spark MLLib 基础.应用与信用卡欺诈检测系统动手实践

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

    Spark MLlib Deep Learning Deep Belief Network (深度学习-深度信念网络)2.1 http://blog.csdn.net/sunbow0 Spark ML ...

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

    3.Spark MLlib Deep Learning Convolution Neural Network(深度学习-卷积神经网络)3.3 http://blog.csdn.net/sunbow0 ...

随机推荐

  1. Asp.Net统一前后端提示信息方案

    Asp.Net统一前后端提示信息方案   目录 要解决的问题 自定义XML 前端弹框的实现 后端弹框的实现 扩展和整合 示例代码(不完整)及示例截图 示例下载 要解决的问题 减少弹框前后端代码量 增强 ...

  2. 一步一步深入spring(3)--spring的依赖注入方式

    对于spring配置一个bean时,如果需要给该bean提供一些初始化参数,则需要通过依赖注入方式,所谓的依赖注入就是通过spring将bean所需要的一些参数传递到bean实例对象的过程,sprin ...

  3. IOS开发的内存管理

    关于IOS开发的内存管理的文章已经很多了,因此系统的知识点就不写了,这里我写点平时工作遇到的疑问以及解答做个总结吧,相信也会有人遇到相同的疑问呢,欢迎学习IOS的朋友请加ios技术交流群:190956 ...

  4. 【OpenMesh】使用迭代器和循环机

    原文出处: http://openmesh.org/Documentation/OpenMesh-Doc-Latest/tutorial.html 这个例子展现: 如何使用迭代器 如何使用循环机 这个 ...

  5. 设置代码ios 6添加日历事件No calendar has been set.错误

    查了好多资料,发明还是不全,干脆自己整理吧,至少保证在我的做法正确的,以免误导读者,也是给自己做个记录吧! 在iOS 6做日历事件添加时,来来回回报错,No calendar has been set ...

  6. 文件对话框WPF(5)----文件浏览对话框

    废话就不多说了,开始... WPF中文件浏览对话框的实现可以利用Windows API Code Pack,它是一个用于访问Windows Vista/7 特性的托管代码函数库,但并没有包含在.NET ...

  7. pch文件的作用和配置

    pch文件说白了就是一个头文件,只不过这个头文件的类在全局都可以使用,所以说非常的方便,并不用在每个类里面都写一些重复类的头文件,只要将用到的类的头文件放到pch文件里面就行了,当然了还有就是宏定义, ...

  8. UE4新手编程之创建C++项目

    虚幻4中常用的按键和快捷键 虚幻4中有一些按键和快捷键很常用,牢记它们并运动到实际的项目开发中,将会大大地提高你的工作效率和使得工作更简便快捷.下面将列举它们出来: 按键   动作  鼠标左键   选 ...

  9. AI(三):微信与luis结合(上)

    目录 基本原理 公众号申请及配置 验证服务器有效性 微信请求消息类型 基本原理 基本原理如上图:腾讯微信服务器就相当于一个转发服务器,终端(手机.Pad等)发起请求至微信服务器,微信服务器然后将请求转 ...

  10. Mybatis学习笔记(一) 之框架原理

    原生态JDBC编程中问题总结 1.单独使用jdbc连接数据库 maven依赖包: <!-- mysql --> <dependency> <groupId>mysq ...