論文理解:DeepFashion: Powering Robust Clothes Recognition and Retrieval with Rich Annotations
即將入坑的和已經入坑的小夥伴可以新增QQ群交流:
AI服裝檢索分類
474700336
主要包含兩個工作:
1. 建立了一個服裝資料集DeepFashion,包含80萬張服裝影象,有類別,屬性,特徵點以及服飾框的標註。詳情可以參考我的另一篇部落格DeepFashion: 服裝公開資料集概述。
2. 提出一個深度學習模型FashionNet,結合服飾屬性和特徵點進行服飾的特徵提取,可以較好的應對服飾的變形遮擋等問題。
文中提出結合特徵點能夠有助於服裝識別,同時,大量的屬性資訊能夠更好的劃分服飾特徵空間,從而能夠有助於服飾的識別和檢索。示意圖如下:
FashionNet的網路結構類似VGG-16,只是將VGG16的最後一個卷積層進行了修改,改成能夠處理服裝landmarks,屬性和類別的網路。最後一層的網路示意圖如下。
從上圖可以看出,VGG16的最後一個卷積層由作者設計的三個分支代替。
最右側藍色分支進行特徵點可見性預測以及位置迴歸。
中間綠色的分支,有兩個輸入:VGG16的conv4 + 右側藍色特徵點的分支輸出結果,根據特徵點的位置進行區域性feature pooling。這一步有助於應對服飾變形和遮擋問題。
左邊橘色分支,進行全域性的特徵處理。
綠色和橘色分支運算的結果經過fc7_fusion進行融合,預測服裝的類別,屬性和pairs
反向傳播過程定義了4中損失函式:
(1)迴歸損失,用於特徵點位置估計損失計算。
(2)softmax損失,用於特徵點可見性以及服飾類別估計損失計算。
(3)cross-entropy損失,用於屬性預測損失計算。
(4)triple損失,用於服飾pairs預測損失計算。
FashionNet是通過將以上4中loss進行加權處理進行優化的。訓練過程分兩步:
step1: 將特徵點可見性預測與位置估計作為主任務,其餘作為輔助任務,因此該過程中給L_visibility 和 L_landmark較大的權重,其餘損失賦予較小的權重。
由於任務間有一定的相關性,因此這種多工聯合處理的手段能夠加速收斂。
Step2: 使用特徵點分支的預測結果,進行類別,屬性以及pairs的預測。
以上兩步不斷迭代直至收斂。
實驗部分未完待續