Question

Je suis en train de regrouper des images en fonction des angles entre les parties du corps.

Les caractéristiques extraites à partir de chaque image sont les suivants:

angle1 : torso - torso
angle2 : torso - upper left arm
..
angle10: torso - lower right foot

Par conséquent, les données d'entrée est une matrice de taille 1057x10, où 1057 représente le nombre d'images, et 10 représente les angles des parties du corps avec le torse. De même, un testSet est 821x10 matrice.

Je veux toutes les lignes de données d'entrée à 88 grappes avec regroupées. Ensuite, je vais utiliser ces groupes pour trouver des grappes ne TestData tomber dans?

Dans un travail précédent, je K-means qui est très simple . Nous venons de demander K-Means pour regrouper les données en 88 grappes. Et mettre en œuvre une autre méthode qui calcule la distance entre chaque ligne de données de test et les centres de chaque groupe, puis choisissez les plus petites valeurs. Ceci est le groupe de la rangée de données d'entrée correspondant.

J'ai deux questions:

  1. Est-il possible de le faire en utilisant SOM dans Matlab? Pour autant que je sache ce sont clustering visuel SOM. Mais je dois connaître la classe réelle de chaque groupe afin que je puisse plus tard étiqueter mes données de test en calculant la grappe qui il appartient.

  2. Avez-vous une meilleure solution?

Était-ce utile?

La solution

auto-organisation Carte (SOM) est une méthode de classification considérée comme une variation non surveillée du . Il utilise L'apprentissage des techniques concurrentielles pour former le réseau (nœuds concurrence entre eux pour afficher la plus forte activation à une source d'information)

www.lohninger.com/helpcsuite/kohonen_network _-_ background_information.htm

On peut penser à SOM comme si elle consiste en un réseau de noeuds interconnectés (de forme carrée, hexagonale, ..), où chaque noeud est un vecteur N-dim de poids (même taille de dimension que les points de données que nous voulons cluster).

L'idée est simple; étant donné un vecteur d'entrée à SOM, on trouve le nœud placard , puis mettre à jour ses poids et les poids des noeuds voisins afin qu'ils approchent celle du vecteur d'entrée (d'où le nom d'auto-organisation ). Ce processus est répété pour toutes les données d'entrée.

plotsompos

Les amas formés sont implicitement défini par la façon dont les noeuds s'organisent et forment un groupe de noeuds avec des poids similaires. Ils peuvent être facilement visibles visuellement.

plotsomnd

SOM sont d'une manière similaire à la algorithme K-Means mais différent en ce nous ne leur imposons pas un nombre fixe de grappes, au lieu que nous précisons le nombre et la forme des noeuds dans la grille que nous voulons adapter à nos données.

En fait quand vous avez un nœud SOM formé, et que vous voulez classer un nouveau vecteur d'entrée de test, vous suffit d'attribuer à la plus proche (distance comme mesure de similarité) sur la grille ( Meilleure unité Matching BMU) et donner comme prédiction de la classe [majorité] des vecteurs appartenant à ce noeud de BMU.

plotsomhits

Pour Matlab, vous pouvez trouver un certain nombre de boîtes à outils qui mettent en œuvre SOM:

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top