本文简要介绍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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。