X3D: Expanding Architectures for Efficient Video Recognition個人論文筆記

https://zhuanlan.zhihu.com/p/129279351
這篇X3D的解讀寫的比我早,寫的挺好的,但有些細節沒寫上,所以由於強迫症寫了這篇個人筆記

X3D爲一系列的高效視頻分類網絡(從2D圖像分類網絡不斷的從各個方面(multiple network axes)進行擴張如幀頻網絡深度等等,每次只從一個方面進行擴張);漸進的前向擴張後是一個後向壓縮從而達到一個固定複雜度的網絡;X3D系列最好的網絡準確率超越除IG65M預訓練的CSN之外所有網絡,而且只需要之前大約五分之一的計算量和參數;本文最意外的發現是網絡在保持input高像素的同時保持較少通道數可以達到非常好的表現

Candidate axes:
Temporal duration:clip時長
Frame rate:幀頻
Spatial resolution:長寬像素
Network width:所有conv的通道數
Bottlenect width:bottleneck 的通道數
Depth:網絡深度
在這裏插入圖片描述
本文主要啓發於之前增加網絡深度,輸入圖片像素,通道數導致的表現的提升,還基於ML中經典的特現選取(feature selection)方法,可以從最少的一組特徵開始每步增加一個引起表現增加最大的特徵(forward selection),也可以從所有特徵開始,每步減少最不影響表現的特徵(backward elimination);主要基於MnasNet改變不同網絡結構的EfficientNets(空間,通道數,網絡深度);與MnasNet相比,X3D一共5個step,每個step只訓練6個僅改變了一個方面(axes)模型,這樣的一步一步過程似乎有點忽略各種方法綜合在一起的相互影響,但確實非常的簡便,比起MnasNet要訓練8000多個不同的網絡

作者提出了幾個猜想:
1.長視頻稀疏採樣好還是短視頻稠密採樣好
2.視頻的像素增加的表現是否會飽和
3.slow pathway好還是fast pathway好
4.是同時增加所有ResBlock中每個的conv的通道數好,還是隻增加所有所有ResBlock的每個bottleneck的通道數好
5.增加網絡層數是否需要和增加輸入像素相對應(增加感受野),是否對時間像素和空間像素效果同樣
在這裏插入圖片描述
X2D,X3D結構主要來源於ResNet和SlowFast的Fast pathway部分,當這六個變量都爲1時,input size爲1*(112)^2,這時的X3D可以看作爲爲圖像分類模型X2D。所有網絡中無時間軸上的pooling或者stride
在這裏插入圖片描述
Z爲可能的網絡擴展因子組合,c爲目標複雜度,C爲FLOPS數,J爲準確率
前向擴張(Forward expansion)+反向壓縮(Backward contraction)

Kinetics-400 240K訓練樣本,20K驗證樣本,35K訓練樣本,400個人類動作類別
KInetics訓練技巧:train from scratch(random initialization),和slowfast訓練方法一致(同步SGD+MSRA initialization+BN+half-period cosine with initial lr 1.6+lr warmup+momentum 0.9+weight decay 10-5+dropout 0.5)
Charades訓練技巧:在kinetics預訓練模型上finetune,base lr=0.02,lr/10如果驗證集損失飽和,weight decay 10-5
每次一個視頻取一個一定幀數clip再做temporal striding,然後再對視頻進行random crop或者水平翻轉,將圖片寬隨機取樣128或160

更多細節:在對比X3D和EfficientNet3D時,使用之前訓練2D mobile model的技巧,SE Block,swish non-linearity(爲了節省資源均有限使用),且未使用linear-bottleneck(作者發現加入後會導致不穩定的分佈訓練);每次的expansion rate=2是因爲每次最小的可能的網絡擴張就是增加幀數;每個step增加1倍的FLOPS,從6個axes來講大致是以下操作(由於每步都有差異,所以以下各個axes的操作不一定使得FLOPS乘2,後續由於網絡變大會進行一個正則化的擴展,主要通過double batchsize,half lr,drop-connect):
在這裏插入圖片描述
推理:1.K-Center:均勻採樣一個視頻的10個clip,將圖片寬隨機取樣128或160,然後做center crop 2.K-LeftCenterRight:基本與上述一致除了取三個128*128 crop再做平均

同時X3D-XS,M,L與EfficientNet3D-B0,B3,B4相比,在kinetics400上的準確率均大於後者

結論:高時空像素的輸入和低通道數的網絡非常的高效

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章