群集比“肘部方法”更好



集群是机器学习管道中解决科学和商业问题的重要组成部分。 它有助于识别数据云中密切相关的点集(一定程度的距离),这些点可能很难通过其他方式确定。

然而,聚类过程大部分涉及没有老师机器学习领域,其特点是存在许多困难。 没有关于如何优化流程或评估培训成功与否的答案或技巧。 这是未知的领域。

因此, 用k平均法进行聚类的流行方法没有完全回答我们的问题也就不足为奇了: “我们如何首先找出聚类的数量?” 这个问题非常重要,因为群集通常在单个群集的进一步处理之前进行,而计算资源的数量可能取决于对其数量的评估。

在业务分析领域可能会产生最严重的后果。 在此,将聚类用于市场细分,并且有可能根据聚类的数量分配营销人员。 因此,此数量的错误估计会导致有价值资源的非最佳分配。


肘法


当使用k-means方法进行聚类时,最经常使用“肘方法”估算聚类数。 它意味着算法的多个循环执行,其中可选簇的数量增加,并且根据簇的数量计算出图上的聚类得分随后被推迟。

这个分数或指标在图表上延迟了多少? 为什么称其为法?

典型的图形如下所示:



通常,分数是针对k均值的目标函数的输入数据的度量,即,集群内距离与集群间距离之比的某种形式。

例如,该评分方法可立即在Scikit-learn 的k-means评分工具中使用。

但是再看一下这张图。 感觉有些奇怪。 我们拥有的4、5或6个群集的最佳数目是多少?

不清楚,不是吗?

轮廓是更好的指标


使用每个样本的平均群集内距离(a)和到最近群集的平均距离(b)计算轮廓系数。 轮廓计算为(b - a) / max(a, b) 。 让我解释一下: baa不属于的最近簇之间的距离。 您可以计算所有样本的平均轮廓值,并将其用作衡量簇数的指标。

这是解释此想法的视频:


假设我们使用Scikit-learn的make_blob函数生成了随机数据。 数据位于四个维度上,围绕五个聚类中心。 问题的实质是数据是在五个集群中心附近生成的。 但是,k-means算法对此一无所知。

聚类可以在图表上显示如下(成对符号):



然后,我们用k = 2到k = 12的值运行k均值算法,然后我们计算k均值的默认度量和每次运行的平均轮廓值,结果显示在两个相邻的图中。



区别是显而易见的。 轮廓的平均值增加到k = 5,然后对于较高的k急剧减小。 也就是说,我们在k = 5处得到一个明显的峰,这是原始数据集中生成的簇数。

与使用弯头法时的柔和曲线图相比,轮廓图具有峰值特征。 更容易形象化和合理化。

如果在数据生成过程中增加高斯噪声,则群集将更强烈地重叠。



在这种情况下,使用弯头法计算默认k均值会得出更加不确定的结果。 下面是弯头方法的图形,在该图中很难选择线实际弯曲的合适点。 是4、5、6还是7?



同时,轮廓图仍然在4个或5个聚类中心的区域显示一个峰值,这极大地便利了我们的生活。

如果查看彼此重叠的聚类,则会发现,尽管事实上我们在5个中心附近生成了数据,但由于分散性高,在结构上只能区分4个聚类。 该轮廓很容易揭示此行为,并显示4到5之间的最佳簇数。



正态分布混合模型的BIC得分


还有其他一些很好的指标可以确定集群的真实数量,例如贝叶斯信息准则 (BIC)。 但是只有在我们需要从k-means方法转向更广义的版本时才可以使用它们-正态分布的混合(高斯混合模型(GMM))。

GMM将数据云视为大量具有正态分布,具有独立平均值和方差的数据集的叠加。 然后,GMM使用一种算法来最大化期望值,以确定这些平均值和方差。



BIC进行正则化


在统计分析或使用线性回归时,您可能已经遇到过BIC。 BIC和AIC(赤池信息标准,赤池信息标准)在线性回归中用作选择变量过程的正则化技术。

类似的想法也适用于BIC。 从理论上讲,可以将极其复杂的聚类建模为具有正态分布的大量数据集的叠加。 要解决此问题,您可以应用无限数量的此类分布。
但这类似于在线性回归中增加模型的复杂度,当大量属性可用于匹配任何复杂度的数据时,只是失去了泛化的可能性,因为过于复杂的模型对应于噪声,而不是真实的模式。

BIC方法对许多正态分布进行精细化处理,并尝试使模型足够简单以描述给定的模式。

因此,您可以对大量群集中心运行GMM算法,并且BIC值将增加到某个点,然后随着精细度的增加而开始下降。


总结


这是本文的Jupyter笔记本 。 随意分叉和尝试。

Jet Infosystems的我们讨论了流行的肘部方法的几种替代方法,涉及在没有老师的情况下使用k-means算法进行学习时选择正确数量的簇的方法。

我们确保代替肘方法,最好使用“剪影”系数和BIC值(来自k均值的GMM扩展)从视觉上确定最佳簇数。

Source: https://habr.com/ru/post/zh-CN467745/


All Articles