本文主要是介绍如何衡量两个分布的相似性(更新中),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 0. 简介
- 1. 数学定义
https://blog.csdn.net/fengdu78/article/details/114325589
https://www.cnblogs.com/arkenstone/p/5496761.html
https://en.wikipedia.org/wiki/Kolmogorov%E2%80%93Smirnov_test#:~:text=In%20statistics%2C%20the%20Kolmogorov%E2%80%93Smirnov,test)%2C%20or%20to%20compare%20two
0. 简介
KS检验(Kolmogorov–Smirnov test)是由苏联数学家Andrey Kolmogorov和Nikolai Smirnov提出的一种无参数检验方法。它可以用来解决两类问题:
- 一个集合中的样本,属于某个具体的分布的概率是多少;
- 两个集合的样本,属于同一个分布的概率是多少。
具体来讲,KS检验会计算一个集合的样本的经验分布函数与给定分布函数(或者另一个集合的样本的经验分布函数)的距离。
注意,KS检验只能处理1维特征。
1. 数学定义
对于一个具有n个独立同分布的样本集合 X = { X 1 , X 2 , ⋯ , X n } X=\{X_1,X_2,\cdots,X_n\} X={X1,X2,⋯,Xn},它的经验分布函数(empirical distribution function)为:
F n ( x ) = n u m o f ( s a m p l e s ≤ x ) n = 1 n ∑ i = 1 n 1 [ − ∞ , x ] ( X i ) (1-1) F_n(x)=\frac{num of(samples\leq x)}{n}=\frac{1}{n}\sum_{i=1}^{n}1_{[-\infty,x]}(X_i)\tag{1-1} Fn(x)=nnumof(samples≤x)=n1i=1∑n1[−∞,x](Xi)(1-1)
其中 1 [ − ∞ , y ] ( x ) 1_{[-\infty,y]}(x) 1[−∞,y](x)是指示性函数,当 x ≤ y x\leq y x≤y时值为1,否则值为0.
对于一个给定的分布函数 F ( x ) F(x) F(x),KS检验就是要计算如下检验量:
D n = sup x ∣ F n ( x ) − F ( x ) ∣ D_n=\sup \limits_{x}|F_n(x)-F(x)| Dn=xsup∣Fn(x)−F(x)∣
这篇关于如何衡量两个分布的相似性(更新中)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!