import math
#参数A,B都是一个整型数组,表示两个矢量
#返回值是两个输入矢量的余弦相似度
class Solution:
def cosineSimilarity(self, A, B):
if len(A) != len(B):
return 2
n = len(A)
up = 0
for i in range(n):
up += A[i] * B[i]
down = sum(aa for a in A) * sum(bb for b in B)
if down == 0:
return 2
return up / math.sqrt(down)
#主函数
if name == ‘main’:
generator_A = [1,4,0]
generator_B = [1,2,3]
solution = Solution()
print(“输入: A=”, generator_A)
print(“输入: B=”, generator_B)
print("输出: ", solution.cosineSimilarity(generator_A,generator_B))
余弦相似度
最新推荐文章于 2022-12-05 11:54:37 发布