Can Spatiotemporal 3D CNNs Retrace the History of 2D CNNs and ImageNet?を読んだまとめ
0. この投稿の概要
1. 論文の内容
目的
- ImageNetにより層の深い(2D)ResNetが成功した歴史をKineticsと3D ResNetが同じ道を辿るか実験する。そのために行動認識タスクで3D ResNetの層を深くすればするほど性能が高まることを示す。
- 動画のデータセットではHMDB-51とUCF-101が使われてきたが、より大きなActivityNetやKineticsが近年発表された。本論文ではこれらのデータセットを実験の対象にする。
- 行動認識タスクのモデルとして、RGBとoptical flowをそれぞれ2D CNNの入力するTwo-Stream CNNがある。2つのStreamがそれぞれ空間、時間方向の特徴を抽出する。
- より直接的にspatio-temporal特徴量を抽出するために3D CNNが提案された。VGGを3D化させたようなC3D、Inceptionの3D版であるI3D、更にResNetの3D版も提案されているが層は比較的浅いものに限られている。
実験
- 実験にはResNetとその派生のモデルを使用した。各モデルのブロックは以下の図のような構成で、これを複数つなげることでResNetを構成する。
実験1
- 各データセットで比較的浅いResNet-18を最初から学習する。Kineticsでのみ良い精度が得られるという過去の結果を再現する。
- [結果]Kinetics以外のデータセットではvalidation lossとtraining lossで大きな乖離があり、オーバーフィットしていることがわかる。逆にKineticsではオーバーフィットは起きておらず、より深いResNetでも学習が可能なことが示唆されている。
実験2
- KineticsでResNet-18~200を学習し、どこまで深いネットワークを学習できるか検証する。
- [結果]層が深くなるほど精度は上がり、152層で飽和している。この傾向は2D CNNのよるImageNetの分類と同様。
- 今回の最も良い結果はResNeXt-101だが、Two-stream I3Dの方が高い精度が出ている。
実験3
- Kineticsで学習したモデルをHMDB-51やUCF-101でfine-tuningをする。これにより3D CNNでも転移学習が有効であることを示す。*最後のCNNブロックと全結合層のみ再学習している。
- [結果]scratchで学習した場合に比べて明らかにfine-tuningした方が高い精度を持つ。Kineticsと同様に、深い層程精度がよくなり、ResNeXt-101が最も良い結果となった。