机器学习储备(13):概率密度和高斯分布例子解析

《实例》阐述算法,通俗易懂,助您对算法的理解达到一个新高度。包含但不限于:经典算法,机器学习,深度学习,LeetCode 题解,Kaggle 实战。期待您的到来!

01

回顾

前面介绍到关于概率论中离散型随机变量,和一个离散型相关的经典分布:二分分布,大家想了解的可以参考:

机器学习储备(11):说说离散型随机变量

机器学习储备(12):二项分布的例子解析

理解这些基本的概念和理论,对于我们掌握机器学习的许多算法都是非常有帮助的,比如在分类或聚类时,如果能得出某个样本点属于某个类别的概率,那么无疑是非常的好的,这样,我们能将每个样本属于每个分类划定一个得分值,有时候必须这么做,比如下面这个例子。

当我们去买一只股票时,假定一个预测器告诉你赚钱,另一个告诉你买这只股票,赚钱的可能为51%,赔钱的可能为49%,那么我想,你会认为第二个的预测更令你满意吧,因为第一个,仅仅告诉你赚钱,但是赔钱的可能性也是很大的啊,所以,根据概率,我会仔细权衡买还是不买,而不是盲目地根据第一个预测器告诉的结果去投资吧。

所以概率论的知识还是非常有实际意义的,接下来,让我们先看下连续性随机变量的一些基本知识吧。

02

连续型随机变量

连续型随机变量,顾名思义,它的取值是连续的,而不是有限个,比如烟台的苹果质量情况,表示为 X,那么 X = 0.4, 0.7, 0.91等等这些值,并且越接近于1.0,这个苹果的质量越好。

那么苹果质量情况X,在X = 0.75时的概率是多大呢? 我们记为: p(0.75),在X = 0.83时的概率呢? p(0.83),我们称:p(x)为连续型随机变量X的概率密度,它刻画了X=x时的取值的可能性大小,但不是取值的概率,这点要在理解上注意一下。那么我们统计下p(X<=0.75)是多大呢?(质量情况不大于0.75的概率密度),此时我们将F(0.75) = p(X<=0.75),那么p(X<=0.5)呢?记为F(0.5) = p(X<=0.5)。因此,归纳出一个公式为:

此处,质量情况不可能为负数,所以定积分的区间:[0,x]。

称 F(x)为质量情况X的分布函数,可以看到分布函数是一个区间长度上概率密度的累计。

概率密度p(x)和F(x)的关系,一个是导数,一个是积分,F(x)在x属于[负无穷,正无穷]是一定等于概率的总和:1。

我们一般考察随机变量X的取值x的概率密度曲线:p(x),通过概率密度曲线,可以看出随机变量的取值与概率密度的关系,下面看下苹果质量情况 X 满足高斯分布时的曲线。

03

一种经典的分布

这种分布就是高斯分布,它在实际研究和工程领域都有着非常广泛的应用。做出归纳假设:苹果质量情况 X 满足高斯分布。我们收集了20个苹果,每个苹果的质量情况现在出来报告了,如下所示:

data = np.array([ 0.79, 0.78, 0.8 , 0.79, 0.77, 0.81, 0.74, 0.85, 0.8 ,

0.77, 0.81, 0.85, 0.85, 0.83, 0.83, 0.8 , 0.83, 0.71,

0.76, 0.8 ])

假定这20个苹果质量情况X符合高斯分布,则由一维高斯分布的概率密度公式:

可以看到,在我们已知了20个样本,也就是x,现在要反推高斯分布中的两个关键参数:均值和方差吧。

已知各个样本和假定模型后,去求解模型的参数,最常用的方法是最大似然估计吧,根据已有这20个样本和最大似然估计精神推导得出,均值和方差的公式如下:

有了这两个参数,每个 x 对应的概率密度不就是f(x)吗,这样根据20个样本,画出概率密度的分布图吧。

将以上分析兑现为代码:

import numpy as np

import matplotlib.pyplot as plt

#均值

def average(data):

return np.sum(data)/len(data)

#标准差

def sigma(data,avg):

sigma_squ = np.sum(np.power((data-avg),2))/len(data)

return np.power(sigma_squ,0.5)

#gaussian-distribution prob

def prob(data,avg,sig):

sqrt_2pi = np.power(2*np.pi,0.5)

coef = 1/(sqrt_2pi*sig)

powcoef = -1/(2*np.power(sig,2))

mypow = powcoef * (np.power((data-avg),2))

return coef*(np.exp(mypow))

