cosine_similarity#

sklearn.metrics.pairwise.cosine_similarity(X, Y=None, dense_output=True)[source]#

计算 X 和 Y 中的样本之间的余弦相似度。

余弦相似度(Cosine similarity),即余弦核,计算的是 X 和 Y 的归一化点积。

K(X, Y) = <X, Y> / (||X||*||Y||)

对于 L2 归一化后的数据,此函数等同于 linear_kernel。

用户指南 中阅读更多内容。

参数:
X{array-like, sparse matrix} of shape (n_samples_X, n_features)

Input data.

Y{array-like, sparse matrix} of shape (n_samples_Y, n_features), default=None

输入数据。如果为 None,则输出将是 X 中所有样本之间的成对相似度。

dense_outputbool, default=True

即使输入是稀疏的,是否也返回稠密输出。如果为 False,且两个输入数组均为稀疏,则输出为稀疏矩阵。

0.17 版本新增: 用于稠密输出的参数 dense_output

返回:
similaritiesndarray 或形状为 (n_samples_X, n_samples_Y) 的稀疏矩阵

返回 X 和 Y 中样本之间的余弦相似度。

示例

>>> from sklearn.metrics.pairwise import cosine_similarity
>>> X = [[0, 0, 0], [1, 1, 1]]
>>> Y = [[1, 0, 0], [1, 1, 0]]
>>> cosine_similarity(X, Y)
array([[0.   , 0.   ],
       [0.577, 0.816]])