1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > 如何用深度学习来做检索:度量学习中关于排序损失函数的综述(2)

如何用深度学习来做检索:度量学习中关于排序损失函数的综述(2)

时间:2020-03-31 13:38:05

相关推荐

如何用深度学习来做检索:度量学习中关于排序损失函数的综述(2)

导读

今天是度量学习损失函数的第二部分,N-Pair和Angular损失。

这是排序损失综述的第二部分。第一部分涵盖了对比损失和三元组损失。在这一部分中,给出了N-pairs和angular损失。

N-Pairs Loss

对比损失和三元组损失都利用欧氏距离来量化点之间的相似性。此外,训练小批中的每个锚点都与一个单个负样本配对。N-Pairs损失改变了这两个假设。首先,利用余弦相似度来量化点之间的相似度。因此,N-pairs损失使用两个向量之间的角度来比较嵌入,而不是范数。这并不是很大的变化,所以它的表达方式仍然类似于单个三元组(a,p,n)的三元组,如下所示:

N-pairs的公式为单个三元组(a,p,n)使用余弦相似度。相同的嵌入的余弦相似性为1,不同的嵌入的余弦相似性为0。

但是,N-pairs损失的核心思想是为每个锚都配对一个正样本,同时配对所有的负样本。

N-pairs公式将每个锚f_a与batch中的一个正样本f_p和所有的负样本f_n配对。

对于N-pairs,一个训练batch包含来自每个类的单个正样本对。因此,一个大小为B的batch将有B//2对正样本对,每个锚都与(B-2)个负样本配对,如下图所示。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。