KS 检验是基于 Kolmogorov distribution,指的是

\[K=\sup_{t\in[0,1]}\left\lvert B(t)\right\rvert
\]

式中 \(B(t)\) 是布朗桥。\(K\) 的累积分布函数是

\[\Pr(K\le x)=1-2\sum_{k=1}^\infty(-1)^{k-1}\mathrm e^{-2k^2x^2}=\frac{\sqrt{2\pi}}x\sum_{k=1}^\infty\mathrm e^{-(2k-1)^2\pi^2\big/8x^2}
\]

在给定分布 \(F\) 时,统计量取 \(D_n=\sup_x\left\lvert F_n(x)-F(x)\right\rvert\)。在零假设成立的情况下,可认为样本来自给定的分布 \(F\)

\[\sqrt nD_n\xrightarrow{n\to\infty}\sup\left\lvert B(F(t))\right\rvert
\]

我们拿到 \(150\) 个一维数据,提出零假设:

\[H_0\text{:总体 }X\text{ 服从某个均匀分布。}
\]

首先把 \(150\) 个数据搞出一个经验分布函数 \(F_n(x)=1/n\sum_{i=1}^n\boldsymbol I_{[-\infty,x]}X(i)\),下面考察我们的经验分布函数和理想的均匀分布两条线的差距最大值,可以画出图来看看,虽然也看不啥来还得靠算,但毕竟这个图的配色我很喜欢所以还是放了。

计算出统计量为 \(0.0528\),\(h=0\),\(p=0.7762\),因此样本通过了 Kolmogorov-Smirnov 检验,不拒绝原假设,原样本的确取自均匀分布!


AD 检验是 KS 检验的进化,也是基于经验分布函数的,只是用另一套方法来衡量经验分布函数和理想的差距。它的统计量表示为

\[A^2=n\int_{-\infty}^\infty\frac{(F_n(x)-F(x))^2}{F(x)(1-F(x))}\mathrm dF(x)
\]

大概逻辑是,如果数据的确来自原分布,那它的累积分布函数是均匀分布。K 样本的 AD 检验大概逻辑也是类似的,把样本聚成一个整体,然后把每个样本的线打上去对比以下差距,落在可接受的范围内就是通过了。

K 样本下的 AD 检验没有现成的程序,我就不会了。不过我清华数学系学统计的哥们跟我说检验通过了,那就是通过了。


回到问题本身端点的证明,根据统计推断的点估计理论中的极大似然估计知道,参数的极大似然估计是最大值。但是极大似然估计往往低估了,采用贝叶斯估计的方法可以得到更好的结果。

先验分布选共轭的帕累托分布。

\[p(a)\sim\operatorname{Pa}(b,K)=
\begin{cases}
\dfrac{Kb^K}{a^{K+1}}&\text{if}~a\ge b \\[2ex]
0&\text{otherwise}
\end{cases}
\]

这个密度分布函数说 \(a\) 必须大于某个常数 \(b\),但不要太大,\(K\) 用来控制多少是太大。如果取 \(K\to0\) 和 \(b\to0\) 则先验变无信息。此分布的均值为

\[E(a)=\frac{Kb}{K-1}
\]

给定帕累托实验后,和数据集的联合分布为

\[p(D,a)=\frac{Kb^K}{a^{N+K+1}},a\ge\max(D)
\]

令 \(m\) 为 \(D\) 中最大值,则 evidence 为

\[p(D)=\int_m^\infty\frac{Kb^K}{a^{N+K+1}}\mathrm da=
\begin{cases}
\dfrac{K}{(N+K)b^N}&\text{if}~m\le b \\[2ex]
\dfrac{Kb^K}{(N+K)m^{N+K}}&\text{if}~m>b
\end{cases}
\]

再往下事实上有许多种估计的方式,我们的目标始终是仅依赖于 \(D\) 而推断出 \(a\)。我们可以无信息的先验得到 \(p(a\mid D)\sim\operatorname{Pa}(m,N)\)。后验的均值就是 \(\dfrac{Nm}{N-1}=\dfrac{150}{149}\times19.88\approx20.01\)。

\(m\) 的密度分布由下式给出

\[\begin{matrix}
\displaystyle\Pr(\max\le m\mid a)=\Pr(\text{all}~N~\text{samples}\le m\mid a)=\left(\frac ma\right)^N \\[2ex]
\displaystyle p(m\mid a)=\frac{\mathrm d}{\mathrm dm}\Pr(\max\le m\mid a)=\frac Na\left(\frac ma\right)^{N-1} \\[2ex]
\displaystyle E(m)=\int_0^aN\left(\frac ma\right)^N\mathrm dm=\frac{Na}{N+1}
\end{matrix}
\]

