Sleep like a pillow

Deep Learning関係の話。

TransFG: A Transformer Architecture for Fine-grained Recognition

論文リンク

実装リンク

どんなもの?

  • Fine-grained Visual Classification (FGVC, 詳細画像分類: ある特定の対象領域における高粒度の多クラス画像分類。例えば動植物の種類識別など) タスクにVision Transformerを応用した論文。
  • FGVCの最近の研究では識別性が高い画像領域を特定し、そこからクラス間の微妙な差異を捉えることで性能を向上させている。
  • 本研究ではTransformerベースのフレームワークとしてTransFGを提案する。TransFGはViTのAttention Mapを利用して識別性の高い画像領域を特定する。具体的な手順は以下。
    1. ViTのTransformer層がL層あるとしたら、第1~(L-1)層のattention weightsを統合してattention map (shapeは[batch_size, num_heads, num_tokens - 1])を生成する。
    2. Part Selection Moduleによって、各ヘッドのattention map上で最大値を持つトークンのインデックスを取得する(attention mapのaxis=2のargmaxを取得する)。
    3. インデックスに対応する第(L-1)層のトークンベクトルとCLSトークンベクトルのみを第L層のTransformer層に入力する。
  • 上記のフレームワーク + 特徴表現の識別性を高めるためにconstastive lossを導入することで、FGVC系のデータセットのCUB-200-2011, Stanford Cars, Stanford Dogs, NABirds, iNat2017でSOTAを達成。
  • TransFGに対する理解を深めるために、Part Selection Moduleで選択されたトークンを可視化するなどの定性的な結果も示している。

f:id:uiiurz1:20210418112650p:plain

有効性の検証

  • FGVC系のタスクでCNNベースのSOTAとViTの精度を上回る結果。

f:id:uiiurz1:20210418112706p:plain

  • Part Selection Moduleで選択された領域の可視化。1,3行目が選択されたパッチ領域で、2,3行目がattention map。

f:id:uiiurz1:20210418112722p:plain