穀物のクラスタ数を求める
ビデオでは、k-meansのSSEのグラフを使ってデータセットのクラスタ数を決める方法を学びました。ここでは、穀物のサンプルの測定値(面積、周囲、長さなど)を含む配列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()