クラスタリング
CLIを統合したクラスタリングおよびファジークラスタリングライブラリ。
インストール
$ python3 setup.py install
setup.pyスクリプト/usr/lib/pythonX.X実行は、必要なすべてのパッケージをダウンロードし、 ~/.local/bin/に次のコマンドをインストールします。
- CLUS:パーティションベースのクラスタリング用のメインコマンド。
- DCLUS:密度ベースのクラスタリング。
- HCLU:階層クラスタリング。
- Eclus:クラスタリングを評価します。 2つのパーティションを比較することにより、クラスタリング結果を評価するためのDiferentsの実装方法。
使用法
# 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クラスインターフェイスに移動する
- 使いやすく抽象的なベースクラスタリングクラスを設計します
- 川からインスピレーションを得てください
- 「新しい」アルゴリズムファミリ:ストリーミング/ワンパスアルゴリズム。
- レスfcmを注ぎ、プラスイエルはdonnéessontfaites plusieurs foisをコピーします。 optimisable、voir:https://pythonhosted.org/scikit-fuzzy/_modules/skfuzzy/cluster/_cmeans.html#cmeans
- rendre lesopérationsde Clustering Inplace(ne pas dupliquer lesdonnées)
- メトーデスdeクラスタリングàインプルメンサー:
- https://github.com/scikit-learn/scikit-learn/blob/7b136e9/sklearn/cluster/k_means_.py#l1318
- 光学
- 平均シフト
- Vérifierle hard_c_medoids
- 実装者UNE検出オートマチックDEヘッダーSI LEフラグ - ヘッダーN'est PasPassé。 voir:https://stackoverflow.com/questions/32312309/check-if-header-exists-with-python-pandas
- permettre au hc de prendre plusieursparamètresfcluster値を注ぎます。 Si Plusieurs、Alors on Applique Ces Params。 ajouterオプションfcluster_value dans le filename。
- lesopérationssur medoids sont lentes。 s'inspirer d'Autresコードはレスアメリオラーを注ぎます:
- https://github.com/vitordeatorreao/amproj/blob/844842a532524d5f514e7534da65c7a64ab7ef57/amproj/distance/kmedoids.py
- https://github.com/agartland/utils/blob/e200d7e41039ca0053bd817c1d1857aab33bd503/kmedoids.py#l172
- https://github.com/brain-mapper/brainmapperv2/blob/63075bdca2428197fc18a1cf6c7403c2764e0664/ourlib/clustering.py#l293
- アプリケーションDU DECORETUR "MEMORY ERROR_FALLBACK"、D'UN PARAMETRE DE TAILLE DE CHUNK、PUIS UTILISER SKLEARN.METRICS.PAIRWISE_DISTANCES_CHUNKED
- au lieu de fixer un nom de fichierpardéfaut、mettretous lesparamètrespardéfautàney(et fixer en dur leurs pardéfautdansla doc、ou formater selon un fichier)、et ajouter les parametres non pass l'utilisateur peut aussitrèsbien通行人nom de fichierprédéfini。
- インプルメンターUn algo d'pariemment(de Comparaison)d'感情。 peutêtreutiliserhttps://fr.wikipedia.org/wiki/algorithme_hongrois
- sous-commandesのrevoir lesséparations。 PeutêtreFaire:「Clusは「ou」を評価します。
- s'inspirer de l'api d'autresクラスタリングソフトウェア:** https://elki-project.github.io ** https://www.cs.waikato.ac.nz/ml
- インプルメンサーLAレクチャーデフィシエ:** MEMMAP:https://docs.scipy.org/doc/numpy/reference/generated/numpy.memmap.html
- S'inspirer des codes suivants:** https://github.com/overshiki/kmeans_pytorch/blob/master/kmeans.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 ** https://davetang.org/muse/2017/09/21/adjusted-rand-index/
- Trouver Meilleure Coupe HC:** https://www.sciencedirect.com/science/article/pii/s0031320310001974
- Etudier d'autresméthodesde remorization、leurs effets et leurs buts ** https://en.wikipedia.org/wiki/normalization_(スタチスティック)** https://en.wikipedia.org/wiki/feature_scaling https://sebastianraschka.com/articles/2014_about_feature_scaling.html
- リファクタリングDe L'Architecture du Code:** clus.Methods、qui offre touteslesméthodesdepuis ceモジュール。 ** clus.preprocessing、qui offrelesméthodesde remorization、et depondération** clus.visualisation ** clus.valuation ** clus.loading、toutes lesméthodesde chargement desdonnéeses
- チェンジャー・ラ・ファソンドント・レス・パラメートル・デュ・クラスタリング・ソント・ストックet et dont les resultats sontsauvegardés。 ** virer tous les les paramsliésaunom 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。記号「パラマ」。 **メンテナントQuej'écrisça、je me rends compte que sacred serait peut etreと流用の捨てを鳴らします。
- Virer Silhouette、NE Garder Que Silhouette-Samples、Puis Retourner La Moyenne(qui constarys silhouette-score)、lapelle silhouette_mean、etl'écartタイプSilhouette_std。
- etudier l'utilization de:https://scikit-learn.org/stable/modules/generated/sklearn.metrics.pairwise_distances_chunked.html
- Remettrelesreférencesdans la doc de Chaqueモジュール。 Les Retirer desréférencescidessous。
- Essayer de Proposer Une Implentation de K-means utilisant cuda:http://alexminnaar.com/2019/03/05/cuda-kmeans.html
- ajouter param uuid:ajouter un param begain、{uuid4}、{uuid6}などdans le futur nom de fichier peut etre? PEUT L'Iniveriser Avec Le Temps、Sinon Faudra FaireGaffeàl'initial -avec grainealéatoire、sinon c'est cosiblkz que je retournelesmêmesuuidàchaquefois。
- ajouter des mesures d'aluation:papier pour mesure d'avel Clustering:https://amstat.tandfonline.com/doi/abs/10.1080/01621459.1971.10482356#.xxzye6wxry6wxry
- etudier d'autres normurisation et leurs effets:https://scikit-learn.org/stable/auto_examples/preprocessing/plot_all_scaling.html#results
参照
- [1] R. Krishnapuram; A.ジョシ; O. nasraoui; L. YI、低複合性ファジーリレーショナルクラスタリングアルゴリズム、ファジーシステムに関するIEEEトランザクション(ボリューム:9、2001年8月4日)、p595-607、doi:10.1109/91.940971
- [2] Tolga Can、K-Means空のクラスターの例、http://user.ceng.edu.edu.tr/~tcan/ceng465_f1314/schedule/kmeansempty.html(archive: https://web.archive.org/web/20180626092955/http://user.ceng.metu.edu.tr/~tcan/ceng465_f1314/schedule/kmeansempty.html)
- [3]ロス、ティモシーJ.、エンジニアリングアプリケーションを使用したファジーロジック、第3版。ワイリー。 2010。ISBN978-0-470-74376-8 PP 352-353
- [4] Joe Marino、統計的ホワイトニング、http://joelouismarino.github.io/blog_posts/blog_whitening.html(Archive: 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:The Fuzzy C-Means Clustering Algorithm、https://doi.org/10.1016/0098-3004(84)90020-7、1983