您的位置:首页 > 其它

pytorch 求余弦相似度:torch.nn.CosineSimilarity(dim=1, eps=1e-08)

2018-09-23 16:21 12973 查看

cos = torch.nn.CosineSimilarity(dim=1, eps=1e-6)
output = cos(input1,input2:input1,input2 维度必须一样

上图求的相似度是input1中的[1,2]与input2中的[3,4],input1中的[3,4]与input2中的[5,6].

假如我们想求的是一次求出1中的[1,2]与2[[3,4],[5,6]]的相似性,我们令a=input1,h=input2,先对a,h 求得二范数c,f,然后复制c,f(广播法则)和a,h一样得d,g。d,g然后和a,h每个元素相除,利用np.dot()就可得到余弦相似性。,

这样就一次求的[1,2]与h中每行的相似性,h中的行数还可以增加,就相当于h中的样本还可以更多,[1,2]相当于一个查询图像,h可向当与一个图库图像。

阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: