當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python sklearn AffinityPropagation用法及代碼示例


本文簡要介紹python語言中 sklearn.cluster.AffinityPropagation 的用法。

用法:

class sklearn.cluster.AffinityPropagation(*, damping=0.5, max_iter=200, convergence_iter=15, copy=True, preference=None, affinity='euclidean', verbose=False, random_state=None)

執行數據的親和傳播聚類。

在用戶指南中閱讀更多信息。

參數

damping浮點數,默認=0.5

[0.5, 1.0) 範圍內的阻尼係數是當前值相對於傳入值的保持程度(加權 1 - 阻尼)。這是為了避免在更新這些值(消息)時出現數值波動。

max_iter整數,默認=200

最大迭代次數。

convergence_iter整數,默認=15

停止收斂的估計集群數量不變的迭代次數。

copy布爾,默認=真

製作輸入數據的副本。

preference類似數組的形狀 (n_samples,) 或浮點數,默認=None

每個點的偏好 - 具有較大偏好值的點更有可能被選為樣本。樣本的數量,即集群的數量,受輸入偏好值的影響。如果偏好不作為參數傳遞,它們將被設置為輸入相似度的中值。

affinity{‘euclidean’, ‘precomputed’},默認='歐幾裏得'

使用哪種親和力。目前支持‘precomputed’ 和euclidean。 ‘euclidean’ 使用點之間的負平方歐幾裏得距離。

verbose布爾,默認=假

是否冗長。

random_stateint、RandomState 實例或無,默認=無

偽隨機數發生器控製啟動狀態。使用 int 在函數調用之間獲得可重現的結果。請參閱術語表。

屬性

cluster_centers_indices_ndarray 形狀 (n_clusters,)

聚類中心 index 。

cluster_centers_ndarray 形狀(n_clusters,n_features)

集群中心(如果親和力!= precomputed)。

labels_ndarray 形狀 (n_samples,)

每個點的標簽。

affinity_matrix_ndarray 形狀(n_samples,n_samples)

存儲 fit 中使用的親和度矩陣。

n_iter_int

收斂所用的迭代次數。

n_features_in_int

擬合期間看到的特征數。

feature_names_in_ndarray 形狀(n_features_in_,)

擬合期間看到的特征名稱。僅當 X 具有全為字符串的函數名稱時才定義。

注意

有關示例,請參見示例/集群/plot_affinity_propagation.py。

親和傳播的算法複雜度是點數的二次方。

fit 不收斂時,cluster_centers_ 變為空數組,所有訓練樣本將被標記為 -1 。此外,predict 會將每個樣本標記為 -1

當所有訓練樣本具有相同的相似性和相同的偏好時,聚類中心和標簽的分配取決於偏好。如果偏好小於相似度,fit 將導致單個聚類中心和每個樣本的標簽 0。否則,每個訓練樣本都會成為它自己的聚類中心,並被分配一個唯一的標簽。

參考

Brendan J. Frey 和 Delbert Dueck,“通過在數據點之間傳遞消息進行聚類”,科學,2007 年 2 月

例子

>>> from sklearn.cluster import AffinityPropagation
>>> import numpy as np
>>> X = np.array([[1, 2], [1, 4], [1, 0],
...               [4, 2], [4, 4], [4, 0]])
>>> clustering = AffinityPropagation(random_state=5).fit(X)
>>> clustering
AffinityPropagation(random_state=5)
>>> clustering.labels_
array([0, 0, 0, 1, 1, 1])
>>> clustering.predict([[0, 0], [4, 4]])
array([0, 1])
>>> clustering.cluster_centers_
array([[1, 2],
       [4, 2]])

相關用法


注:本文由純淨天空篩選整理自scikit-learn.org大神的英文原創作品 sklearn.cluster.AffinityPropagation。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。