論文まとめ:SegNeXt: Rethinking Convolutional Attention Design for Semantic Segmentation
- タイトル:SegNeXt: Rethinking Convolutional Attention Design for Semantic Segmentation
- 著者:Meng-Hao Guo, Cheng-Ze Lu, Qibin Hou, Zhengning Liu, Ming-Ming Cheng, Shi-Min Hu
- 所属:清華大学、南開大学、Fitten Tech
- コード:https://github.com/Visual-Attention-Network/SegNeXt
- カンファ:NeurIPS 2022
目次
ざっくりいうと
軽量性と精度を両立したのが売りのセグメンテーションモデル。CNNベースにもかかわらず、Transformerベースのモデルに対して勝利。
先行研究のDeepLabV3+、SegFormerなどのモデルに見られた工夫を取り入れつつ、計算量オーダーを削減している。
実装を見ると
公式実装より、コードベースでモデルを見てみる。
例えば、SegNext-Tinyの場合は、バックボーンに本研究で導入されたMSCANを、Decode Headに先行研究のHamburger Head(LightHamHead)を使っている。
model = dict(
type='EncoderDecoder',
backbone=dict(
init_cfg=dict(type='Pretrained', checkpoint='pretrained/mscan_t.pth')),
decode_head=dict(
type='LightHamHead',
in_channels=[64, 160, 256],
in_index=[1, 2, 3],
channels=256,
ham_channels=256,
ham_kwargs=dict(MD_R=16),
dropout_ratio=0.1,
num_classes=150,
norm_cfg=ham_norm_cfg,
align_corners=False,
loss_decode=dict(
type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0)),
# model training and testing settings
train_cfg=dict(),
test_cfg=dict(mode='whole'))
MSCANとは
ResNeXtインスパイアなブロック構造。Depthwise Convを多用し、AttentionもCNNベースのもの。
各ステージ構造はかなりResNeXt。チャンネル数とレイヤー数をスケールすることでパラメーター数をコントロールするResNet系でありがちな構造。
HamNetのHead
セグメンテーションのHeadの部分は、先行研究のHamNetを使用。HamNetの論文より
Attentionの代わりに、行列分解(Matrix Decomposition)を使ったHead。行列分解の部分が具で、線形変換の部分がパンだからハンバーガーとのこと。
高解像度で25FPS
Papers with codeを見ればわかるが、計算量度外視してSoTAを狙いにいくモデルではない。あくまでGFLOPsと精度の効率が良い。Transformerベースに対して良好な結果を残している。
3090GPU1枚+つよつよCPUでTinyが25FPS。入力解像度が768×1536という、やや高めの設定を割り引いて見ると速度出ている。表の他のモデルは全てリアルタイム出るモデル。
どれが効いている?
1×1Convが一番効いている(Channel Mixing)。次に11×11や21×21の大きめのブランチ。
ライセンスについて
コードをApache-2.0ライセンスで公開しているが、商用利用に関しては以下の注意書きがある。
This repo is under the Apache-2.0 license. For commercial use, please contact the authors.
おそらくコードに含まれる比較対象のSegFormerがNVIDIAライセンスだからと思われる(MMSegでもここだけ例外扱いしている)。 MMSegmentaionに準じたコード設計なので、 SegNeXtの部分だけMMSegmentaionに統合されればどうなのだろう?(元となったHamburgerの公式がGPL-3.0なので怪しい雰囲気はなくはないが)
感想
Convだけでわかりやすい。「大きめの畳み込みカーネルを使えば、CNNでもTransformerに引けを取らない精度が出るよ」というどこかでみたような主張だが、これでNeurIPS 2022通っているのが驚き。
Shikoan's ML Blogの中の人が運営しているサークル「じゅ~しぃ~すくりぷと」の本のご案内
技術書コーナー
北海道の駅巡りコーナー