Je pense que le titre de cette question dit tout.
Je pense que le titre de cette question dit tout.
Réponses:
Cela aide à réfléchir à ce qu'est la malédiction de la dimensionnalité . Il y a plusieurs très bonnes discussions sur CV qui valent la peine d'être lues. Voici un point de départ: Expliquez «La malédiction de la dimensionnalité» à un enfant .
Je note que vous êtes intéressé par la façon dont cela s'applique au clustering moyens. Il convient de noter que k -means est une stratégie de recherche pour minimiser (uniquement) la distance euclidienne au carré. À la lumière de cela, il convient de réfléchir à la façon dont la distance euclidienne est liée à la malédiction de la dimensionnalité (voir: Pourquoi la distance euclidienne n'est-elle pas une bonne métrique dans les dimensions élevées? ).
La réponse courte de ces fils est que le volume (taille) de l'espace augmente à un rythme incroyable par rapport au nombre de dimensions. Même dimensions (ce qui ne me semble pas très «très dimensionnel») peuvent provoquer la malédiction. Si vos données étaient réparties uniformément dans cet espace, tous les objets deviennent approximativement équidistants les uns des autres. Cependant, comme le note @ Anony-Mousse dans sa réponse à cette question, ce phénomène dépend de la façon dont les données sont réparties dans l'espace; s'ils ne sont pas uniformes, vous n'avez pas nécessairement ce problème. Cela conduit à se demander si les données de haute dimension uniformément réparties sont très courantes (voir: la «malédiction de la dimensionnalité» existe-t-elle vraiment dans les données réelles? ).
Je dirais que ce qui importe n'est pas nécessairement le nombre de variables (la dimensionnalité littérale de vos données), mais la dimensionnalité effective de vos données. Dans l'hypothèse où dimensions sont «trop élevées» pour les k- moyennes, la stratégie la plus simple serait de compter le nombre de fonctionnalités dont vous disposez. Mais si vous vouliez penser en termes de dimensionnalité effective, vous pourriez effectuer une analyse des composants principaux (ACP) et regarder comment les valeurs propres chutent. Il est assez courant que la plupart des variations existent dans quelques dimensions (qui traversent généralement les dimensions d'origine de votre ensemble de données). Cela impliquerait que vous êtes moins susceptible d'avoir un problème avec les k- moyens dans le sens où votre dimensionnalité effective est en réalité beaucoup plus petite.
Une approche plus impliquée consisterait à examiner la distribution des distances par paires dans votre ensemble de données le long des lignes suggérées par @ hxd1011 dans sa réponse . L'examen de distributions marginales simples vous donnera une idée de l'uniformité possible. Si vous normalisez toutes les variables pour qu'elles se trouvent dans l'intervalle , les distances par paires doivent se trouver dans l'intervalle [ 0 , √. Les distances très concentrées causeront des problèmes; d'un autre côté, une distribution multimodale peut être optimiste (vous pouvez voir un exemple dans ma réponse ici:Comment utiliser à la fois les variables binaires et continues dans le clustering?).
Cependant, la question de savoir si les moyens fonctionneront est toujours une question compliquée. En supposant qu'il existe des regroupements latents significatifs dans vos données, ils n'existent pas nécessairement dans toutes vos dimensions ou dans les dimensions construites qui maximisent la variation (c'est-à-dire les principales composantes). Les grappes pourraient être dans les dimensions à plus faible variation (voir: Exemples d'ACP où les PC à faible variance sont «utiles» ). Autrement dit, vous pouvez avoir des clusters avec des points qui sont proches à l'intérieur et bien séparés entre sur seulement quelques-unes de vos dimensions ou sur des PC à faible variation, mais qui ne sont pas similaires à distance sur des PC à forte variation, ce qui entraînerait des k- moyennes d'ignorer les clusters que vous recherchez et de choisir des faux clusters à la place (quelques exemples peuvent être vus ici:Comment comprendre les inconvénients des K-means ).
Ma réponse n'est pas limitée aux moyennes de K, mais vérifiez si nous avons une malédiction de dimensionnalité pour toutes les méthodes basées sur la distance. K-means est basé sur une mesure de distance (par exemple, la distance euclidienne)
Si nous avons le problème de la malédiction de la dimensionnalité, ce que vous verrez, c'est que ces valeurs sont très proches les unes des autres. Cela semble très contre-intuitif, car cela signifie que chacun est proche ou éloigné de chacun et que la mesure de la distance est fondamentalement inutile.
, qui vient de∫ 1 x i = 0runif
rnorm
Voici la simulation pour une dimension de 1 à 500, les caractéristiques sont une distribution uniforme de 0 à 1.
plot(0, type="n",xlim=c(0,0.5),ylim=c(0,50))
abline(v=1/6,lty=2,col=2)
grid()
n_data=1e3
for (p in c(1:5,10,15,20,25,50,100,250,500)){
x=matrix(runif(n_data*p),ncol=p)
all_dist=as.vector(dist(x))^2/p
lines(density(all_dist))
}