我有一个具有各种特征的复杂数据集,其中一些不是正态分布的(例如非常偏左)。在应用 k-means 聚类以获得更合理的聚类之前,是否通常建议使这些变量呈正态分布(高斯分布)?
如果不是,为什么?
我有一个具有各种特征的复杂数据集,其中一些不是正态分布的(例如非常偏左)。在应用 k-means 聚类以获得更合理的聚类之前,是否通常建议使这些变量呈正态分布(高斯分布)?
如果不是,为什么?
k-means 算法最小化以下目标函数
在哪里是与观察相关的集群的平均值和表示观察坐标. 请注意,这是对方差的一种概括。
最后的总和可以表示为每个集群相对于每个变量的方差的估计。
因此,将变量标准化以具有相等的方差很重要,因为这意味着它们彼此之间的权重相等。如果您没有理由认为一个变量比其他变量更重要,那么将变量加权相同是合理的。
请注意,这与变量是否属于某些已知分布(例如正态分布)无关。
进一步注意,最流行的 k-means 算法(Lloyd 算法)总是采取降低方差的步骤。因此,您将始终在有限数量的步骤中获得局部最优值。始终建议多次运行该算法以确保您接近全局最优值。
您的问题的完整答案取决于“合理”一词。鉴于我已经介绍了您将得到答案以及答案可能如何取决于变量,您可能会问的一个问题是该答案是否稳定。
使用高斯分布变量的解决方案可能确实更稳定,因为方差对异常值很敏感。因此,异常值肯定会推动您得出的解决方案。例如,考虑一个异常值:如果它足够大,它可能会强制为其分配一个中心,以减少其对目标函数的贡献。
如果您要提供有关这些特征中的噪声大小或过度分散的信息,将会有所帮助。这可以像以表格格式提供均值、中位数和标准偏差一样简单。
我的经验是,与许多传统方法一样,当噪声幅度不大时,K-means 对于违反正态性的情况相当稳健。从这个意义上说,K-means 与误差呈正态分布(而不是输入)的 OLS 回归假设有很大不同。K-means 没有类似的假设。事实上,在大多数情况下, K-means 的假设是经验法则、惯例和启发式方法,它们因学科而异,并且随着分析师做出的高度主观决策而变化。对你来说,这意味着不存在 K-means 的“规则食谱”,它规定了你,分析师,在推动解决方案时应该或不应该做什么。这表明了额外的 K-means 限制:
不建议与纵向信息(时间序列)一起使用
解决方案对特征之间的依赖性很敏感
必须预先指定集群的数量,并且给定该数量,K-means 总能找到解决方案。此解决方案可能准确表示数据的行为,也可能不准确
解总是围绕簇质心呈球形。如果数据中的“真实”簇的形状不同,K-means 将不会捕获除球形以外的图案
它不会返回具有非连续特征或连续和离散信息混合的合理结果
如果用于形成集群的种子是从随机数据抽取中自动创建的,则特征中的极值会导致结果中的稀疏性和非代表性失真
正如 aksakal 所指出的,k-medians 是您提出的问题的一种解决方法。假设该例程随时可用,则应将其结果与使用 k-means 的解决方案进行比较。
Wrt 经验法则,营销中的一个常见处方是首先,将特征标准化为平均值 0 和标准偏差 1,然后,第二,使用 PCA(或类似方法)降低数据的维度。在某种程度上,这有助于减轻功能依赖性。这也可以平滑由于使用完整或未简化的特征矩阵而导致的“块状”。最后,为了您的目的,降维还可以帮助减弱极端或过度分散信息的影响。我发现这种预聚类、降维方法很有帮助,即它们在大多数情况下起作用。
但是,在大量噪声的情况下该怎么办?为了更深入地理解所引发的问题,Xie 和 Xing 的论文Cauchy Principal Component Analysis(此处未加限制... http://www.cs.cmu.edu/~pengtaox/papers/cpca.pdf)提出了一种类型学数据矩阵作为稀疏性和噪声的函数。尽管它专注于 PCA,但他们的讨论内容丰富,因为它可以推广到 K-means。
如果 Xie 和 Xing 的讨论过于技术性,还有很多更简单的变换可以应用于极端特征。对于正值特征,自然对数变换压缩重尾。其他可能性包括 Box-Cox 变换、反双曲正弦、Lambert 的W等。所有这些的公式都很容易在网上获得。
最重要的是,您的问题没有“一刀切”的答案。