以双峰分布分离种群

机器算法验证 分布 直方图 混合分布
2022-03-10 06:19:42

我有一个显示双峰分布的数据集。这是通过绘制频率与数量的直方图来确定的。

我现在需要将两个原始种群分开,从而找到一个交点。从情节上看,这个点可能是大约。-1.0 到 -0.8。

是否有直接的计算或函数可以用来更准确地定位该点?

直方图

4个回答

实际上,该算法听起来就像是使用了 Macro 建议的方法。这个想法是你有一个分布

F(x)=pF1(x)+(1p)F2(x)
在哪里F1F2最多指定几个从数据估计的参数。在你的情况下F1F2都是高斯分布,将有 5 个参数从数据中估计,分别为分布p,σ1,σ2,μ1μ2F1F2. 由于分布重叠,实际上没有唯一的分离点。但该算法可能会选择密度的交叉点。由于这些是高斯分布,因此只有一个分布,除非一个与另一个相比具有非常大的方差。如果不知道算法,我不知道估计了多少这些参数。例如,可以估计两个标准偏差,或者可以假设它们相等,并且只估计合并的标准偏差。在第一种情况下估计 5 个参数,在第二种情况下估计 4 个。的参数后,您可以使用估计值指定的分布来计算交叉点。F1F2

对于其他感兴趣的人,我使用高斯混合建模 (GMM) 算法来确定两个总体的均值并将它们分开。

本页链接的论文中解释了所使用技术的详细信息:

http://www-personal.umich.edu/~ognedin/gmm/gmm_user_guide.pdf

Gnedin, O. (2010)。量化双峰

您可以使用Otsu 方法,您可以将直方图视为图像中像素灰度值的直方图。

然后,在计算机视觉和图像处理中,Otsu 的方法,以 Nobuyuki Otsu (大津展之 Ōtsu Nobuyuki) 1命名,用于自动执行基于聚类的图像阈值化,或者,这就是你的情况,减少灰度图像为二值图像。

该算法假设图像包含遵循双模直方图的两类像素(前景像素和背景像素),然后计算分离这两类像素的最佳阈值,以使它们的组合散布(类内方差)最小,或等效地(因为成对的平方距离之和是常数),因此它们的类间方差最大。


1大津,信之。“一种从灰度直方图中选择阈值的方法。” IEEE 系统、人与控制论交易9.1 (1979): 62-66。

您可以使用检查来“正常”(有很多包):算法很简单:将 var 拆分为 bin。计算观察次数和期望值,取差值,按期望值标准化。我们拥有最小标准化 res 的 bin - 将包含所需的二分法最佳阈值!(2 个具有 max stdRes= 您的 2 个分布模式的箱 ;-)。不要忘记玩(尝试)不同的 bin 编号!接下来,您尝试通过模型选择(KLIC/CAIC/BIC/等)在此区间内进行澄清。