1. 程式人生 > >【論文閱讀】Learning Spatio-Temporal Features with 3D Residual Networks for Action Recognition

【論文閱讀】Learning Spatio-Temporal Features with 3D Residual Networks for Action Recognition

【論文閱讀】Learning Spatio-Temporal Features with 3D Residual Networks for Action Recognition

這是2017ICCV workshop的一篇文章,這篇文章只是提出了一個3D-ResNets網路,與之前介紹的一篇文章連結地址非常非常相似,在結構上只有一點點不同,既然如此,那麼我為什麼還要介紹這一篇文章呢,因為本文最大的貢獻就是它的github程式碼。這篇文章的程式碼算是我的啟蒙程式碼,寫得非常地整潔規範,所以我極力推薦大家下載下來看一看。

論文地址:下載連結
原文github地址:下載連結

正文

本文提出了3D-ResNets網路,該網路基於2DResNets網路而來,雖然文章只實驗了18層和34層的網路,但是在它的github中提供了各種深度的網路。它的github中提供了效果很好的用於時空特徵提取的在kinetics上預訓練了的模型,建議大家可以star一下。

3D-ResNets網路結構

文章提出的3D-ResNets網路結構如下表所示:
在這裡插入圖片描述
可以看到該網路結構真的與之前介紹的一篇非常相似,這裡就不再多贅述了。網路的輸入為16x112x112。

訓練細節

訓練的時候:優化演算法為動量隨機梯度下降法,學習率初始化為0.1,當驗證集的準確率連續下降3次時學習率乘以0.1,動量為0.9,weight decay為0.001,batch size為256。測試的時候,視訊被分成若干不重疊的16幀的視訊段,結果為所有視訊段的結果的平均。輸入的16幀視訊是從原視訊中均勻取樣得到的,使用了資料增強的方法,包括:

  1. 在5個不同的尺度下進行空間裁剪,尺度設定為 { 1 , 1 2 1 4
    , 1 2 , 1 2 3 4 , 1 2 } \left \{ 1,\frac{1}{2^{\frac{1}{4}}},\frac{1}{\sqrt{2}},\frac{1}{2^{\frac{3}{4}}},\frac{1}{2} \right \}
  2. 空間裁剪時在視訊幀的4個角和中心處的進行空間裁剪
  3. 水平隨機翻轉

實驗結果

文章使用3D-ResNets和C3D分別在kinetics上進行了訓練,實驗結果如下圖所示:
在這裡插入圖片描述
可以看到上圖右側C3D的驗證集準確率要高於訓練集,所以欠擬合了。而3D-ResNets則沒有欠擬合,表明對於kinetics資料集來說,C3D網路太小了。

結論

介紹這篇論文主要還是為了讓大家關注它的github,哈哈。