Sklearn k-means聚类(加权),确定每个特征的最佳样本权重?

Posted

技术标签:

【中文标题】Sklearn k-means聚类(加权),确定每个特征的最佳样本权重?【英文标题】:Sklearn k-means clustering (weighted), determining optimum sample weight for each feature? 【发布时间】:2021-04-11 12:34:30 【问题描述】:

sklearn中的K-means聚类,聚类的数量是预先知道的(它是2)。 有多种功能。特征值最初没有分配任何权重,即它们被同等加权。然而,任务是为每个特征分配自定义权重,以获得最佳的聚类分离。 如何确定每个特征的最佳样本权重 (sample_weight),以便尽可能最好地分离两个集群? 如果这对于 k-means 或 sklearn 是不可能的,我对任何替代的聚类解决方案都感兴趣,关键是我需要自动确定多元特征的适当权重的方法,以最大化聚类分离。

【问题讨论】:

同时,我已经实现了以下操作:分别对每个组件进行聚类,然后计算轮廓分数、calinski harabaszscore、dunn score 和 inverse davies bouldin score。然后将这些分数缩放到相同的数量级,然后将它们 PCA 缩放为 1 个特征。这为每个组件生成了权重。它似乎给出了合理的结果。我想更好的方法是全因子实验 (DOE),但似乎这种简单的方法也能产生令人满意的结果。 【参考方案1】:

同时,我实现了以下操作:分别对每个组件进行聚类,然后分别计算每个组件(特征)的轮廓分数、calinski harabasz 分数、dunn 分数和逆 davies bouldin 分数。然后将这些分数缩放到相同的大小,然后将它们 PCA 缩放为 1 个特征。这为每个组件生成了权重。这种方法似乎产生了合理的结果。我认为更好的方法是全因子实验 (DOE),但似乎这种简单的方法也能产生令人满意的结果。

【讨论】:

以上是关于Sklearn k-means聚类(加权),确定每个特征的最佳样本权重?的主要内容,如果未能解决你的问题,请参考以下文章

使用sklearn估计器构建K-Means聚类模型

sklearn中的加权聚类

使用 sklearn_pandas 查找 k-means 聚类最重要的词

对 TF-IDF 特征向量中的特定特征进行加权,用于 k-means 聚类和余弦相似度

如何使用 sklearn k-means 聚类根据彼此的相关性对 * 特征 * 进行聚类

Sklearn入门之k-means聚类算法