孪生神经网络(siamese network)中,其采用的损失函数是contrastive loss,这种损失函数可以有效的处理孪生神经网络中的paired data的关系。contrastive loss的表达式如下:
其中d=||an−bn||2,代表两个样本特征的欧氏距离,y为两个样本是否匹配的标签,y=1代表两个样本相似或者匹配,y=0则代表不匹配,margin为设定的阈值。
Triplet Loss损失函数的计算公式如下:
L=max(d(a,p)−d(a,n)+margin,0)
Quadruplet Loss:
上式共有两项,前一项是传统的Triplet Loss,后一项用于进一步缩小类内差距。 由于前一项的重要更大,因此作者控制 α1>α2α1>α2.