私はエルボーとBICメソッドを使ってKmeansでKの数を推定しようとしています.Xはデータポイントの多次元配列です(100000データポイント×100個のフィーチャ)
ここは私が使用するコードです肘:
KmeansでKを推定するメトリック
Ks = [40,50,60,70,80,90,100,110,120]
ds = []
for K in Ks:
cls = MiniBatchKMeans(K, batch_size =1000, random_state = 101)
for i in xrange(0, len(X), 1000):
chunk = newvec[i:i + 1000]
cls.partial_fit(chunk)
ds.append(cls.inertia_)
plt.plot(Ks, ds)
plt.xlabel('Value of K')
plt.ylabel('Distortion')
plt.show()
私はBICに使用するコードはここでここby Prabhath Nanisetty
から来ているが、私はこれらのメソッドのそれぞれを使用して取得していますプロットであります
使用する正しいK値は何ですか?これらの結果に基づいて自分のデータセットに使用する正しいメトリックですか? ありがとうございます。