Upgrade to Pro — share decks privately, control downloads, hide ads and more …

[Journal club] Pix2seq: A Language Modeling Framework for Object Detection

[Journal club] Pix2seq: A Language Modeling Framework for Object Detection

More Decks by Semantic Machine Intelligence Lab., Keio Univ.

Other Decks in Technology

Transcript

  1. Ting Chen1, Saurabh Saxena1, Lala Li1, David J. Fleet1, Geoffrey

    Hinton1 1: Google Research, Brain Team 慶應義塾大学 杉浦孔明研究室 小槻誠太郎 T. Chen, S. Saxena, L. Li, D.J. Fleet, and G. Hinton, “Pix2seq: A language modeling framework for object detection,” ICLR, 2022.
  2. 背景 – 既存の物体検出モデルは “Task-Specific” 特殊な入力(Bounding box + Class labelの集合) を扱うため特別な構造を用意

    Bounding boxの集合を扱うための 専用の損失関数や評価指標 ➔ 1. 学習が複雑になる ➔ 2. 汎用性を失う / 他のタスクへ応用 ➔ 2. するためにモデルの再設計が必要 4 e.g. Region proposals RoI pooling e.g. Box regression Set-based matching IoU
  3. 関連研究 – 既存の物体検出モデルは “Task-Specific” 5 Faster R-CNN [Ren+, NeurIPS15] •

    標準的な物体検出手法 • Bounding boxの集合を予測するため大量のProposal • 人手で設定する要素(Anchorsなど)に依存 • 重複を削除するためによくNMSが用いられる DETR [Carion+, ECCV20] • Transformerを採用し、End-to-Endの物体検出 • 大量のProposalを出してNMSを行うことを避けた • 学習で獲得する”object query”が必要
  4. Sequence construction – Bounding boxを離散トークンに Class labelはもともと離散トークンとして表現される(object idなど) 8 1.

    Bounding boxの位置座標 2. 正規化した位置座標 → (54, 261, 439, 409) → (0.11, 0.41, 0.91, 0.64) → (55, 205, 454, 319) 画像のサイズに寄らず一定の 整数値から選ばれるようになる
  5. Sequence construction – Bounding boxを離散トークンに Class labelはもともと離散トークンとして表現される(object idなど) Bounding boxも離散トークンに変換

    一つの物体に対して最終的に得られるトークン列は [ , class] ➔ LMにおけるDecoderの入力(全ての物体の情報)は [SOS, 1 1 1 1, class1, classL, EOS] 9 → (54, 261, 439, 409) → (0.11, 0.41, 0.91, 0.64) → (55, 205, 454, 319) → [55, 205, 454, 319, 1764]
  6. Sequence augmentation – 検出漏れ+誤検出の低減 LMにおけるDecoderの入力は [ 1 1 1 1,

    class1, classL, EOS] EOSが { 早く出る→検出漏れが増加 / 遅く出る→誤検出, 重複が増加} EOSを遅く(たくさん検出)し, かつ ➔ ??? 10
  7. Sequence augmentation – 検出漏れ+誤検出の低減 LMにおけるDecoderの入力は [ 1 1 1 1,

    class1, classL, EOS] EOSが { 早く出る→検出漏れが増加 / 遅く出る→誤検出, 重複が増加} EOSを遅く(たくさん検出)し, かつ ➔ ➔ 11
  8. LMにおけるDecoderの入力は [ 1 1 1 1, class1, classL, EOS] EOSが

    { 早く出る→検出漏れが増加 / 遅く出る→誤検出, 重複が増加} EOSを遅く(たくさん検出)し, かつ ➔ ➔ Sequence augmentation – 検出漏れ+誤検出の低減 12 後半に偽bounding boxを追加 偽bounding boxに対する座標の予測はback prop.しない (どこからが偽物かは学習時は分かるので狙ってdetach可能)
  9. Architecture – シンプルなEncoder-Decoder型 Encoder : 画像をベクトル表現に埋め込めるモデル e.g. CNN / ViT

    / … Decoder : transformerのdecoderを利用 実験ではEncoderはDETRを踏襲↓ (CNNで得た特徴マップをflattenしてencoderに通す) 13
  10. Objective / Loss function – Language Modelingと同様 LMで標準的に利用される対数尤度の最大化 maximize ෍

    𝑗 𝑤𝑗 log 𝑃 ෤ 𝑦𝑗 𝑥, 𝑦1:𝑗−1 ) 𝑥 : 画像 ෤ 𝑦 : トークン列のGround truth 𝑦 : 予測したトークン列 𝑤𝑗 : 著者らは1にしたが、class tokenへの重みづけを増やしたりできる 14
  11. 定量的結果 – Faster R-CNN, DETRに対しcompetitive Scratchで学習 (Dataset : COCO) 物体の大小について

    性能のバランスが良い Pix2Seqに比べて (DETRは小物体に弱い) (Faster R-CNNは (大物体に弱い) 16
  12. Appendix – Links • Paper (ICLR2022) • Discussion @OpenReview •

    Official Implementation (TensorFlow) • Official Blog • Demo (Colab.) 19
  13. Appendix – Ablation study: Sequence augmentation 22 ↑From scratch on

    MS-COCO ↑Objects365でpretraining / COCOでfine-tuning