基於embedding的重識別方法

2021-09-28 18:32:05 字數 2694 閱讀 2066

in defense of the triplet loss for person re-identification

githttps:// github.com/visualcomputinginstitute/triplet-reid 框架

theano

摘要

一般來說,在訓練基於度量的網路的時候,使用的triple loss要優先於其他,隨著資料集合market-1501以及mars,使得重學習方向得到了很大發展。本文使用triple-loss方法進行重學習。

簡介

triplet loss之所以不流行主要是因為,錯誤的使用會導致極差的結果,在使用triplet loss的時候乙個重要的問題是挖掘triple 組合,挖掘難的triple組合是一件比較困難的事情。但是選擇太難的triple組合又會導致不穩定。

目前的主要趨勢主要是使用預訓練模型,很多使用與訓練模型也取得了較好的效果,但是與訓練有很多的限制。就是不能改進網路結構。文中使用自己從頭訓練的模型,能夠展示很好的效果。文中結構在預訓練模型中也能去得很好的效果,但是我們自己訓練的模型更加的輕量級能夠在一些限制硬體上使用。

文中的貢獻主要分成兩個部分,第一 改進了triplet loss,第二 使用triplet loss與之前方法相比,具有較好的結果。

度量向量的學習,triplet loss,挖掘重要性

度量嵌入式的學習是學習乙個函式

將語義空間相近的點對映到度量空間相近的點,將語義相離的點對映到度量空間相離的點,其中函式的引數是theta, 從乙個線性空間對映到乙個非線性空間,函式是以神經網路的顯示,

定義乙個函式

這個函式為度量函式,主要衡量嵌入空間的距離。

w&s等人,研究了這個問題,其形式如下

其中pull表示相同類別之間的距離,push是不同類別之間的距離。 形式如下

之後facenet改進了這中函式,並命名為triplet loss如下

這個方法的要旨在於同類的距離近,異類的距離遠。

如果僅僅隨機選擇triplet組合的話,會有各種各樣的問題,所以需要挖掘難的積極的組合,難的消極組合。挖掘資訊是乙個與訓練分離的步驟,並且增加了開銷,因為這需要使用最近的模型來計算,大比例資料的所有配對的距離。

文中與傳統的組合triplet 的方式不同,隨機選擇出p個種類,然後從每個種類中隨機選擇出k個影象,所以我們的batch是有pk個,對於每一batch中的影象a,從batch中選擇最難的積極,以及最難的消極。來組合triplet。也就是統成為batch hard

其中xij 表示第i個人的第j張。

按照這個規則,從pk batch中抽取難積極組合以及難消極組合。

那麼組合的數量為pk(pk-k)(k-1), 那麼batchall 如下

還有一點就是lbh以及lba 和傳統的triple loss在訓練的時候是息息相關的, 最大函式以及最小函式是連續的,可以使用梯度下降法的,因為已經在目前存在的機制中,比如最大pooling, relu。

和batch hard相似,batch all 是左嵌入loss,通過考慮積極和消極對來填充資料batch集合。

這裡只使用了乙個積極對,然後使用了所有的消極對。

將上述思維應用到整個batch上,那麼其公式變成如下形式

距離衡量

文中與其他使用||a - b||2作為距離度量不同,使用的是真實的歐式距離。這樣在文中的試驗中表現更加的穩定。

soft-margin

margin是乙個矯正函式,在人體重識別,可以將相同類別的例項放到一起,本文使用乙個逼近函式來代替這個矯正函式,如下

文中所做的主要貢獻是,batch hard以及soft-margin。經過試驗證明這種改進是要優於以前的一些方法的。

試驗

mars資料集合試驗結果對比圖

網路結構

網路結構部分主要分成兩個部分,第乙個部分使用的是pretrained-model,第二個部分使用的是從頭訓練的model。

預訓練模型使用的是,與訓練好的resnet50將全連線層去除後,增加了兩個全連線層,大小分別是1024以及128。選擇的batchsize是72,包含18個人,每個人有四張。 在任何資料集中都有較好的結果。引數是25.74m。這個模型稱為trinet

從頭開始訓練的model,模型的量級較小,只要5m的引數,訓練的batchsize為128,72個人,每個人的**是4個。這個模型稱為lunet

行人重識別(二)跨模態的行人重識別

感謝前輩總結的 列表,為了方便自己以後翻閱,鏈結擱這兒 在我們現實生活中,可見光條件下的攝像機拍到的影象,往往會包含行人的大部分外觀資訊,然而現實中並不只需要在可視條件極佳的條件下進行監控,在夜晚或者可視條件極差的場景中也有監控的需要,這個時候,紅外相機拍攝的影象便可用於行人的再識別。據我所知,現階...

機器學習的embedding

embedding在數學上表示乙個maping,f x y,也就是乙個function,其中該函式是injective 就是我們所說的單射函式,每個y只有唯一的x對應,反之亦然 和structure preserving 結構儲存,比如在x所屬的空間上x1 x2,那麼對映後在y所屬空間上同理 y1 ...

embedding的個人理解

網路表徵學習中的embeddings embed英文谷歌解釋1 fix an object firmly and deeply in a surrounding mass 英文 2 attach a journalist to a military unit during a conflict.1是...