#样本数据

data = np.array([ 0.79, 0.78, 0.8 , 0.79, 0.77, 0.81, 0.74, 0.85, 0.8 ,

0.77, 0.81, 0.85, 0.85, 0.83, 0.83, 0.8 , 0.83, 0.71,

0.76, 0.8 ])

#根据样本求高斯分布的平均数

ave = average(data)

#根据样本求高斯分布的标准差

sig = sigma(data,ave)

#拿到数据

x = np.arange(0.5,1.0,0.01)

p = prob(x,ave,sig)

#绘制函数

plt.plot(x,p)

plt.grid()

plt.xlabel('apple quality factor')

plt.ylabel('prob density')

plt.yticks(np.arange(0,12,1))

plt.title('Gaussian distribution')

plt.show()

图形显示结果:

几点说明:

1. 可以看到苹果质量在平均数处,大约等于0.8时,取到概率密度的最大值,因为数据样本较少,所以0.5~0.7处概率密度很小。

2. 苹果的质量集中在平均数附近区域

3. 概率密度与x轴所围成的面积为1,等于概率的总和。

4. p值,即概率密度的值不是一定小于1,它和概率的取值不一致,但是概率密度可以理解成概率,也就是说概率是概率密度量纲后的变量,具有相似的意义。

以上是高斯分布的概率分布图,那么我们来看下新来的一批500个苹果,高斯分布假定下,它们的质量情况图:

#根据计算出来的均值和方差

data1000 = np.random.normal(0.8,0.036,500)

plt.scatter(np.arange(1,501),data1000,c='orange')

plt.xlabel('apple id')

plt.ylabel('apple quality factor')

plt.title('apple quality distribution')

plt.show()

可以看到苹果的质量情况大都集中在0.75和0.85之间,符合我们的均值预期。

以上就是高斯分布的理论和例子解析,谢谢您的阅读!

原文发布于微信公众号 - 算法channel(alg-channel)

原文发表时间:2017-12-02

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏ACM算法日常

第二篇:《机器学习之线性回归》

参见上一篇《初探篇》里对用于模型训练的样本的定义,样本可以是音频、图片、点集等等,这里我用一个简单的点集作为我们的样本解释,如图

10220
来自专栏IT派

谷歌发布MobileNetV2:可做语义分割的下一代移动端计算机视觉架构

项目链接:https://github.com/tensorflow/models/tree/master/research/slim/nets/mobilen...

12500
来自专栏量子位

汤晓鸥为CNN搓了一颗大力丸

是重新搭一个模型呢,还是拿来新数据重新调参,在这个已经训练好的模型上搞迁移学习呢?

10000
来自专栏CreateAMind

Sensorimotor Robot Policy Training using RL(ref163篇 90页) 笔记 超长

15040
来自专栏大数据挖掘DT机器学习

从最大似然到EM算法浅解

机器学习十大算法之一:EM算法。能评得上十大之一,让人听起来觉得挺NB的。什么是NB啊,我们一般说某个人很NB,是因为他能解决一些别人解决不了的问题。...

523120
来自专栏新智元

【11分钟训练完ImageNet】DNN训练再破纪录,1024 CPU Caffe开源

【新智元导读】此前,伯克利、TACC和UC戴维斯的研究人员使用新算法,在24分钟内训练完AlexNet,1小时训练完ResNet,创下了纪录。现在,他们继续推进...

602110
来自专栏机器之心

演讲 | 今日头条AI技术沙龙马毅:低维模型与深度模型的殊途同归

机器之心原创 作者:邱陆陆 上周,今日头条人工智能实验室在清华大学举办了第二期 AI 技术沙龙,邀请到上海科技大学信息科学与技术学院的马毅教授带来题为「高维数据...

64370
来自专栏量化投资与机器学习

LSTM Networks在股票市场上的探究

LSTM Networks 简介 LSTM Networks是递归神经网络(RNNs)的一种,该算法由Sepp Hochreiter和Jurgen Schmid...

42370
来自专栏量子位

腾讯开源业内最大多标签图像数据集,附ResNet-101模型

不仅要开源多标签图像数据集ML-Images,以及业内目前同类深度学习模型中精度最高的深度残差网络ResNet-101。

30740
来自专栏AI科技大本营的专栏

与其撩妹尬舞,倒不如跟AI学跳舞

作者 | Caroline Chan、Shiry Ginosar、Tinghui Zhou 和 Alexei A. Efros

14120

扫码关注云+社区

领取腾讯云代金券