Fuzzy c-means

機械学習




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
タイトルとURLをコピーしました