餘弦相似度在計算文本相似度等問題中有着廣泛的應用,scikit-learn中提供了方便的調用方法
第一種,使用cosine_similarity,傳入一個變量a時,返回數組的第i行第j列表示a[i]與a[j]的餘弦相似度
>>> from sklearn.metrics.pairwise import cosine_similarity
>>> a=[[1,3,2],[2,2,1]]
>>> cosine_similarity(a)
array([[1. , 0.89087081],
[0.89087081, 1. ]])
第二種使用pairwise_distances,注意該方法返回的是餘弦距離,餘弦距離= 1 - 餘弦相似度,同樣傳入一個變量a時,返回數組的第i行第j列表示a[i]與a[j]的餘弦距離
>>> from sklearn.metrics.pairwise import pairwise_distances
>>> pairwise_distances(a,metric="cosine")
array([[0. , 0.10912919],
[0.10912919, 0. ]])