聚类
带有集成CLI的聚类和模糊群集库。
安装
$ python3 setup.py install
运行setup.py脚本将下载所有必需的软件包,并在您的~/.local/bin/中安装以下命令,以进行本地安装,或者在/usr/lib/pythonX.X目录中:
- CLUS:基于分区的聚类的主要命令。
- DCLU:基于密度的聚类。
- HCLUS:分层聚类。
- ECLU:评估聚类。实施通过比较两个分区来评估聚类结果的方式有所不同。
用法
# Simple clustering with 500-components kmeans algorithm
$ clus dataset.csv kmeans -k 500 --max-iter 100 --eps 0.001 --header --save-clus
# Clustering with a weighted euclidean distance + matplotlib visualisation
$ clus dataset.npy kmeans --pairwise-distance weighted_euclidean --weights 1 0 1 1 --visualise
# Clustering from a .npz file with a 3D matplotlib visualisation
$ clus dataset.npz fcm --array-name clusters_center --visualise-3d
# Clustering with automatic dataset filetype guessing and with a normalization beforehand
$ clus dataset kmeans --file-type guess --normalization rescaling --save-clus
# DBSCAN clustering with a custom clustering results saving path
$ dclus dataset.csv dbscan --save-clus --seed 1 --format-filename-dest-results dbased_{clustering_algorithm}_{dataset}_{seed}托多
- 完整的范式重写:
- 从CLI支撑转移到更干净的Python类界面
- 设计易于使用和抽象的基础聚类类
- 从河中汲取灵感
- “新”算法家庭:流媒体/一通算法。
- 倒入Les FCM,Pluseurs副本DeDonnéesSont Faites Plus Fois。优化,voir:https://pythonhosted.org/scikit-fuzzy/_modules/skfuzzy/cluster/_cmeans.html#cmeans
- 集合lesopérationsd de Clustering Inploy(Ne pas depliquer lesdonnées)
- méthodesde crustering - inmandemer:
- https://github.com/scikit-learn/scikit-learn/blob/7b136e9/sklearn/cluster/k_means_.py#l1318
- 光学
- 平均换档
- vérifierle hard_c_medoids
- 实施者UNE检测自动机si le flag -n'estpassé。 voir:https://stackoverflow.com/questions/32312309/check-if-header-exists-with-python-pandas
- permettre au hc de prendreplamètrespol fcluster值。 Si Plusirurs,贴花CES参数上的Alors。 ajouter选项fcluster_value dans le filename。
- LesOpérationsSur Medioids sont lentes。 S'Inspirer D'Autres代码倒入Les Ameliorer:
- https://github.com/vitordeatoreao/AmpRoj/blob/8444842A532524D514E7534DA65C7A64AB7AB7EF57/AMPROJ/AMPROJ/AMPROJ/amproj/distance/kmedoids.pys.pys.pys.pys.py
- https://github.com/agartland/utils/blob/e200d7e41039ca0053bd817c1d1857aab33bd503/kmedoids.py#l172
- https://github.com/brain-mapper/brainmapperv2/blob/63075BDCA2428197FC18A1CF6C7403C2764E0664E0664/OURLIB/CLUSTERING.PY#L293
- du decorateur“ memoryError_fallback”,d'un parametre de taille de块,puis utiliser sklearn.metrics.pairwise_distances_chunked
- Au lieu de fixer un nom de fichier par défaut, mettre tous les paramètres par défaut à None (et fixer en dur leurs valeus par défaut dans la doc, ou formater selon un fichier), et ajouter les parametres NON None passés par l'utilisateur au nom de fichier selon un ordre prédéfini. l'lituisateur peut aussitrèsBienPasser son nom de fichierprédéfini。
- Implémenterun algo d'Apperimment(De Comparaison)D'Ection。 peutêtre -tre fuliser https://fr.wikipedia.org/wiki/algorithme_hongrois
- Revoir lesséparationsen sous-commandes。 peutêtrefaire:“ clus评估“ ou” clus可视化”。
- s'inspirer de l'Api d'Autres聚集软糖:https://elki-project.github.io ** https://wwwwwww.cs.waikato.ac.ac.ac.ac.nz/ml/weka ** https:/
- Implémenterla la ecture de fichiers:** memmap:https://docs.scipy.org/doc/numpy/referend/referency/generated/numpy.memmap.html
- S'inspirer des codes Suivants:** https://github.com/overshiki/kmeans_pytorch/blob/master/master/kmeans.pys.pys.pys.pys.py
- Etudier Mesures:** https://scikit-learn.org/stable/modules/generated/sklearn.metrics.adjusted_mutual_info_score.html ** https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.multivariate_normal.html **
- Trouver Meilleure Coupe HC:** https://www.sciencedirect.com/science/article/pii/s0031320310001974
- Etudier D'AutresMéthodesde正常化,Leurs Effets et Leurs ** https://en.wikipedia.org/wiki/wiki/normalization_(Statistics)** https:///en.wikipedia.org/wikipedia.org/wiki/wiki/feature_scaling ** ** https://sebastianraschka.com/articles/2014_about_feature_scaling.html
- 重构De L'Architecture DU代码:** clus.Methods,qui toutes lesméthodesdepuis ce模块。 ** clus.preprocessing,qui of qui les les res de strormanistization et depondération** clus.visalisation ** clus.evaluation.evaluation ** clus.proading,tontes lesméthodesdesdonnéesdonnées
- 更改者lafaçon'tdot lesparamètresdu clusteringsontcockéset nond lesrésultatssontsauvegardés。 ** virer tous les paramsliésau nom de fichier。 ne garder que“ file-name-prefix”,et ajouter un uuid comme nom de fichier。 ** Stocker tous lesparamètresde clustering dans le dictionNairerésultats。 CLEF“参数”。 **维护式quej'écrisça,je me cond compte que que que sacred peut eTre eTre perpurpropriépourla gestion desrésultats。
- Virer Silhouette,Ne Garder Que Silhouette-Samples,Puis Retourner La Moyenne(Qui superiveàSilhouette-Score),lapelle silhouette_mean等,等等。
- eTudier l'lustrization de:https://scikit-learn.org/stable/modules/generated/sklearn.metrics.pairwise_distances_chunked.html
- RemettrelesRéférencesdans la doc de chaque模块。 Les退休人员desRéférencesci-dessous。
- 提议者une ins ins ins ins in k-means lutilisant cuda:http://alexminnaar.com/2019/03/05/cuda-kmeans.html
- ajouter param uuid:ajouter un param可能,{uuid4},{uuid6},等等dan le futur futur nom de fichier peut eTre?在Peut L'Initialiser avec le temps,Sinon Faudra Fairegaffeàl'l'1nationationavec grainealéatoire,Sinon c'est c'est possiblkz que je retournelesmêmesmêmesuuiidàChaquefois上。
- ajouter dess retures d'essuration:papier pol pour mesures d'Ever聚类:https://amstat.tandfonline.com/doi/abs/10.10.1080/01621459.1971.10482356
- eTudier d'uarres正常化和leurs effets:https://scikit-learn.org/stable/auto_examples/preprocessing/plot_all_scaling.html#results
参考
- [1] R. Krishnapuram; A. Joshi; O. Nasraoui; L. Yi,低复杂性模糊关系聚类算法,用于网络采矿,IEEE模糊系统交易(卷:9,第4期,2001年8月4日),P595-607,doi:10.1109/91.940971
- [2] tolga can,k-means空聚类示例,http://user.ceng.metu.edu.tr/~tcan/ceng465_f1314/schedule/kmeansempty.html(档案:档案: https://web.archive.org/web/20180626092955/http://user.ceng.metu.edu.tr/~tcan/ceng465_f1314/schedule/kmeansempty.html)
- [3] Ross,Timothy J.,工程应用程序的模糊逻辑,第三版。威利。 2010。ISBN978-0-470-74376-8 pp 352-353
- [4]乔·马里诺(Joe Marino https://web.archive.org/web/20180813034201/http://joelouismarino.github.io/blog_posts/blog_whitening.html)
- [5] TODO:施加加权欧几里得距离等于将传统的欧几里得距离应用于由重量平方根加权的数据
- [6] James C.Bezdek,Robert Ehrlich,William Full,FCM:模糊C-Means聚类算法,https://doi.org/10.1016/0098-3004(84)