k-signifie vs k-médiane?


14

Je sais qu'il y a un algorithme de clustering k-means et une k-médiane. L'un qui utilise la moyenne comme centre de la grappe et l'autre utilise la médiane. Ma question est: quand / où utiliser quoi?


Vous devrez définir des médianes (et peut-être les calculer) si vous avez plus d'une dimension; si vous prenez simplement la médiane de chaque valeur, vous perdez les propriétés de rotation. Une autre possibilité est k -medoids
Henry

Réponses:


14

k-means minimise la variance intra-cluster, ce qui équivaut à des distances euclidiennes au carré.

En général, la moyenne arithmétique fait cela. Il n'optimise pas les distances, mais les écarts au carré de la moyenne.

Les médianes k minimisent les écarts absolus, ce qui équivaut à la distance de Manhattan.

En général, la médiane par axe devrait le faire. C'est un bon estimateur de la moyenne, si vous voulez minimiser la somme des écarts absolus (c'est-à-dire sum_i abs (x_i-y_i)), au lieu des carrés.

Ce n'est pas une question d'exactitude. C'est une question de justesse. ;-)

Voici donc votre arbre de décision:

  • Si votre distance est la distance euclidienne au carré , utilisez k-means
  • Si votre distance est métrique Taxicab , utilisez les k-médianes
  • Si vous avez une autre distance , utilisez k-medoids

Quelques exceptions: pour autant que je sache, maximiser la similitude du cosinus est lié à la minimisation de la distance euclidienne au carré sur les données normalisées L2. Donc, si vos données sont normalisées L2; et vous l2-normalisez vos moyennes à chaque itération, vous pouvez alors réutiliser k-means.


Je conteste quelque peu l'affirmation selon laquelle la médiane minimise la distance de Manhattan, car il n'existe pas de concept unique convenu d'une médiane pour les données multidimensionnelles. Ce n'est pas faux, mais je trouve que c'est une déclaration trompeuse à faire dans un contexte multidimensionnel. Il existe de multiples généralisations multidimensionnelles des médianes, dont beaucoup n'ont aucun lien avec la minimisation des distances à Manhattan.
Tim Seguine

1
Je change cela en médiane par axe. J'espère que vous êtes plus heureux maintenant.
A QUIT - Anony-Mousse

2

Si vous voulez faire une analyse sans tenir compte de l'effet possible des valeurs extrêmes, utilisez k moyennes mais si vous voulez être plus précis, utilisez k médiane


5
Pouvez-vous soutenir et / ou expliquer ces affirmations de quelque manière que ce soit?
jona

Ouais pouvez-vous nous en dire plus s'il vous plait? avec des exemples?
Jack Twain

2
Je pense que c'est parce que "Median" peut tolérer les valeurs aberrantes mais "Mean" en est totalement affecté. Par exemple: si nous avons les points de données {1,2,3,5,78}, il est évident que 78 est aberrant. La médiane de ces données est de 3 et la moyenne est de 17,8. La médiane est donc la meilleure façon de résumer ces données.
Fadwa
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.