所以对 \(a\) 无偏的估计是 \(\dfrac{(N+1)m}N\)。

贝叶斯估计出来的统计量一般都是有偏的,期望不等于参数。这个在频率学派中是不理想的结果,但是贝叶斯学派觉得无所谓。事实上 \(n\) 很大时往往趋近于参数,所以有偏了尤其在大样本情况无伤大雅。那么对于我们这个均匀分布问题,如果取 \(K=1\) 的 pareto 分布,你会发现后验均值等于无偏估计量了,这样理论上就很好。但是如果没有能支持取 \(K=1\) 的先验信息,还是用无信息分布更合理吧。

总之后验均值是 \(\dfrac{Nm}{N-1}=\dfrac{150}{149}\times19.88\approx20.01\),这就是均匀分布的上界的估计。


题目化为:\(n\) 个人抢红包总金额 \(S\)。记 \(x_i\) 为第 \(i\) 个人抢到的金额,\(S_i=\sum_{k=1}^ix_k\),即第 \(i\) 个人抢后累计被抢到的总金额。定义 \(x_0=0,S_0=0\)。

已知 \(\begin{cases}
x_1\sim\operatorname{uniform}\hspace{-0.25em}\left(0,\dfrac{2S}n\right) \\
x_{i+1}\left|~(x_1\sim x_i)\sim\operatorname{uniform}\hspace{-0.25em}\left(0,\dfrac{2(S-S_i)}{n-i}\right)\right.,i=1,2,\dots,n-2 \\[2ex]
x_n=S-S_{n-1}
\end{cases}\)

试求 \(x_1\sim x_n\) 的边缘分布,并证明 \(EX_1=EX_2=\cdots=EX_n,\textit{Var}X_1<\textit{Var}X_2<\cdots=\textit{Var}X_{n-1}\)。

解:首先有递推公式

\[\begin{aligned}
f(x_{i+1},\dots,x_1)&=f(x_{i+1}\mid x_1,\dots,x_i)f(x_1,\dots,x_i) \\
&=f(x_{i+1}\mid x_1,\dots,x_i)f(x_i\mid x_1,\dots,x_i)\cdots f(x_2\mid x_1)f(x_1) \\
&=\prod_{l=0}^i\frac{(n-l)x_{l+1}}{2\left(S-\sum_{k=1}^lx_k\right)}\boldsymbol I_{\left(0,\frac{2\left(S-\sum_{k=1}^lx_k\right)}{n-l}\right)}x_{l+1}
\end{aligned}
\]

式中 \(\boldsymbol I=\begin{bmatrix}
1&&&&\\[1ex]
-1&1&&&\\[1ex]
&-1&1&&\\[1.6ex]
&&\ddots&\ddots&\\[0.7ex]
&&&-1&1
\end{bmatrix}\)。

有递推公式

\[\begin{aligned}
f_{S_m}(x)&=\int_R\frac{n-m+1}{2(S-t)}f_{S_{m-1}}(t)\boldsymbol I_{\left(\frac{(n-m+1)x-2S}{n-m-1}\boldsymbol I(0,n-2](m),x\right)}(t)\mathrm dt,m=2,\dots,n-1 \\
f_{X_m}(x)&=\int_R\frac{n-m+1}{2(S-t)}f_{S_{m-1}}(t)\boldsymbol I_{\left(-\infty,S-\frac{n-m+1}2x\right)}(t)\mathrm dt,x>0
\end{aligned}
\]

首先由生成机制知 \(X_{n-1}\sim X_n\) 同分布。对于 \(m\le n-1,k\ge1\),有

\[\begin{aligned}
ES_m^k&=\int_Rx^kf_{S_m}(x)\mathrm dx \\
&=\int_Rx^k\left(\int_Rf_{S_m\mid S_{m-1}}(x\mid y)f_{S_{m-1}}(y)\mathrm dy\right)\mathrm dx \\
&=\int_Rx^k\left(\int_R\frac{n-m+1}{2(S-y)}\boldsymbol I_{\left(y,y+\frac{2(S-y)}{n-m+1}\right)}(x)f_{S_{m-1}}(y)\mathrm dy\right)\mathrm dx \\
&=\int_R\frac{n-m+1}{2(S-y)}f_{S_{m-1}}(y)\left(\int_Rx^k\left(I_{\left(y,y+\frac{2(S-y)}{n-m+1}\right)}(x)\mathrm dx\right)\mathrm dy\right)~\text{(Fubini 定理)}
\end{aligned}
\]

