資源簡介
層次聚類(AGNES)算法(Python) 是聚類算法的一種,通過計(jì)算不同類別數(shù)據(jù)點(diǎn)間的相似度來創(chuàng)建一棵有層次的嵌套聚類樹。在聚類樹中,不同類別的原始數(shù)據(jù)點(diǎn)是樹的最低層,樹的頂層是一個(gè)聚類的根節(jié)點(diǎn)。AGNES是常用的一種層次聚類算法
使用場景:用于簇的數(shù)量較多,有連接約束等情況
代碼片段和文件信息
#?-*-?coding:?utf-8?-*-
“““
????AgglomerativeClustering
“““
from?sklearn?import??cluster
from?sklearn.metrics?import?adjusted_rand_score
import?matplotlib.pyplot?as?plt
def?test_AgglomerativeClustering(*data):
????‘‘‘
????測試?AgglomerativeClustering?的用法
????:param?data:?可變參數(shù)。它是一個(gè)元組。元組元素依次為:第一個(gè)元素為樣本集,第二個(gè)元素為樣本集的真實(shí)簇分類標(biāo)記
????:return:?None
????‘‘‘
????Xlabels_true=data
????clst=cluster.AgglomerativeClustering()
????predicted_labels=clst.fit_predict(X)
????print(“ARI:%s“%?adjusted_rand_score(labels_truepredicted_labels))
def?test_AgglomerativeClustering_nclusters(*data):
????‘‘‘
????測試?AgglomerativeClustering?的聚類結(jié)果隨?n_clusters?參數(shù)的影響
????:param?data:??可變參數(shù)。它是一個(gè)元組。元組元素依次為:第一個(gè)元素為樣本集,第二個(gè)元素為樣本集的真實(shí)簇分類標(biāo)記
????:return:?None
????‘‘‘
????Xlabels_true=data
????nums=range(150)
????ARIs=[]
????for?num?in?nums:
????????clst=cluster.AgglomerativeClustering(n_clusters=num)
????????predicted_labels=clst.fit_predict(X)
????????ARIs.append(adjusted_rand_score(labels_truepredicted_labels))
????##?繪圖
????fig=plt.figure()
????ax=f
- 上一篇:Python爬取足球比賽賠率
- 下一篇:圖像目標(biāo)識(shí)別分類
評(píng)論
共有 條評(píng)論