聚類(lèi)算法k-means

聚類(lèi)算法

  • 聚類(lèi)算法 是 無(wú)監(jiān)督學(xué)習(xí)

聚類(lèi)算法有特征,無(wú)標(biāo)簽,是無(wú)監(jiān)督分類(lèi)。

  • sklearn 聚類(lèi)模塊

cluster.KMeans
cluster.k_means 參數(shù):X,n\_clusters

KMeans算法

  • 基本要素

K 與 質(zhì)心(\mu_j)

  • 聚類(lèi)算法迭代過(guò)程


    聚類(lèi)算法迭代過(guò)程.png
  • 樣本點(diǎn)到質(zhì)心的距離,采用歐幾里得距離
    d(x,\mu) = \sqrt{\sum_{i=1}^n (x_i-\mu_i)^2}
  • 所有樣本點(diǎn)到 質(zhì)心距離和
    Cluster Sum Of Square(CSS) \quad= \quad \sum_{j=0}^m\sum_{i=1}^n(x_i-\mu_i)^2
  • k-means復(fù)雜度

非常的慢 O(n^{(k+2)/p})

  • sklearn k-means算法
from sklearn.datasets import make_blobs
import matplotlib.pyplot as plt
# 自己創(chuàng)建數(shù)據(jù)集
X,y = make_blobs(n_samples=500,n_features=2,centers=4,random_state=1)
# 作圖
fig,ax1 = plt.subplots(1)
ax1.scatter(X[:,0],X[:,1],marker='o',s=8)
plt.show()
作圖1.png
from sklearn.cluster import KMeans
n_clusters = 4
cluster = KMeans(n_clusters=n_clusters,random_state=0).fit(X)
y_pred = cluster.labels_
# 查看預(yù)測(cè)標(biāo)簽
y_pred
centroid = cluster.cluster_centers_
# 查看質(zhì)心未知
centroid
inertia = cluster.inertia_
# 查看 歐幾里得距離
inertia
# 作圖
color = ["red","pink","orange","gray"]
fig,ax1 = plt.subplots(1)
for i in range(n_clusters):
    ax1.scatter(X[y_pred==i,0],X[y_pred==i,1],marker='o',s=8,c=color[i])
ax1.scatter(centroid[:,0],centroid[:,1],marker="x",s=15,c="black")
plt.show()
圖2.png

聚類(lèi)算法模型評(píng)估指標(biāo)

  • 簇內(nèi)差異越小,簇外差異越大 越好

真是標(biāo)簽已知:互信息分,V-measure,調(diào)整藍(lán)德系數(shù)

  • 真實(shí)標(biāo)簽未知的情況

輪廓系數(shù)計(jì)算 s = \frac{b-a}{max(a,b)} , a紅與紅的距離,b紅與黑的距離,b越大越好

  • 輪廓系數(shù)法代碼
from sklearn.metrics import silhouette_score
from sklearn.metrics import silhouette_samples

silhouette_score(X,y_pred)
# 0.6505186632729437
silhouette_samples(X,y_pred).shape
# (500,)
  • 卡林斯基-哈拉巴斯指數(shù)(越高越好),運(yùn)算更快
from sklearn.metrics import calinski_harabasz_score
calinski_harabasz_score(X,y_pred)
# 2704.4858735121097

案例 (day08_3.1.3 案例:輪廓系數(shù)找最佳n_clusters (1))

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容