本文簡要介紹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_state:int、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]])
相關用法
- Python sklearn ARDRegression用法及代碼示例
- Python sklearn AgglomerativeClustering用法及代碼示例
- Python sklearn AdditiveChi2Sampler用法及代碼示例
- Python sklearn AdaBoostClassifier用法及代碼示例
- Python sklearn AdaBoostRegressor用法及代碼示例
- Python sklearn jaccard_score用法及代碼示例
- Python sklearn WhiteKernel用法及代碼示例
- Python sklearn CalibrationDisplay.from_predictions用法及代碼示例
- Python sklearn VotingRegressor用法及代碼示例
- Python sklearn gen_batches用法及代碼示例
- Python sklearn ExpSineSquared用法及代碼示例
- Python sklearn MDS用法及代碼示例
- Python sklearn adjusted_rand_score用法及代碼示例
- Python sklearn MLPClassifier用法及代碼示例
- Python sklearn train_test_split用法及代碼示例
- Python sklearn RandomTreesEmbedding用法及代碼示例
- Python sklearn GradientBoostingRegressor用法及代碼示例
- Python sklearn GridSearchCV用法及代碼示例
- Python sklearn log_loss用法及代碼示例
- Python sklearn r2_score用法及代碼示例
- Python sklearn ndcg_score用法及代碼示例
- Python sklearn ShrunkCovariance用法及代碼示例
- Python sklearn SelfTrainingClassifier用法及代碼示例
- Python sklearn load_svmlight_file用法及代碼示例
- Python sklearn make_pipeline用法及代碼示例
注:本文由純淨天空篩選整理自scikit-learn.org大神的英文原創作品 sklearn.cluster.AffinityPropagation。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。