穀物はいくつのクラスタ?
動画では、k-means の慣性グラフを使ってデータセットに適したクラスタ数を選ぶ方法を学びました。ここでは、穀物サンプルの測定値(面積、周囲長、長さなど)を含む配列 samples が与えられています。今回はクラスタ数はいくつが良さそうでしょうか?
KMeans と PyPlot(plt)はすでにインポート済みです。
このデータセットは UCI Machine Learning Repository から取得しました。
この演習はコースの一部です
Pythonで学ぶ教師なし学習
演習の手順
- 与えられた各
kの値について、次を実行します。 k個のクラスタを持つKMeansインスタンスmodelを作成します。- モデルを穀物データ
samplesに適合させます。 modelのinertia_属性の値をリストinertiasに追加します。ksとinertiasをプロットするコードは用意してあります。プロットを見るために 提出する をクリックしてください!
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
ks = range(1, 6)
inertias = []
for k in ks:
# Create a KMeans instance with k clusters: model
____
# Fit model to samples
____
# Append the inertia to the list of inertias
____
# Plot ks vs inertias
plt.plot(ks, inertias, '-o')
plt.xlabel('number of clusters, k')
plt.ylabel('inertia')
plt.xticks(ks)
plt.show()