Python亲和传播中的相似矩阵

Python亲和传播中的相似矩阵,python,Python,我想在python中运行关联传播。我知道sklearn.cluster有这个算法。似乎sklearn.cluster.AffinityPropagation通过将相似性矩阵计算为负欧几里德距离来运行它。但是,我有自己的相似性矩阵,不想使用欧几里德距离。 因此,我想知道是否有任何方法可以将我的相似性矩阵作为输入,并在此基础上运行算法?是的,您可以这样做!请参阅下面的代码片段 from sklearn.cluster import AffinityPropagation # compute the

我想在python中运行关联传播。我知道sklearn.cluster有这个算法。似乎sklearn.cluster.AffinityPropagation通过将相似性矩阵计算为负欧几里德距离来运行它。但是,我有自己的相似性矩阵,不想使用欧几里德距离。
因此,我想知道是否有任何方法可以将我的相似性矩阵作为输入,并在此基础上运行算法?

是的,您可以这样做!请参阅下面的代码片段

from sklearn.cluster import AffinityPropagation

# compute the similarity matrix
af = AffinityPropagation(affinity='precomputed', verbose=True)
af.fit(similarity_matrix)
print af.labels_, af.cluster_centers_indices_