参考学习链接: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. 广告基本知识-ROI分解

    任何一个在线广告系统,都面临ROI的问题,对于Invest,我们先不考虑,因为对于流量有多种方式可以买回,也无法优化(当然在RTB的时候是可以优化的).Return是主要优化的方向,Return=点击 ...

  2. 整合MVVM框架(Prism)

    整合MVVM框架(Prism) 我们基础的框架已经搭建起来了,现在整合MVVM框架Prism,在ViewModel做一些逻辑处理,真正把界面设计分离出来. 这样方便我们系统开发分工合作,同时提高系统可 ...

  3. CSS:CSS学习总结

    CSS:CSS学习总结 背景 CSS是一种声明式的语言,学好CSS的难度甚至大于学好一门服务器语言(我个人的感觉),这周在学习CSS,就记录一下学习经验. 1.规则声明顺序 因为CSS的样式具备层叠性 ...

  4. C#基础之方法和参数

    C#基础之方法和参数 接上一篇<C#基础之类型和成员基础以及常量.字段.属性> 实例方法.静态方法 C#中的方法分为两类,一种是属于对象(类型的实例)的,称之为实例方法,另一种是属于类型的 ...

  5. JAVA多线程suspend()、resume()和wait()、notify()的区别

    suspend() 和 resume() 方法:两个方法配套使用,suspend()使得线程进入阻塞状态,并且不会自动恢复,必须其对应的 resume() 被调用,才能使得线程重新进入可执行状态.典型 ...

  6. React的生命周期

    我们先来看一张图,其实看完这张图基本就懂了,如果还不懂,请继续往下看. getDefaultProps 执行过一次后,被创建的类会有缓存,映射的值会存在this.props,前提是这个prop不是父组 ...

  7. document.referrer之隐藏来源

    document.referrer document.referrer是用来获取跳转链接的来源,正规的解释是:referrer 属性可返回载入当前文档的文档的 URL. 实际中使用在广告相关业务中较多 ...

  8. 【C#】Creating/Querying/Modifying the .mdb databases

    As for databases, there are quit many kinds such as foxpro, mysql, sqlserver, etc. But when we need ...

  9. jq向webApi提交post json数据

    在页面想webApi post json数据的时候,发现webapi不能直接以json的方式接受数据(注:我是没有发现一个很好的方式来post json数据的);但是可以以数据结构的方式传递: 如下: ...

  10. 正则表达式之邮箱验证javascript代码

    fuchangxi的正则: 复制代码 代码如下: /^([0-9A-Za-z\-_\.]+)@([0-9a-z]+\.[a-z]{2,3}(\.[a-z]{2})?)$/g 开始必须是一个或者多个单词 ...