当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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