1)。トランプの手動演奏のK平均クラスタリングプロセス:> 30枚のカード、3種類
図1統計表
図2一次ラウンドの実態
図3 2次ラウンドの実態
2)。* K平均アルゴリズムは独立して記述され、クラスタリングはアイリス花弁の長さのデータに対して実行され、散布図で表示されます。(プラスポイント)
ps:人工知能の先生は以前にこのアルゴリズムを教えたので、コードは基本的に同じです。
ソースコード:
# sklearn.datasetsからデータセットをインポートするimport load_iris import numpy as np data = load_iris()。Data n = len(data)#サンプルの総数を計算する m = data.shape [1]#サンプル属性の数 k = 3 #クラスを選択する中心の数 dist = np.zeros([n、k + 1])#距離行列を初期化し、最後の列に各サンプルのカテゴリーを格納します center = data [:k 、:] center_new = np.zeros([k、m] ) while True: for i in range(n): for j in range(k): dist [i、j] = np.sqrt(sum((data [i、:]-center [j ,:])** 2)) dist [i、k] = np.argmin(dist [i ,: k]) for i in range(k): index = dist [:、k] == i# center_new [i ,:] = data [index 、:]。平均(axis = 0)if np.all((center == center_new)): ブレーク 他ました: センター= center_new print( "150サンプルの分類\ n"、dist [:、k])
図4クラスタリングの結果
3)。クラスタリングにsklearn.cluster.KMeansとアイリス花弁の長さデータを使用し、散布図で表示します。
ソースコード:
from sklearn.datasets import load_iris from sklearn.cluster import KMeans import matplotlib.pyplot as plt iris = load_iris() data = iris.data [:、1] x = data.reshape(-1,1)# 平化y = KMeans (n_clusters = 3)#重心数が3のKMeansモデルの構築を紹介します y.fit(x)#モデルをトレーニングし、k平均クラスタリングを計算します y_pre = y.predict(x)#訓練されたモデルに従って、つまりクラスタリングを計算します各サンプルのクラスタリングインデックスを中心にして予測します plt.scatter(x [:、0]、x [:、0]、c = y_pre、s = 50、cmap = 'rainbow') plt.show()
図5コードと散布図
4)。アイリスの花の完全なデータがクラスター化され、散布図で表示されます。
ソースコード:
インポートload_iris sklearn.datasets
から関数kmeans sklearn.clusterインポート
PLT ASインポートmatplotlib.pyplot
IRIS = load_irisは()
X = iris.data
Y =関数kmeans(= n_clusters。3)重心の構築物#1関数kmeansモデル番号を導入する。3
y.fitを( x)
#モデルをトレーニングし、k平均クラスタリングを計算しますy_pre = y.predict(x)#トレーニング済みモデルに従って予測します。つまり、クラスタリングの中心を計算し、各サンプル
プリントのクラスタリングインデックスを予測します( "予測結果:\ n" 、y_pre)
plt.scatter(x [:、2]、x [:、3]、c = y_pre、s = 100、cmap = 'rainbow'、alpha = 0.5)
plt.show()
図6予測結果とその散布図
5)。k-meansアルゴリズムで何が使用されているかを考えますか?
回答:k-meansクラスタリングは最も有名なクラスタリングアルゴリズムであり、そのシンプルさと効率性から、すべてのクラスタリングアルゴリズムの中で最も広く使用されています。データポイントのセットと必要なクラスター数kを指定すると、kはユーザーによって指定され、k平均アルゴリズムは、特定の距離関数に従ってデータをk個のクラスターに繰り返し分割します。人生は、特定の特性に従って物事を分類および分類するために使用できます。たとえば、中国のサッカーチームのレベルを前年のデータに従って分析したり、前年の種子の品質に基づいて今年の種子の品質を予測したり、データを分類したりします。