03 K均值演算法

2022-07-09 19:00:18 字數 2211 閱讀 8124

1) 撲克牌手動演練k均值聚類過程:>30張牌,3類

3) 用sklearn.cluster.kmeans,鳶尾花花瓣長度資料做聚類,並用散點圖顯示.

**:

#

201706120153-許卉欣

from sklearn.datasets import

load_iris

from sklearn.cluster import

kmeans

import

matplotlib.pyplot as plt

iris = load_iris() #

讀取鳶尾花資料

iris.feature_names #

檢視鳶尾花的特徵標籤,找出花瓣長度所屬列

pl=iris.data[:,2].reshape(-1,1) #

提取鳶尾花第三列的資料,並將其改變為n行一列的陣列。

model=kmeans(n_clusters=3) #

引入kmeans模型

model.fit(pl) #

訓練模型

pre=model.predict(pl) #

進行**

pre #

檢視聚類結果

plt.scatter(pl[:,0],pl[:,0],c=pre,s=25) #

使用matplotlib作散點圖

plt.show()

結果:

4).鳶尾花完整資料做聚類並用散點圖顯示.

**:

#

201706120153 許卉欣

from sklearn.datasets import

load_iris

from sklearn.cluster import

kmeans

import

matplotlib.pyplot as plt

iris = load_iris() #

讀取鳶尾花資料

data=iris.data #

鳶尾花的完整資料

model=kmeans(n_clusters=3) #

引入kmeans模型,分成3類

model.fit(data) #

訓練模型

pre=model.predict(data) #

使用模型進行**

plt.scatter(data[:,2],data[:,3],c=pre,s=25) #

使用matplotlib作散點圖

plt.show()

結果:

5)想想k均值演算法中以用來做什麼?

k-means演算法通常可以應用於維數、數值都很小且連續的資料集,比如:從隨機分布的事物集合中將相同事物進行分組。

可以做文件分類器、客戶群體分類、物品傳輸的優化也可以使用城市中特定地區的相關犯罪資料,分析犯罪類別、犯罪地點以及兩者之間的關聯,可以對城市或區域中容易犯罪的地區做高質量的勘察。

機器學習03 K值的選擇

k值過小 容易受到異常點的影響 k值的減小就意味著整體模型變得複雜,容易發生過擬合 eg 判斷是不是人?眼睛,鼻子,黃 顏色為過擬合 k值過大 受到樣本均衡的問題 與輸入例項較遠 不相似的 訓練例項也會對 器作用,使 發生錯誤,且k值的增大就意味著整體的模型變得簡單。eg 判斷是不是人?特徵值 眼睛...

K 均值演算法

動態聚類方法是模式識別中一種普遍採用的方法,它具有以下3個要點 1 選定某種距離度量作為樣本間的相似性度量 2 確定某個評價聚類結果質量的準則函式 3 給定某個初始分類,然後用迭代演算法找出使準則函式取極值的最好的聚類結果 k means演算法 輸入 聚類個數k,以及包含 n個資料物件的資料庫。輸出...

K均值演算法

假設需要聚成k個類 演算法先會隨機從資料集中選取k個點,把他們當做k個聚類的中心點 依次計算資料集中的每乙個點與各個中心點的距離,離哪個中心點近,就劃分到那個中心點對應的聚類下 計算分到同一類簇下,所有點的均值,更新中心點,重複 直至達到迭代結束條件 import numpy as np impor...