1. 程式人生 > >時裝分類+檢索之DeepFashion

時裝分類+檢索之DeepFashion

CVPR2016,湯老師,王小剛老師組的。

  1. 增加額外的landmark定位,有助於提高類別分類的精度
  2. 更多的衣服屬性,有助於訓練產生更好的特徵空間,從而更好優化識別

論文貢獻:

  1. 提出大型時裝資料集DeepFashion
  2. 提出了FashionNet 進行DeepFashion 資料集的衣服屬性的預測和分類
  3. 定義了多種任務的評價標準

DeepFashion 資料集:

DeepFashion 包含80W張圖片,具體包含50種類別,1000個屬性,4-8個關鍵點,同一種衣服的配對屬性。

圖片主要來源於,

  1. 購物網站Forever212和Mogujie,一共收集了1320078 張
  2. Google網路圖片,一共收集了1, 273, 150 張
  3. 先使用Alexnet的全連線層剔除了特徵相差較大的,然後進行人工清洗,得到最終的80W張圖片。

和其他時裝資料集的對比:

FashionNet 網路:

網路的基礎結構類似於VGG-16,將VGG-16的最後一個卷積層替換為上圖的紅,綠,藍,三個網路子模組。

紅色的模組負責提取基礎模組的全圖的特徵。

綠色的模組輸入為基礎網路的最後特徵層和藍色網路的landmark,然後經過landmark pooling layer層得到區域性的特徵層。再將紅色的全域性特徵和綠色的區域性特徵進行融合,最終特徵進行預測時裝類別,屬性和triplet類內類間分類

藍色的網路輸入為基礎網路的最後特徵層,然後迴歸得到landmark的座標位置,已經座標的是否可見。

landmark pooling layer類似於roi pooing。通過landmark的座標,取一個L的區域,進行pooling操作,然後將所有關鍵點提取的pooling區域concat起來,就形成了綠色模組的pool5_local層。

訓練loss:

訓練過程中,首先加大藍色模組的權值,先把藍色模組訓練收斂,然後再減少權值,整體訓練。

landmark迴歸loss為加權的L2 loss,其中Vj為其權值,代表landmark的可見性,對於不可見的就不進行梯度的回傳。

衣服類別分類和landmark是否可見分類,採用傳統的softmax crossentrop loss

衣服屬性分類採用加權的sigmoid crossentrop loss,Xj代表第j個衣服,aj代表第j個衣服的屬性,Wpos和Wneg代表正負樣本的權值

類內類間度量學習的loss採用triplet loss。(x, x+, x-) 表示三元組,m表示margin,d表示距離函式。

References: