目录

  • 前言
  • 概率密度函数曲线
  • 几类经典的概率密度函数
  • 两种绘制密度曲线的方法
  • 参考文献

前言

很多数据科学家在做回归模型评估的时候,不仅会去计算模型拟合优度R2,平均绝对误差还会去看测试集的每个样本偏差的分布情况,这个时候就需要用到概率密度函数曲线的知识了,通过绘制概率密度函数曲线图或者直方图可以很直观的看到测试集的所有样本的偏差分布情况。

概率密度函数曲线

我们知道概率是用来度量一件事物发生可能性大小,以抛色子为例,一枚色子是一个正六面体,一共6个面,分别标有1~6,随手一抛,求出现点数5朝上的可能性是多少?因为样本空间数是6,对点数5朝上的有利事件数是1(点数5朝上),因此,出现点数5朝上的概率都是1/6,这是古典概率论的描述,列出其概率分步表如下

点数 1 2 3 4 5 6
概率 1/6 1/6 1/6 1/6 1/6 1/6

画出其概率分布图如下

对于有限离散的样本空间,我们可以列出概率分布表画出概率分布图,如果,某事件可能取值是某个连续的区间 [a,b][a,b][a,b],也有其对应的概率值,这种对应关系称为连续型概率函数,记作

p=f(x),x∈[a,b]p = f(x), x\in[a,b]p=f(x),x∈[a,b]

其中,p表示自变量取x附近一小段的概率,对应的概率分布函数图像可以用一条连续的曲线来刻画

其中,横坐标表示自变量x取值范围,从a到b,可以是a,b中间某一点或某一小段或几个小段的并等,纵坐标表示因变量f(x)取值大小,可以得到

∫aaf(x)dx=1\int_{a}^{a} f(x) dx = 1 ∫aa​f(x)dx=1

这样,概率函数可以定义为连续型随机变量(X)在某个确定的取值点附近的可能性的函数,可以类比一个质地不均匀的橡皮泥横梗在a,b之间,如果要求这块橡皮泥的质量,那么就要知道从a到b的各处的密度大小,所以概率函数也叫概率密度函数。

几类经典的概率密度函数

  • 正态分布

正态分布是最常见的一种的概率分布,也称为也称为高斯分布,它刻画了随机变量(X)服从一个位置参数为μ\muμ 、尺度参数为σ\sigmaσ的概率分布,其概率密度函数为

f(x)=12πσe−(x−μ)22σ2f(x) = \frac{1}{\sqrt {2\pi}\sigma} e^{-\frac{(x-\mu)^2}{2\sigma^2}} f(x)=2π​σ1​e−2σ2(x−μ)2​

如果随机变量(X)服从一个数学期望为μ\muμ,方差为σ2\sigma^2σ2的正态分布,记作 X∼N(μ,σ2)X\sim N(\mu, \sigma^2)X∼N(μ,σ2),特别的,当μ=0,σ2=1\mu =0, \sigma^2 = 1μ=0,σ2=1时,称为标准正态分布。

  • 泊松分布

泊松分布是一种常见的离散型概率分布,刻画了单位时间内随机事件发生的次数,其概率密度函数为
P(X=k)=λkk!e−λ,k=0,1,2,⋯P(X = k) = \frac{\lambda^k}{k!}e^{-\lambda}, k = 0, 1, 2,\cdots P(X=k)=k!λk​e−λ,k=0,1,2,⋯

  • 伯努利分布

