from math import sqrt
S1 = [1,0,0,0,1,0,0,2]
S3 = [0,1,1,2,0,1,2,0]
sum = 0
sums1 = 0
sums3 = 0
for i, j in zip(S1,S3):
sums1 += i*i
sums3 += j*j
sum += i*j
cosine_similarity = sum / ((sqrt(sums1)) * (sqrt(sums3)))
print (cosine_similarity)
请问我怎样才能从代码中删除这个错误。我想找到向量的余弦相似性。
2条答案
按热度按时间izkcnapc1#
错误是由于最后两行的缩进级别(如 j1-lee 的注解中所述):
这里是通过将 * 余弦相似性 * 的定义分解成更小运算的另一实现:
ttygqcqt2#
我认为您只需要删除代码末尾的额外括号,如下所示: