欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

论文笔记:Triplet Network

发布时间:2025/3/21 32 豆豆
生活随笔 收集整理的这篇文章主要介绍了 论文笔记:Triplet Network 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

原论文:DEEP METRIC LEARNING USING TRIPLET NETWORK

Triplet Network

1、四个问题

  • 要解决什么问题?
    • 实质上,Triplet Network是Siamese Network的一种延伸,要解决的问题与Siamese Network的基本一致。
    • 与Siamese Network一样,适用于解决样本类别很多(或不确定),然而训练数据集的样本数又很少的情况(如人脸识别、人脸验证)。
  • 用了什么办法解决?
    • 思路:将图像映射到某个特征空间中,其中两幅图像输入CNN得到的特征向量之间的欧式距离即为相似度。
    • 与Siamese Network不同的是,Triplet Network采用三个样本为一组:一个参考样本,一个同类样本,一个异类样本。
    • 在contrastive loss的基础之上构建了一个新的loss函数,就是保持类内和类间距离有一个距离限制(margin)。
  • 效果如何?
    • 论文比较老了,是15年的,早就不是state-of-the-art的了。
    • 在论文中给出的实验结果中,采用相似的CNN结构,使用triplet network的效果比siamese network好一些。
  • 还存在什么问题?
    • triplet network的训练是通过样本间的对比(类内/类间),而不是以往的通过标签(label)训练,前者相比于后者不一定能取得更好地效果。
  • 2、论文概述

    2.1、网络结构

    • Tripelet Network由3个相同的前馈神经网络(彼此共享参数)组成。
    • 每次输入三个样本,网络会输出两个值:候选样本与同类样本,候选样本与异类样本,在embedding层的特征向量的L2距离。
    • 假设输入为:xxx,候选样本;x−x^-x,异类样本;x+x^+x+,同类样本。
    • 一句话概括就是,这个网络对x−x^-xx+x^+x+相对于xxx的距离进行了编码。

    2.2、训练

    • d+d_+d+d−d_-d分别是正样本对和负样本对在embedding层特征向量的欧氏距离。为了方便使用概率表示,又将其输入softmax函数,计算公式如上图。
    • 目标是最小化d+d_+d+,最大化d−d_-d,所以等价于令Loss(d+,d−)→0Loss(d_+, d-) \rightarrow 0Loss(d+,d)0
    《新程序员》:云原生和全面数字化实践50位技术专家共同创作,文字、视频、音频交互阅读

    总结

    以上是生活随笔为你收集整理的论文笔记:Triplet Network的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。