1. 程式人生 > >【Person Re-ID】Person Re-Identification by Deep Learning Multi-Scale Representations

【Person Re-ID】Person Re-Identification by Deep Learning Multi-Scale Representations

Introduction

本文主要的考慮是:目前所有re-id的方法,不管是不是基於CNN的,第一步都是將影象resize到統一大小然後再來提取特徵。這種做法會模糊掉影象在不同尺度上的顯著性特徵,因此作者認為這樣的方法不是最優的,本文提出了一種在多尺度上提取特徵並且共同學習的方法,稱之為DPFL(Deep Pyramidal Feature Learning)。

Approach

網路機構如下圖所示:

這裡寫圖片描述

  • Single Scale Feature Learning

作者使用的主網路是42層的Inception-V3,每個scale上都是用同樣的網路結構進行softmax分類,得到每個scale上輸入影象的分類概率P

˜=[p1˜,...,pi˜,...,pnid˜]

  • Multi-Scale Consensus Learning

提取主網路最後一層卷積層的特徵cc2048維,然後加上averaging-pooling→vector concatenation→dropout得到2048*m維的向量,m為scale的個數。然後進行softmax分類,得到各個scale特徵融合之後的分類概率P=[p1,...,pi,...,pnid]

  • Feature Regularisation by Consensus Propagation

用融合之後的分類概率給每個scale的loss加上一個正則項

這裡寫圖片描述

其中

這裡寫圖片描述

Discussion

DPFL與Knowledge Distillation (KD)的不同的點在於:

  • 目標性:KD的目標是模型壓縮,通過將一個學習得很好的很大的teacher模型轉化為一個小的student模型。DPFL的共同學習是為了獲得不同scale上影象的判別性描述。

  • 動態性:KD需要一個預先訓練好的teacher模型。DPFL則是用所有scale的輸出生成teacher,然後用這個teacher約束每個scale的學習,是一個動態的過程。

Model Optimisation

從上面的學習過程可以看出這個網路的學習過程是有一定順序的,作者給出的演算法如下圖所示:

這裡寫圖片描述

總的來說就是 前向時先每個分支學習,然後每個分支上加上正則項;反向時先每個分支更新梯度,然後融合的分支更新梯度。

Experiment

  • Evaluation on Market-1501

這裡寫圖片描述

  • Generalisation to Different CNN Models

這裡寫圖片描述

點評:本文的做法很新穎,雖然主要考慮的是scale因素,但是如果用在parts上的話感覺會更合適,下去嘗試下。