Algorithmes De Clustering Python

4 réponses

j'en ai trouvé un qui n'exige aucune information/supposition a priori et qui fait très bien ce que je lui demande de faire. Il est appelé Changement Moyen et est situé dans le SciKit-Learn. Il est aussi relativement rapide (comparé à d'autres algorithmes comme la Propagation D'affinité).

voici un exemple de ce qu'il donne:

MeanShiftResults

je tiens aussi à souligner que, dans la documentation indique qu'il ne peut pas l'échelle.

7
répondu astromax 2013-11-14 19:09:11
  • lors de L'utilisation de DBSCAN, il peut être utile de mettre à l'échelle/normaliser les données ou les distances à l'avance, de sorte que l'estimation d'epsilon sera relative.

  • il y a une mise en oeuvre de DBSCAN - je pense que c'est celle Anony-Mousse, quelque part, désigné comme "flottant autour de" -, qui est avec une fonction d'estimateur epsilon. Il fonctionne, tant que son non nourri avec de grands ensembles de données.

  • Il y a plusieurs versions incomplètes de Optique à github. Peut-être vous pouvez en trouver un pour s'adapter à votre objectif. Encore essayer de comprendre moi-même, quel effet minPts a, en utilisant un et la même méthode d'extraction. enter image description here

2
répondu embert 2013-12-05 16:22:04

vous pouvez essayer un arbre de enjambement minimum (algorithme de zahn) et ensuite enlever le bord le plus long similaire aux formes alpha. Je l'ai utilisé avec une triangulation de delaunay et une partie concave de la coque:http://www.phpdevpad.de/geofence. Vous pouvez également essayer une classification hiérarchique par exemple clusterfck.

1
répondu Bytemain 2013-11-13 15:29:00

votre graphique indique que vous avez choisi le minPts paramètre trop petit.

regardez L'optique, qui n'a plus besoin du paramètre epsilon de DBSCAN.

1
répondu Anony-Mousse 2013-11-13 17:53:15