论文笔记:Triplet Network
生活随笔
收集整理的這篇文章主要介紹了
论文笔记: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^-x?和x+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。
總結
以上是生活随笔為你收集整理的论文笔记:Triplet Network的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 论文笔记:MobileNet v2
- 下一篇: 论文笔记:PointSIFT