2009-11-18 16 views
2

Je fais une recherche qui implique une «classification non supervisée». Fondamentalement, j'ai un trainSet et je veux regrouper les données dans X nombre de classes de manière non supervisée. L'idée est similaire à ce que fait k-means.Méthodes de classification non supervisées disponibles

Disons que

Etape 1) FeatureSet est un [1057x10] et je veux matrice les regrouper en 88 groupes.

Etape 2) Utiliser des classes précédemment calculé pour calculer comment le TestData est classé

Question -Est-il possible de le faire avec ou SVM N-N? Rien d'autre ? -Autres recommandations?

+0

Avez-vous essayé d'utiliser k-means? Cela semble bien adapté au problème. – Stompchicken

+0

Salut Idid en fait. Mais je dois faire la même chose avec une méthode différente pour comparer les résultats. Des recommandations? – tguclu

+0

SVM est supervisé, pas non supervisé, donc ce n'est pas correct pour ce que vous voulez – Davide

Répondre

2

Il existe de nombreux algorithmes de clustering, et le web regorge d'informations sur eux et d'exemples d'implémentations. Un bon point de départ est l'entrée Wikipedia sur l'analyse de cluster Cluster_analysis. Comme vous avez une implémentation fonctionnelle de k-means, vous pouvez essayer l'une des nombreuses variantes pour voir si elles donnent de meilleurs résultats (k-means ++ peut-être, vu que vous avez mentionné SVM). Si vous voulez une approche complètement différente, jetez un oeil à Kohonen Maps - également appelé Auto Organizing Feature Maps. Si cela semble trop délicat, un simple regroupement hiérarchique serait facile à mettre en œuvre (trouver les deux éléments les plus proches, combiner, rincer et répéter).

1

Cela ressemble à un problème de clustering classique. Ni les SVM ni les réseaux de neurones ne seront capables de résoudre directement ce problème. Vous pouvez utiliser l'une ou l'autre approche pour dimensionality reduction, par exemple pour intégrer vos données en 10 dimensions dans un espace bidimensionnel, mais ils ne mettront pas les données dans des clusters pour vous.

Il existe un grand nombre d'algorithmes de clustering en plus de k-means. Si vous voulez une approche contrastée, vous pouvez essayer un algorithme agglomerative clustering. Je ne sais pas quel type d'environnement informatique vous utilisez, mais j'aime beaucoup R et .