【均值】\(k=1\) 时,有

\[ES_m=\int_R\left(\frac S{n-m+1}+\frac{n-m}{n-m+1}y\right)f_{S_{m-1}}(y)\mathrm dy=\frac S{n-m+1}+\frac{n-m}{n-m+1}ES_{m-1}
\]

代入初始条件有 \(ES_1=\dfrac Sn\),一通递推猛如虎,有 \(\dfrac{S-ES_m}{n-m}=\dfrac{S-ES_{m-1}}{n-(m-1)}\),故有 \(ES_m=\dfrac{mS}n\),再有 \(EX_m=\dfrac Sn\),总之整个计算过程就像是一颗洋葱一样一层一层一层一层地剥开它的期望,最后就证明成功了。

【方差】前面发现求 \(S\) 比求 \(X\) 还要简单!下面还如法炮制好了。由于 \(\textit{Var}X=EX^2-(EX)^2\),只需要求 \(EX_m^2\),那先求出 \(ES_m^2\),再慢慢寻求他俩之间的关系。

\(k=2\) 时,\(ES_m^2=\int_R\dfrac16f_{S_{m-1}}(y)\left[\dfrac{12(S-y)y}{n-m+1}+6y^2+\dfrac{8(S-y)^2}{(n-m+1)^2}\right]\mathrm dy\),化简得

\[3(n-m+1)ES_m^2=\frac{6(m-1)(n-m+1)-28(m-1)+4n}nS^2
\]

类似地,对 \(m\le n-1,k\ge1\),

\[\begin{aligned}
EX_m^k&=\int_Rx^kf_{X_m}(x)\mathrm dx \\
&=\int_Rx^k\left(\int_Rf_{X_m\mid S_{m-1}}(x\mid y)f_{S_{m-1}}(y)\mathrm dy\right)\mathrm dx \\
&=\int_Rx^k\left(\int_R\frac{n-m+1}{2(S-y)}\boldsymbol I_{\left(0,\frac{2(S-y)}{n-m+1}\right)}(x)f_{S_{m-1}}(y)\mathrm dy\right)\mathrm dx \\
&=\int_R\frac{2^k(S-y)^k}{(k+1)(n-m+1)^k}f_{S_{m-1}}(y)\mathrm dy
\end{aligned}
\]

令 \(k=2\),化简得 \(3(n-m+1)^2EX_m^2=\dfrac{4(n-2m+2)}nS^2+4ES_{m-1}^2\)。

一通代入猛如虎,下面有没有错我就不知道了,反正是证明题,结论没错你中间的过程的问题也看不出来的。

\[3(n-m)^2EX_{m+1}^2=\left[3(n-m)^2+1\right]EX_m^2
\]

从而

\[EX_{m+1}^2=\frac{4S^2}{3n^2}\prod_{k=1}^m\left[1+\frac1{3(n-m)^2}\right]
\]

再往回代,由于 \(\textit{Var}X=EX^2-(EX)^2\),就可以证明

\[\textit{Var}X^2=\frac{4(3n^2-6n+4)}{9n^2(n-1)^2}-\left(\frac Sn\right)^2>\textit{Var}X_1
\]

然后你就品,细品,一步步往后推就会发现,方差真在越来越大,而且增大的速度还在越来越快。以上整个计算过程抱的是清华大学数学系 2014 级博士汪 ZD 的大腿,在此对他粗壮的大腿表示由衷的敬佩!祝他好人一生手气最佳!

