Estimation des fonctionnalités les plus importantes d'une partition de cluster k-means

19

Existe-t-il un moyen de déterminer quelles caractéristiques / variables de l'ensemble de données sont les plus importantes / dominantes dans une solution de cluster k-means?

user1624577
la source
1
Comment définissez-vous «important / dominant»? Voulez-vous dire le plus utile pour faire la distinction entre les clusters?
Franck Dernoncourt
3
Oui, le plus utile est ce que je voulais dire. Je pense qu'une partie de mon problème à comprendre cela est de savoir comment le formuler.
user1624577
Merci pour la clarification. Un terme usuel pour désigner ce problème dans l'apprentissage automatique est la sélection des fonctionnalités .
Franck Dernoncourt

Réponses:

8

Une façon de quantifier l'utilité de chaque caractéristique (= variable = dimension), tirée du livre Burns, Robert P. et Richard Burns. Méthodes de recherche commerciale et statistiques utilisant SPSS. Sage, 2008. ( miroir ), l'utilité étant définie par le pouvoir discriminant des caractéristiques pour distinguer les grappes.

Nous examinons généralement les moyennes de chaque cluster sur chaque dimension à l'aide de l'ANOVA pour évaluer à quel point nos clusters sont distincts. Idéalement, nous obtiendrions des moyennes sensiblement différentes pour la plupart, sinon toutes les dimensions, utilisées dans l'analyse. L'amplitude des valeurs F effectuées sur chaque dimension est une indication de la façon dont la dimension respective discrimine entre les clusters.

Une autre façon serait de supprimer une fonctionnalité spécifique et de voir comment cela affecte les indices de qualité internes . Contrairement à la première solution, vous devrez refaire le clustering pour chaque fonctionnalité (ou ensemble de fonctionnalités) que vous souhaitez analyser.

Pour info:

Franck Dernoncourt
la source
4
Il est très important d'ajouter que dans ce contexte, il ne faut pas prendre ces valeurs F (ou p) comme indicateurs d'importance statistique (c'est-à-dire par rapport à la population), mais plutôt simplement comme indicateurs de l'ampleur des différences.
ttnphns
3

Je peux penser à deux autres possibilités qui se concentrent davantage sur les variables importantes pour quels clusters.

  1. Classification multi-classes. Considérez les objets qui appartiennent aux membres du cluster x de la même classe (par exemple, la classe 1) et les objets qui appartiennent aux autres membres du cluster d'une deuxième classe (par exemple, la classe 2). Former un classificateur pour prédire l'appartenance à une classe (par exemple, classe 1 vs classe 2). Les coefficients variables du classifieur peuvent servir à estimer l'importance de chaque variable dans le regroupement d'objets pour regrouper x . Répétez cette approche pour tous les autres clusters.

  2. Similitude de variable intra-cluster. Pour chaque variable, calculez la similitude moyenne de chaque objet avec son centre de gravité. Une variable qui a une forte similitude entre un centroïde et ses objets est probablement plus importante pour le processus de clustering qu'une variable qui a une faible similitude. Bien sûr, la magnitude de similitude est relative, mais maintenant les variables peuvent être classées selon le degré auquel elles aident à regrouper les objets dans chaque cluster.

Gyan Veda
la source
0

Voici une méthode très simple. Notez que la distance euclidienne entre deux centres de cluster est une somme de la différence carrée entre les caractéristiques individuelles. Nous pouvons alors simplement utiliser la différence carrée comme poids pour chaque caractéristique.

Distance euclidienne

ZillGate
la source