理解contrastive loss

因为最近看normL2face 看到中途发现作者其中有个创新点是对contrastive loss 和triple loss 进行了改动,由于之前只是草草的了解了contrastive loss ,为了更好地探究作者的创新出发点 ,看了contrastive loss 的论文 Dimensionality Reduction by Learning an Invariant Mapping
做一个简单的总结.
在识别领域的损失,一般用于分类,但是此论文的损失在分类的基础上有了附加的作用,用来降维。即本来相似的样本,在经过降维(特征提取)后,在特征空间中,两个样本仍旧相似;而原本不相似的样本,在经过降维后,在特征空间中,两个样本仍旧不相似。同样,该损失函数也可以很好的表达成对样本的匹配程度。
问题:降维涉及到将一组高维输入的点映射到低维流形,以便将输入空间中相似的点映射到流形的附近点。大多数现有的技术解决这两个问题都有两个缺点:1.大多数依赖于输入空间的有意义的且可以计算距离度量的数据。2.没有一个函数能够精确映射输入样本的函数,而且这些样本与训练数据的关系也是未知的。
解决方法:论文提出一种用于降维的不变映射。通过学习一个全局一致的非线性函数,将数据均匀的映射到输出流形。学习完全依赖于邻域关系,不需要在输入空间测量任何距离。
总的来说,就是作者构造了一个函数,这个函数通过样本对的比对,间接意义上实现了样本降维,同时更新了权值,很好的表达了样本的匹配程度。在这里插入图片描述
传统的降维方法:PCA: 将输入投影到使方差最大化的低维子空间
MDS:计算出最能保持输入点之间两两距离的投影
这个‘函数’的性质:1.在输出空间的距离度量近似输入空间中的领域关系(也就是说,输入空间是相似的,输出空间也是相似的)
2.映射不只是距离度量,还能够学习复杂转换的不变性(也就是说,在输入向输出映射,高维向低维映射的这个过程中,是由一定的规律的,相似点之间是有不变性的,这个规律是可以学到的)
3.这个映射应该是准确的,即便是未知领域关系的样本。
**理解:**作者用弹簧的拉伸位移与弹簧的吸引力和斥力,类比于对比损失函数 中的相似对与不相似对之间的损失函数大小。
以下是算法理解
在这里插入图片描述
在这里插入图片描述
接下来,会看相关代码 持续更新对比损失的实现。

猜你喜欢

转载自blog.csdn.net/qq_43118318/article/details/83513830