Kolmogorov-Smirnov 检验 + k 样本 Anderson-Darling 检验 + 贝叶斯估计 + 期望方差的更多相关文章

  1. 柯尔莫可洛夫-斯米洛夫检验(Kolmogorov–Smirnov test,K-S test)

    柯尔莫哥洛夫-斯米尔诺夫检验(Колмогоров-Смирнов检验)基于累计分布函数,用以检验两个经验分布是否不同或一个经验分布与另一个理想分布是否不同. 在进行cumulative probab ...

  2. SPSS单一样本的T检验

    SPSS单一样本的T检验 如果已知总体均数,进行样本均数与总体均数之间的差异显著性检验属于单一样本的T检验.在SPSS中,单一样本的T检验由"One-Sample T Test"过 ...

  3. spss-非参数检验-K多个独立样本检验( Kruskal-Wallis检验)案例解析

    今天和大家一起探讨和分下一下SPSS-非参数检验--K个独立样本检验 ( Kruskal-Wallis检验). 还是以SPSS教程为例: 假设:HO:   不同地区的儿童,身高分布是相同的 H1: 不 ...

  4. Kolmogorov–Smirnov test(KS)

    sklearn实战-乳腺癌细胞数据挖掘( 博主亲自录制) https://study.163.com/course/introduction.htm?courseId=1005269003&u ...

  5. 斯坦福大学公开课机器学习: machine learning system design | error analysis(误差分析:检验算法是否有高偏差和高方差)

    误差分析可以更系统地做出决定.如果你准备研究机器学习的东西或者构造机器学习应用程序,最好的实践方法不是建立一个非常复杂的系统.拥有多么复杂的变量,而是构建一个简单的算法.这样你可以很快地实现它.研究机 ...

  6. SAS学习笔记25 t检验(单个样本t检验、配对样本t检验、两个独立样本t检验及方差不齐时的t'检验)

    根据研究设计和资料的性质有单个样本t检验.配对样本t检验.两个独立样本t检验以及在方差不齐时的t'检验 单样本t检验 单样本t检验(one-sample t-test)又称单样本均数t检验,适用于样本 ...

  7. 【R】正态检验与R语言

    正态检验与R语言 1.Kolmogorov–Smirnov test 统计学里, Kolmogorov–Smirnov 检验(亦称:K–S 检验)是用来检验数据是否符合某种分布的一种非参数检验,通过比 ...

  8. Tests for normality正态分布检验

    欢迎关注博主主页,学习python视频资源,还有大量免费python经典文章 sklearn实战-乳腺癌细胞数据挖掘(博主亲自录制视频教程) https://study.163.com/course/ ...

  9. 求方差分析与两样本T检验 区别

    方差分析与两样本T检验. 1.首先可以看到方差分析(ANOVA)包含两样本T检验,把两样本T检验作为自己的特例.因为ANOVA可以比较多个总体的均值,当然包含两个总体作为特例.实际上,T的平方就是F统 ...

  10. 《spss统计分析与行业应用案例详解》:实例九 单一样本t检验

    单一样本t检验的功能与意义 spss的单一样本t检验过程是瑕设检验中最基本也是最常用的方法之一,跟所有的假没检验一样,其依剧的基木原理也是统计学中的‘小概率反证法”原理.通过单一样本t检验.我们可以实 ...

随机推荐

  1. 初识python day1记录

    程序语言中的分类 在程序中有分为高级语言Java python go与低级语言C 汇编,每种语言都有自己的规则,但是最终目的都是给计算机识别的,所以他的底层肯定是一些二进制010101,像java/p ...

  2. opc da 服务器数据 转 profinet IO项目案例

    1         案例说明 1.   在OPC DA服务器上运行OPC DA client软件查看OPC DA服务器的相关参数. 2.   配置VFBOX网关参数,使用网关采集OPC DA服务器数据 ...

  3. 用Tensorboard在VScode Remote ssh中显示图像

    可以用Tensorboard在vscode的ssh连接中显示plot出的图像. 具体方法如下: from torch.utils.tensorboard import SummaryWriter wr ...

  4. Android ADB命令集锦

    Android ADB命令集锦 原文(有删改):https://blog.csdn.net/dianziagen/article/details/57400723 本文包括: adb基本指令 Shel ...

  5. 嵌入式HLS 案例开发步骤分享——基于Zynq-7010/20工业开发板(1)

    目 录 前 言 3 1 HLS 开发流程说明 5 1.1 HLS 工程导入 5 1.2 编译与仿真 6 1.3 综合 8 1.4 IP 核封装 10 1.5 IP 核测试 14 前 言 本文主要介绍 ...

  6. 2.SpringBoot快速上手

    2.SpringBoot快速上手 SpringBoot介绍 javaEE的开发经常会涉及到3个框架Spring ,SpringMVC,MyBatis.但是这三个框架配置极其繁琐,有大量的xml文件,s ...

  7. logo2

  8. 200 行 ,一个PYQT 窗口 + 后台 AIOHTTP 服务 , 例子

    直接上代码 import sys from typing import Dict, List from aiohttp import web import asyncio from functools ...

  9. Linux开机启动自定义脚本

    方式一:chkconfig命令 首先编写好自启的脚本 /etc/init.d/test.sh #!/bin/sh # chkconfig: 2345 10 90 # 创建个文件 touch /opt/ ...

  10. node.js 手稿