
5.12
詳細:ガウス混合モデル
485
図5-131 GMM共分散タイプの可視化
5.12.3
GMM
による密度推定
GMM
はしばしばクラスタリングアルゴリズムに分類されますが、基本的には密度推定アルゴリ
ズムです。つまりデータに対する
GMM
適合の結果は、技術的にはクラスタリングモデルではなく、
データの分布を記述する生成的確率モデルです。
例として、
scikit-learn
の
make_moons
関数(図 5-132 で可視化します)から生成されたデータで考
えてみましょう。これについては、「5.11 詳細:k 平均法クラスタリング」で一度使用しました。
In[13]: from sklearn.datasets import make_moons
Xmoon, ymoon = make_moons(200, noise=.05, random_state=0)
plt.scatter(Xmoon[:, 0], Xmoo
n[:, 1]);
図5-132 GMMに使用する非線形境界を有するクラスタ
このデータに対して、
2
成分のクラスタリングモデルとして
GMM
に適合させても、特に有用な
結果は得られません。
In[14]: gmm2 = GaussianMixture(n_components=2, covariance_type='full', random_state=0)
plot_gmm(gmm2, Xmoon)