Distribution des probabilités de clustering - méthodes et métriques?


13

J'ai quelques points de données, contenant chacun 5 vecteurs de résultats discrets agglomérés, les résultats de chaque vecteur générés par une distribution différente, (le type spécifique dont je ne suis pas sûr, ma meilleure supposition est Weibull, avec un paramètre de forme variant quelque part autour de l'exponentielle de puissance loi (1 à 0, grosso modo).)

Je cherche à utiliser un algorithme de clustering comme K-Means pour mettre chaque point de données en groupes en fonction des attributs de ses 5 distributions de composants. Je me demandais s'il existe des mesures de distance établies qui seraient élégantes à ces fins. J'ai eu trois idées jusqu'à présent, mais je ne suis pas un statisticien chevronné (plutôt un informaticien débutant en exploration de données), donc je ne sais pas à quel point je suis hors piste.

  1. Étant donné que je ne sais pas exactement à quel type de distributions je fais face, mon approche par force brute du problème consistait à découper chacune des distributions (j'en ai 5 par point) dans chacune de ses valeurs de données discrètes respectives (I pad chacun correspondant à la même longueur avec des zéros à la fin) et utilisez chacune de ces valeurs comme attribut distinct pour le point de données lui-même. J'ai essayé d'utiliser à la fois la distance de Manhattan et la distance euclidienne comme métriques basées sur ces attributs, pour le PDF et le CDF.

  2. Encore une fois, comme je ne sais pas quels types de distributions j'ai, je me suis dit que si je voulais mesurer la distance entre les distributions globales, je pourrais utiliser une sorte de test non paramétrique par paires entre les distributions, comme le test KS , pour déterminer la probabilité que les distributions données aient été générées par différents PDF. Je pensais que ma première option (ci-dessus) en utilisant la distance de Manhattan serait une sorte de limite supérieure sur ce que je pourrais obtenir en utilisant cette approche (puisque la statistique KS est la valeur absolue maximale de la différence des CDF, où la distance de Manhattan est la somme des valeurs absolues des différences dans les PDF). J'ai ensuite envisagé de combiner les différentes statistiques KS ou valeurs P au sein de chaque point de données, en utilisant probablement la distance euclidienne, mais en prenant simplement le maximum de toutes ces valeurs.

  3. Enfin, dans un effort pour utiliser le peu que je peux interpréter sur la forme des distributions, j'ai pensé que je pourrais essayer d'estimer les paramètres des distributions comme ajustés dans une courbe de Weibull. J'ai pu ensuite regrouper les distributions en fonction des différences dans les deux paramètres de la distribution de Weibull, lambda et k (échelle et forme), probablement normalisés en fonction de la variance de ces paramètres ou quelque chose du genre. C'est le seul cas où j'ai pensé que je pourrais avoir une idée de la façon de normaliser les paramètres.

Donc ma question est, quelle mesure / méthodes recommanderiez-vous pour le regroupement des distributions? Suis-je même sur la bonne voie avec l'un de ces éléments? K-Means est-il même un bon algorithme à utiliser?

Edit: Clarification des données.

Chaque point de données (chaque objet Objque je veux regrouper) contient littéralement 5 vectorsdes données. Je sais qu'il y a exactement 5 phases dans lesquelles ces objets peuvent être. Nous dirons (à des fins de simplification) que chaque vecteur est de length N.

Chacun de ces vecteurs (appeler vector i) est une distribution de probabilité avec nombre entier x-valuesde 1 à N, où chaque valeur y correspondant représente la probabilité de mesure value xdans phase ide l'objet Obj. N est alors la valeur x maximale que je m'attends à mesurer dans n'importe quelle phase de l'objet (ce n'est pas en fait un nombre fixe dans mon analyse).

Je détermine ces probabilités de la manière suivante:

  1. Je prends un seul Objet mis en phase ipour k trials, en prenant une mesure à chaque essai. Chaque mesure est un seul nombre entier. Je le fais pour chacune des 5 phases d'un seul objet, et à son tour pour chaque objet. Mes données de mesure brutes pour un seul objet peuvent ressembler à:

    Vecteur 1. [90, 42, 30, 9, 3, 4, 0, 1, 0, 0, 1]

    Vecteur 2. [150, 16, 5, 0, 1, 0, 0, 0, 0, 0, 0]

    ...

    Vecteur 5. [16, ... ..., 0]

  2. Ensuite, je normalise chacun des vecteurs par rapport au nombre total de mesures dans ce vecteur donné. Cela me donne une distribution de probabilité dans ce vecteur, où chaque valeur y correspondante représente la probabilité de mesurer value xen phase i.


1
Il n'est pas clair pour moi comment vos points de données peuvent "contenir" les distributions. Pouvez-vous donner un exemple? De plus, Weibull n'est pas une distribution de probabilité discrète, donc une clarification supplémentaire serait souhaitable.
mpiktas

@mpiktas: Chaque point de données représente un objet qui a 5 phases différentes. Le comportement de chaque phase de l'objet peut théoriquement être représenté par une fonction de distribution de probabilité continue, mais mes données ne contiennent que des échantillons discrets. La distribution de Weibull est probablement la fonction "théorique" derrière mes données, mais les données elles-mêmes ne sont que des mesures de densité sur des intervalles discrets.
machine désirant le

Réponses:


5

La géométrie de l'information (informatique) est un domaine qui traite exactement ce genre de problèmes. K-means a une extension appelée Bregman k-means qui utilise des divergences (dont l'euclidienne au carré des K-means standard est un cas particulier, mais aussi Kullback-Leibler). Une divergence donnée est associée à une distribution, par exemple au carré euclidien à gaussien.

Vous pouvez également voir le travail de Frank Nielsen , par exemple

Vous pouvez également jeter un coup d'œil sur les distances de Wasserstein (transport optimal) , mentionnées comme Earth Mover Distance dans un post précédent.


3

Dans leur article sur l' algorithme EP-Means , Henderson et al passent en revue les approches de ce problème et donnent les leurs. Ils considèrent:

  1. Regroupement de paramètres - déterminer les paramètres des distributions en fonction de la connaissance préalable de la distribution et le cluster en fonction de ces paramètres
    • notez qu'ici, vous pouvez réellement utiliser n'importe quelle fonction sur les données, pas seulement des estimations de paramètres, ce qui est utile si vous savez que vos données proviennent de différentes distributions
  2. Regroupement d'histogrammes - séparez les données en bacs et considérez chaque bac comme une dimension à utiliser dans le regroupement spatial
  3. EP-Means (leur approche) - définir les centroïdes distributionnels (mélange de toutes les distributions affectées à un cluster) et minimiser la somme des carrés de la distance du Earth Mover (quelque chose comme la valeur attendue de la distance entre les CDF) entre le centroïdes distributionnels et les distributions affectées à ce cluster.L1

Une autre technique que j'ai utilisée avec succès consiste à regrouper tous les points observés de toutes les distributions individuellement, puis à attribuer à la distribution i la probabilité douce correspondant à la proportion de ses points qui se retrouvent dans chaque cluster. À la baisse, il est beaucoup plus difficile de séparer les distributions de cette façon. À la hausse, il se régularise en quelque sorte automatiquement et suppose que toutes les distributions sont les mêmes. Cependant, je ne l'utiliserais que lorsque cette propriété de régularisation est souhaitée.


1
Bienvenue sur notre site! Notez que vous pouvez utiliser le balisage Latex ici en mettant du texte à l'intérieur des signes dollar, par exemple, $i$produit , ou produit , ce qui peut faciliter votre expressionl 2i$l_2$l2
Silverfish

1

Vous devez procéder en deux étapes. (1) Réduction des données et (2) Clustering.

Pour l'étape (1), vous devez inspecter soigneusement vos données et déterminer une distribution de probabilité raisonnable pour vos données. Vous semblez avoir déjà pensé à cette étape. L'étape suivante consiste à estimer les paramètres de ces distributions. Vous pouvez adapter un modèle séparément pour chaque unité à regrouper, ou il peut être approprié d'utiliser un modèle plus sophistiqué tel qu'un modèle mixte linéaire généralisé.

Pour l'étape (2), vous pouvez ensuite regrouper en fonction de ces estimations de paramètres. À ce stade, vous devriez avoir un petit nombre d'estimations de paramètres par unité. Comme décrit dans la réponse à cet article , vous pouvez ensuite regrouper ces estimations de paramètres.

Cette réponse est nécessairement quelque peu vague - il n'y a pas de solution "en conserve" ici, et beaucoup d'informations statistiques sont nécessaires pour chaque étape pour sélectionner parmi un nombre presque infini de méthodes qui peuvent être pertinentes, en fonction de votre problème unique. L'énoncé de votre question montre que vous vous êtes autodidacte une bonne partie des connaissances statistiques, ce qui est louable, mais vous avez encore quelques malentendus fondamentaux des concepts statistiques de base, tels que la distinction entre une distribution de probabilité et des observations à partir d'une distribution de probabilité . Envisagez de suivre / auditer un ou deux cours de statistiques mathématiques.

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.