加入收藏 | 设为首页 | 会员中心 | 我要投稿 开发网_开封站长网 (http://www.0378zz.com/)- 科技、AI行业应用、媒体智能、低代码、办公协同!
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

Python如何求2个向量间的余弦值?

发布时间:2022-04-18 13:30:53 所属栏目:语言 来源:互联网
导读:Python怎样求2个向量之间的余弦值?这篇文章就要给大家介绍2个向量之间余弦值的求法,对于大家学习和了解Python有一定的参考价值,感兴趣的朋友就继续往下看吧。 余弦相似度衡量的是2个向量间的夹角大小,通过夹角的余弦值表示结果,因此2个向量的余弦相似度
        Python怎样求2个向量之间的余弦值?这篇文章就要给大家介绍2个向量之间余弦值的求法,对于大家学习和了解Python有一定的参考价值,感兴趣的朋友就继续往下看吧。
 
        余弦相似度衡量的是2个向量间的夹角大小,通过夹角的余弦值表示结果,因此2个向量的余弦相似度为:
  
        余弦相似度的取值为[-1,1],值越大表示越相似。
 
        向量夹角的余弦公式很简单,不在此赘述,直接上代码:
 
def cosVector(x,y):
  if(len(x)!=len(y)):
    print('error input,x and y is not in the same space')
    return;
  result1=0.0;
  result2=0.0;
  result3=0.0;
  for i in range(len(x)):
    result1+=x[i]*y[i]  #sum(X*Y)
    result2+=x[i]**2   #sum(X*X)
    result3+=y[i]**2   #sum(Y*Y)
  #print(result1)
  #print(result2)
  #print(result3)
  print("result is "+str(result1/((result2*result3)**0.5))) #结果显示
cosVector([2,1],[1,1])
 
#计算query_output(60,20)和db_output(60,20)的余弦值,用60*1的向量存储
cosResult= [[0]*1 for i in range(60)] 

(编辑:开发网_开封站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读