伯努利分布常用来刻画0-1概率分布,如果随机变量(X)仅有两个可能的结果0和1,此时随机变量(X)取0和1两个值,相应的概率密度函数为
p={p,X=11−p,X=0p = \begin{cases} p, \quad X= 1\\ \\ 1-p,\quad X=0 \end{cases} p=⎩⎪⎨⎪⎧​p,X=11−p,X=0​

两种绘制密度曲线的方法

某数据科学家通过算法模型获得一组预测值,其想要评估预测值与实际值之间偏差分布情况,可以绘制出偏差的概率分布函数曲线图或者直方图,观测这些偏差分布情况,这里给出两种绘制概率密度曲线的方法

  • matplotlib

matplotlib是python比较原生的绘图模块,适合平时使用习惯,功能强大用法友善,出场率高。

def density(column_1, column_2): #密度函数diff = abs(column_1 - column_2)  #差异率plt.figure(figsize = (6, 4)) #新建画布diff.plot(kind ='kde', label = u'观测值') #label = str(lower) +'~'+ str(upper)plt.grid(alpha = 0.5) #添加网格线plt.xlabel("偏差")plt.ylabel("密度值")plt.legend()plt.title("偏差密度分布图")plt.show()

预览效果


matplotlib绘制概率密度函数曲线主要调用了**kind =‘kde’**的参数,这是一种密度图(Kernel Density Estimate,核密度估计),它是通过模拟计算“可能会产生观测数据的连续情况概率分布的估计”而产生的,因此在调用plot时加上kind='kde’即可生成一张密度图,也就是我们看到的概率密度函数曲线图。

  • seaborn

seaborn也是python中的一个常用的可视化模块,是对matplotlib进行二次封装而成,所以有些方面要比matplotlib更简单更友好

def density(column_1, column_2): #密度函数diff = abs(column_1 - column_2)  #差异率plt.figure(figsize = (6, 4)) #新建画布sb.kdeplot(diff, label = 'density') #密度曲线plt.grid(alpha = 0.5) #添加网格线plt.xlabel("偏差")plt.ylabel("密度值")plt.legend()plt.title("偏差概率密度曲线")plt.show()

预览效果

seaborn就进一步把这个观测值连续模拟过程封装成了kdeplot函数,直接调用即可,但从两者的概率函数曲线来看,matplotlib更具有对称性,seaborn细节更丰富,我们可以从seaborn的密度函数曲线看到实际值的数量级和预测值的数量级大致在10000左右,偏差有大有小,但主要集中在-500到2000之间。

参考文献

1,https://baike.baidu.com/item/概率密度函数/5021996?fr=aladdin
2,https://zhuanlan.zhihu.com/p/48140593
3,https://www.zhihu.com/question/263467674
4,http://t.zoukankan.com/Renyi-Fan-p-13282258.html
5,https://blog.csdn.net/helloworld0906/article/details/103214392

概率密度函数曲线及绘制相关推荐

  1. matlab 求概率密度,MATLAB如何使用pdf函数计算指定分布的概率密度函数

    MATLAB如何使用pdf函数计算指定分布的概率密度函数 [语法说明] Y=pdf('name',X,A) Y=pdf('name',X,A,B) Y=pdf('name',X,A,B,C) 字符串n ...

  2. 概率密度函数与分布函数的几何含义

    概率密度函数与分布函数的几何含义 匿名 | 浏览 4603 次 推荐于2016-12-02 03:56:36 最佳答案 1,分布函数F(X)的一阶导数为概率密度函数:f(x) = dF(X)/dX 概 ...

  3. 直方图,概率质量函数和概率密度函数

    直方图:每个可能值在横轴作为自变量,而可能值的出现次数作为变量. 举例来说一个8bit模数转换的信号,假设转换后信号有256000个采样点,每个采样点可能值是0-255.下面三幅图 分别画出了模数转换 ...

  4. 通俗理解概率密度函数

    0.前言 概率密度函数是描述连续随机变量的分布的工具,但是因为它是个"密度",没有概率分布那么直观,下面就用通俗的说法理解概率密度函数. 1.从离续变量出发 1.1 离散随机变量 ...

  5. 绘制卡方分布的概率密度函数 matlab,MATLAB如何使用chi2pdf函数计算卡方分布的概率密度...

    MATLAB如何使用chi2pdf函数计算卡方分布的概率密度 [语法说明] Y=chi2pdf(X,V):函数计算X中的元素在参数V指定的卡方分布下的概率密度函数值.如果输入参数中有一个为标量,则将其 ...

  6. 正态分布的概率密度函数python_python绘制正态分布及三大抽样分布的概率密度图像...

    目录 1.scipy库中各分布对应的方法 2.stats中各分布的常用方法及其功能 3.正态分布的概率密度函数及其图象 1)正态分布的概率密度函数及其图象 2)python绘制正态分布的概率密度函数图 ...

  7. MATLAB绘制概率密度函数

    % 1.绘制密度分布 y=rand(100,1)*10;%产生0-10以内的100个随机数 x=linspace(min(x),max(x),10);%产生10个等距数列 yy=hist(y,x);% ...

  8. python 服从正态分布下概率密度函数

    python 服从正态分布下概率密度函数 服从正太分布下,概率密度函数公式 公式解释: f(x): 是某样本(样本以数值形式表现)为某数值时发生的概率 0<f(x)<1 x: 是随机抽样的 ...

  9. 机械故障诊断信号的幅域分析 - 幅值概率密度函数 | 基于python的代码实现,在CWRU轴承数据上实战

    机械故障诊断信号的幅域分析 - 幅值概率密度函数 | 基于python的代码实现,在CWRU数据上实战 **1.随机信号的幅值概率密度函数介绍** **2.代码实战** 2.1导入包 2.2定义CWR ...

  10. python 服从正太分布下概率密度函数

    # python 服从正太分布下概率密度函数 利用input()函数输入均值和标准差, 多次绘制概率密度函数图形并将图像曲线放置在同一张图中 代码块: """ 绘制正太分 ...

最新文章

  1. avformat_alloc_output_context2 -22错误
  2. linux安装jdk8_Skywalking系列博客1-安装单机版 Skywalking
  3. Firefox自带下载功能进行断点续传
  4. 近期总结:generator-web,前端自动化构建的解决方案
  5. Linux Vim显示行号方法详解
  6. iPhone11因便宜销量超预期;三星手机曝高危漏洞;xUtils 3.8.3发布 | 极客头条
  7. 用angular中的ng-repeat和ng-show来实现tab选项卡
  8. 好用的ASP.NET 分页类 简单好用 支持 AJAX 自定义文字
  9. chrome浏览pdf 字体变了
  10. 图论基础——启发式搜索
  11. python常遇到的各类问题解决办法
  12. Python数据去重
  13. php 上传图片 裁剪,thinkphp_图片上传裁剪功能_已迁移
  14. VSCode去除.pytest_cache文件夹
  15. 【python量化】将Informer用于股价预测
  16. cass块参照怎么改颜色,CASS符号颜色自定义的诀窍,都在这里了!
  17. PLDA宣布XpressLINK-SOC™ CXL控制器IP支持AMBA CXS Issue B协议
  18. ARM到底是冯诺依曼结构还是哈佛结构?
  19. DCMTK 中源代码中使用 Overlay 的例子
  20. 在Autodesk MeshMixer中使用官方的中文语言包

热门文章

  1. 演讲的思路锻炼,逆向思维需要刻意练习吗?
  2. 电脑没有长截图功能,一招即可截下来!如何用电脑做长截图
  3. 怎么大量转换图片格式为tiff
  4. yocto-poky下目录结构分析
  5. jquery怎么读(jquery怎么读音英语)
  6. python 发邮件 抄送,Python调用outlook发送邮件,发送给多人、抄送给多人并带上附件...
  7. 开源网站的漏洞复现(appcms、wordpress)
  8. NIOS ii 实战篇 --- 按键控制LED
  9. 中信证券:降准并非货币宽松 缺口或达9000亿
  10. android 图片虚化代码,Android模糊图片技术