kmean 聚类:变量选择
kmean clustering: variable selection
我正在应用 kmean 算法对我的客户群进行聚类。我在概念上挣扎于要包含在模型中的维度(变量)的选择过程。我想知道是否有建立方法来比较具有不同变量的模型。特别是,我正在考虑使用常见的 SSwithin / SSbetween 比率,但我不确定是否可以将其应用于比较具有不同维数的模型......
有什么建议>?
非常感谢。
经典方法是顺序选择算法,例如 "sequential floating forward selection" (SFFS) 或“顺序浮动向后消除 (SFBS)”。这些是启发式方法,您可以根据自己的表现一次消除(或添加)一个特征公制,例如均方误差 (MSE)。此外,如果您愿意,也可以使用遗传算法。
这里有一篇简单的论文总结了这些想法:
Feature Selection from Huge Feature Sets
还有一个可能有用的更高级的:Unsupervised Feature Selection for the k-means Clustering Problem
编辑:
当我再次考虑时,我最初想到了这个问题 "how do I select the k (a fixed number) best features (where k < d)," 例如,为了计算效率或可视化目的。现在,我认为你问的更像是 "What is the feature subset that performs best overall?" 剪影指数(集群内点的相似性)可能会有用,但我真的不认为你可以通过特征选择真正提高性能,除非你有真实标签。
我不得不承认,我对有监督的方法比无监督的方法有更多的经验。因此,在处理 "curse of dimensionality." 我经常使用降维来压缩数据时,我通常更喜欢正则化而不是特征 selection/dimensionality 缩减。
我正在应用 kmean 算法对我的客户群进行聚类。我在概念上挣扎于要包含在模型中的维度(变量)的选择过程。我想知道是否有建立方法来比较具有不同变量的模型。特别是,我正在考虑使用常见的 SSwithin / SSbetween 比率,但我不确定是否可以将其应用于比较具有不同维数的模型...... 有什么建议>? 非常感谢。
经典方法是顺序选择算法,例如 "sequential floating forward selection" (SFFS) 或“顺序浮动向后消除 (SFBS)”。这些是启发式方法,您可以根据自己的表现一次消除(或添加)一个特征公制,例如均方误差 (MSE)。此外,如果您愿意,也可以使用遗传算法。
这里有一篇简单的论文总结了这些想法: Feature Selection from Huge Feature Sets
还有一个可能有用的更高级的:Unsupervised Feature Selection for the k-means Clustering Problem
编辑: 当我再次考虑时,我最初想到了这个问题 "how do I select the k (a fixed number) best features (where k < d)," 例如,为了计算效率或可视化目的。现在,我认为你问的更像是 "What is the feature subset that performs best overall?" 剪影指数(集群内点的相似性)可能会有用,但我真的不认为你可以通过特征选择真正提高性能,除非你有真实标签。
我不得不承认,我对有监督的方法比无监督的方法有更多的经验。因此,在处理 "curse of dimensionality." 我经常使用降维来压缩数据时,我通常更喜欢正则化而不是特征 selection/dimensionality 缩减。