Fuzzy c-means
後で書く
Pythonのライブラリ
代表的なのは、scikit-fuzzyとfuzzy-c-meansの2つのライブラリだと思います。
fuzzy-c-meansは、sklearnライクなのでfit()メソッドで学習といった具合に使えます。
ここでは、fuzzy-c-meansを使います。
scikit-fuzzyのインストール
conda install -c conda-forge scikit-fuzzy
fuzzy-c-meansのインストール
pip install fuzzy-c-means
Pythonプログラム
import numpy as np import pandas as pd import matplotlib.pyplot as plt from sklearn.datasets import load_iris, make_moons from sklearn.decomposition import KernelPCA from sklearn.cluster import KMeans data = load_iris() X = data.data label = data.target kpca = KernelPCA(n_components=2) kPCA_X = kpca.fit_transform(X) fcm = FCM(n_clusters=3) fcm.fit(kPCA_X) pred_label = np.argmax(fcm.u, axis=1)
参考
- https://www.haya-programming.com/entry/2018/03/03/202558
- http://emoson.hateblo.jp/entry/2015/03/07/024559
- https://pythonhosted.org/scikit-fuzzy/userguide/getting_started.html
- https://pythonhosted.org/scikit-fuzzy/auto_examples/plot_cmeans.html
- https://github.com/omadson/fuzzy-c-means
- https://en.wikipedia.org/wiki/Fuzzy_clustering
- http://ibisforest.org/index.php?%E3%83%95%E3%82%A1%E3%82%B8%E3%82%A3c-means%E6%B3%95
- https://en.wikipedia.org/wiki/Cluster_analysis#Fuzzy_c-means_clustering
- http://www.scholarpedia.org/article/Fuzzy_C-means_cluster_analysis
- https://www.haya-programming.com/entry/2018/03/06/043950