Mask2Former徹底解説:Panoptic / Instance / Semanticを統一する“次世代セグメンテーション”

こんにちは、ゆずかきです。

ここからは、「Mask2Former」 の論文解説を、網羅的にまとめてみようと思います。
Mask2Formerは“Panoptic / Instance / Semantic Segmentation の全てをひとつのアーキテクチャで可能にする” と謳われており、既存のタスク専用モデルをしのぐ性能を叩き出す注目の研究です。

本記事では、『Masked-attention Mask Transformer (Mask2Former) for Universal Image Segmentation』 (arXiv:2112.01527v3, 2022)を題材に、可能なかぎり論文の全貌を噛み砕いてお伝えします。
Panoptic・Instance・Semanticという3つの重要課題を、どうやって1つのモデルで統合し、高精度化し、さらに学習も容易にしているのか? 論文の実験やアブレーションも含め、網羅的に解説していきます。

それでは早速、論文の核心に迫っていきましょう。

論文URL
👇
Masked-attention Mask Transformer for Universal Image Segmentation


§本記事の構成

  • はじめに: Mask2Former とは?
  • 論文の背景と従来モデルの課題
  • なぜ「統一アーキテクチャ」が必要なのか
  • Mask2Former の全体像:バックボーン・ピクセルデコーダ・Transformer デコーダ
  • キーポイント:Masked Attention と マルチスケールの使い方
  • 学習最適化:クエリ初期化やポイントベース損失など
  • 主要な実験(COCO・Cityscapes・ADE20K・Mapillary Vistas)
  • 性能評価:Panoptic / Instance / Semantic の各タスクでSOTAを超える
  • 追加アブレーション分析
  • 得られた知見と課題・今後の展望

最新の研究をたっぷり盛り込んでいるため、本記事はちょっと長めになるかもしれません。ご興味あるところから読み進めていただければ幸いです。


§はじめに: Mask2Former とは?

Mask2Former(正式名称 “Masked-attention Mask Transformer for Universal Image Segmentation”)は、Facebook AI Research(FAIR)と米国UIUCの研究者らが共同で執筆した論文です。2021年末からarXivに投稿され、2022年6月に最新バージョン(v3)が公開されています。

論文の主張ポイントは以下の通り:

  1. 画像セグメンテーション(panoptic・instance・semantic)をタスクごとに別のモデルを作らなくても、「1つの共通アーキテクチャ」で高精度に解ける。
  2. マスクアテンション(masked attention) を導入することで、Transformer デコーダの収束を劇的に高速化&性能向上 する。
  3. 単なる汎用性だけでなく、COCOやCityscapes、ADE20Kなど複数ベンチマークにおいて、タスク特化型の最新手法(SOTA)さえ上回る

つまり、「Panoptic / Instance / Semantic のどれも、Mask2Former 1本で可能にし、さらにSOTA越え」という野心的な研究なんですね。


§論文の背景と従来モデルの課題

画像セグメンテーションには、大きく3種類のタスクがあります:

  1. Semantic Segmentation:ピクセルごとに「クラス(カテゴリ)ラベル」を割り当てる。
  2. Instance Segmentation:個々の物体ごとにピクセルを分割(同じカテゴリでも別の個体は別マスク)。
  3. Panoptic Segmentation:Thing(物体)とStuff(背景領域)をあわせてシーン全体を網羅的に分割する。

本質的には、「ピクセルをどういう基準でグルーピングするか」が違うだけなのに、従来研究ではそれぞれ別アーキテクチャが設計されてきました。
たとえば:

  • Semantic Segmentation → Fully Convolutional Networks (FCN) 系(DeepLab, PSPNetなど)
  • Instance Segmentation → Mask R-CNNCondInst / SOLO
  • Panoptic Segmentation → Semantic + Instance を組み合わせるか、あるいはPanoptic専用のObjectiveを用意する手法

こうした「専用設計」は性能面では確かに強みがありますが、再利用性・拡張性に乏しく、研究開発コストも大きい というデメリットがありました。
さらに、最近登場した MaskFormer(2021年 NeurIPS) や K-Net など「ディテクタ風のセット予測 (set prediction)」を導入した普遍的なマスク分類アーキテクチャの流れは、PanopticやSemanticではSOTA級の精度を達成しつつも、Instanceセグメンテーションにおいては未だ専用手法(Swin-HTC++など)のほうが強い、という課題が残っていました。

同時に、学習コストが高い(収束遅い / 大量epoch必要 / GPUメモリ大量消費) といった問題もあり、“普遍的なモデル”を実際に運用するには壁があったわけです。

Mask2Formerは、こうした問題を解決しようとするユニバーサル・アーキテクチャでありながら、より早く収束し、より高精度を実現する点が大きなインパクトとなっています。


§なぜ「統一アーキテクチャ」が必要なのか

Universal Image Segmentation と称される試み(K-Net, MaskFormerなど)の背景には、研究開発効率と適用範囲の拡大というメリットがあります。

  • 研究効率:Panoptic / Instance / Semantic の3つを別々の設計で行うより、1つのフレームワークで済めば、実装やハイパーパラメータチューニング、推論パイプラインの最適化が1回でできる。
  • 柔軟な拡張:新たに違うセグメンテーションタスクが登場しても、同じマスク分類(set prediction)として位置付ければ適用が容易。
  • Transformerベース:attention 構造のおかげで「ピクセルベース」「オブジェクトベース」のいずれの粒度にも柔軟に対応できる余地がある。

しかしながら、先述したようにトレーニングコスト性能差の壁があり、「結局どれもそこそこイケるけど、一番強いモデルには勝てない&トレーニングはめちゃ大変」というのが既存のユニバーサル・アーキテクチャの現実でした。


§Mask2Former の全体像

1. 大まかな流れ

Mask2Formerは、セット予測型のマスク分類 というフレームワークを踏襲しています。
全体アーキテクチャは以下の3つのパートから構成:

  1. Backbone:画像を低解像度の特徴マップへ変換(ResNetやSwin Transformerなど)。
  2. Pixel Decoder:バックボーン出力をアップサンプリングしつつマルチスケール特徴量を集約(FPN, FaPN, MSDeformAttnなど)。
  3. Transformer Decoder:クエリ(query)と呼ばれる“セグメントを表す埋め込み”を用い、ピクセル側特徴量と相互作用させながらマスクおよびクラスを推定。

このフロー自体は、2021年末に提案された MaskFormer とほぼ同様です。
しかしMask2Formerでは、Transformer Decoder 部に大幅な改良が加えられ、学習の収束を早め、精度も引き上げているのが最大の目玉です。

2. マスク分類 (mask classification) とは?

Mask2Formerも DETR (Object Detectionタスクで話題になったTransformerベース手法)と同様に、マスクを一定数(N個)出力して、それらを最適なGTに割り当て(set prediction)する という仕組みを使っています。
具体的には、クエリベクトル(C次元など)を Transformer Decoder で更新した上で、各クエリに対応したマスクとクラスを出力する、という設計です。

  • 出力マスク:ピクセルデコーダが作った高解像度のピクセル埋め込みと、クエリの内積(または相性)を取って生成。
  • 出力クラス:各クエリの最終埋め込みを線形変換して、クラス分類(+ “no object”)を行う。

推論時には、各クエリのマスクを重ならないように合成すれば「panopticセグメンテーション」が得られますし、クエリごとにインスタンスを表す使い方(かつスコア順に並べる)をすれば「instanceセグメンテーション」もできます。クラスをまとめてしまえば「semanticセグメンテーション」にもなる。これこそがユニバーサルたるゆえんです。


§キーポイント1: Masked Attention

Mask2Former最大の改良点は、Transformer DecoderのCross-Attention部分を「Masked Attention」に置き換えたこと。

1. 背景:Cross-Attention は本当に全部を見渡す必要がある?

標準的なTransformer Decoderでは、各クエリ(オブジェクト埋め込み)がすべてのピクセル位置をアテンションの対象にします。 これは強力な一方で、

  • 学習が遅い(特に初期段階で無駄に広範囲に注意が広がる)
  • 本当はクエリがフォーカスしたい領域のピクセルだけを見れば十分
    といった問題がありました。

実際、多くの異なる位置を緩くアテンションしてしまうと、Foreground / Background の境界が曖昧なまま学習が進むリスクが高まります。

2. マスクを介した局所的注意

そこで Mask2Formerでは、Decoderの各レイヤがマスクを予測し、そのマスク領域内ピクセルのみに注意を限定するという仕組みを採用。
論文中で“Masked Attention” と呼ばれる演算は、以下の式で示されます(単純化した概念例):

X_l = softmax( (M_{l-1}) + Q_l K_l^T ) * V_l + X_{l-1}

ここで、

  • ( M_{l-1} ) は閾値(0.5など)でバイナリ化した前レイヤのマスク予測
  • もしピクセル(x, y)が1(=前レイヤの予測でforeground)なら、そのピクセル位置へのアテンション重みを許容する。逆に0ならアテンション0扱い。

これにより、クエリは自分が対応しているマスク領域の情報を集約しやすくなり、早期からオブジェクト中心のアテンションを構築できるわけです。
実験では、Masked Attentionによって学習収束が高速化し、性能も向上することが確認されています。


§キーポイント2: マルチスケール高解像度特徴の効率的活用

もう1つの改良点として、Mask2Formerは高解像度な特徴マップ(例: 1/8スケールなど)をTransformer Decoderに効果的に与える仕組みを用意しました。

1. ただ闇雲に全解像度を与えると重い

従来、DETR系などは1/32スケールの特徴マップだけにアテンションするものが多かったですが、それでは小さい物体を正確に切り出すのが難しい。
一方で、すべての層に対して1/8や1/4などの高解像度特徴を使おうとすると、計算負荷が膨大になってしまいます。

2. ラウンドロビン的に解像度を切り替える

そこで論文では、「Decoderの各レイヤごとに、異なる解像度の特徴マップを順番に使う」という方法を提案。
例えば最初の層では1/32スケール、次の層では1/16、さらに次では1/8…とマルチスケールで順々にアテンションする、という具合です。
これにより、小物体も大物体も段階的にターゲットにでき、かつ1レイヤずつ注目領域を変えるので無駄な計算を増やさずに高解像度を活かせる仕組みを作っています。


§学習最適化: クエリ初期化やポイントベース損失など

Mask2Formerでは、このTransformer Decoderの構造以外にも、以下の学習最適化が効果を発揮したと報告しています。

  1. クエリ特徴を学習可能に & 直接マスク損失を与える
  • DETRではクエリベクトルをゼロ初期化していましたが、Mask2Formerではクエリ自体を学習パラメータとし、その時点からマスクを出力して損失を与える。
  • これにより、クエリが“領域候補”として機能するようになり、後段のTransformer Decoderでさらにブラッシュアップされる。
  1. Self-AttentionとCross-Attentionの順序を入れ替える
  • デフォルトのTransformerでは「Self-Attention → Cross-Attention → FFN」という順序ですが、Cross-Attentionを先にして、Self-Attentionを後に変えている。
  • 従来の順序では「初期クエリが画像由来の情報を何も持ってない状態でSelf-Attentionしても仕方ない」とされ、Cross-Attentionを先にし、早期から画像情報を取り込むほうが効率が良い。
  1. Dropoutの削除
  • 学習でoverfittingを抑える目的などで用いられていたDropoutを、実験上は除外したほうが精度向上したためカット。
  1. マスク損失を全ピクセルではなく一部サンプリングした点に対してだけ計算
  • 従来のMaskFormer実装では、GTマスクと予測マスクの損失計算が高解像度ピクセル全域にわたったため、学習メモリ消費が膨大だった。
  • Mask2Formerでは、PointRend系の手法を参考に、マスクロスを一部ピクセル(例: 112×112=12544点)だけで計算し、大幅にメモリ削減(約1/3)に成功。

これらの細かな最適化の積み重ねが、学習の安定・高速化と精度向上の両立に寄与しているわけです。


§主要な実験:COCO / Cityscapes / ADE20K / Mapillary Vistas

論文では、以下4つの大規模ベンチマークを用いて、Panoptic / Instance / Semanticの3タスクで性能検証を行っています。

  1. COCO:80 “things” + 53 “stuff”(計133カテゴリ)
  2. Cityscapes:19カテゴリ(内8がthings, 11がstuff)
  3. ADE20K:150カテゴリ(内100がthings, 50がstuff)
  4. Mapillary Vistas:65カテゴリ(37がthings, 28がstuff)

それぞれで学習スケジュールやデータ拡張(LSJ: Large Scale Jitteringなど)を組み合わせつつ、ResNet-50/101やSwin Transformer など様々なバックボーンを差し替えて比較しています。


(1) Panoptic Segmentation

COCO Panoptic では、Mask2Formerは PQ=57.8 を達成。
これは既存のSOTAであるMaskFormer (52.7 PQ)やK-Net (54.6 PQ)を上回り、5ポイント以上の大幅向上。
さらに Panoptic-DeepLabSwin-HTC++ など手法にも勝り、新しいSOTAを樹立しています。

Cityscapes や ADE20K、Mapillary Vistas でも同様に高いPQを記録し、論文中ではPanopticタスクのすべてで先行手法を上回るとされています。

Panopticモデルが Instance / Semantic へ応用可能

また、Mask2Formerが出力するマスク&クラスは使い回しが利くため、panoptic向けに学習したモデルでも instance or semantic として利用可能です。
COCO panoptic学習モデルの出力を、インスタンス観点で評価(AP)してみても既存手法と同等以上、セマンティック観点(mIoU)でも上位性能を示す、と論文では報告されています。
「1つのモデルで3タスクすべてにアダプト可能」という点を具体的に示しているわけですね。


(2) Instance Segmentation

COCO Instance Segmentationでは、AP=50.1 (Swin-Lバージョン)を叩き出し、Swin-HTC++ (AP=49.5) や QueryInst (AP=48.9) より高いスコアを達成。
特に、Boundary AP(物体の境界品質を評価)も2ポイント以上リードしており、高解像度マスクの強みが活きているとされています。

一方で、小物体 (small) の APs ではまだ伸び代ありと指摘しており、dilated backbone などを組み合わせればさらなる改善が見込まれる、と論文は示唆しています。


(3) Semantic Segmentation

ADE20K では、mIoU=57.7(Swin-L + FaPN + Multi-scale推論時) という新たなSOTAを記録。
従来の BEiT (56.7 mIoU) や Swin-UperNet (53.5~54.0) を上回る結果となりました。

また、Cityscapes や Mapillary Vistas でも、Mask2Former がすべてのバックボーン構成において先行手法をリードしています。


§性能評価まとめ:なぜそんなに強い?

Mask2Former の強さは、主に次の3点に集約されます:

  1. Masked Attention
  • 不要な領域にまでアテンションが拡散せず、早期からフォアグラウンドに集中できる → 収束の速さ精度を両立。
  1. マルチスケール高解像度を効率活用
  • 小物体も見逃しにくく、Boundary APのような境界品質の向上にも寄与。
  1. 学習最適化
  • クエリを学習可能にし、初期段階からマスク予測を行う → より堅牢かつ高速に学習
  • マスク損失をピクセル全域からランダムサンプリングGPUメモリが1/3になるほど削減

結果として、Inference時にもSOTAを超える精度競合手法より少ないエポック数で到達できる、というメリットが示されています。


§追加アブレーション分析

論文では、さらに詳細なアブレーションを実施しており、以下の知見が得られています:

  1. Masked Attention vs. 従来の Cross-Attention
  • Masked Attention をOFFにすると、PQ / AP / mIoUが大きく下がる
  • SMCA(Spatially Modulated Co-Attention)やMaskPooling(K-Net)等の比較をしても、Masked Attentionが最強。
  1. 高解像度シングルスケールの利用だけでも強いが、計算負荷アップ
  • 1/8解像度だけでDecoderに入れると、性能は出るがFLOPsが激増。
  • 提案の効率的マルチスケールで同等以上の性能を確保しつつ、FLOPsを削減している。
  1. Pixel Decoderの違い(FPN, FaPN, BiFPN, MSDeformAttn)
  • どのデコーダとも組み合わせ可能だが、MSDeformAttnを使うと全タスクで安定して最も高いスコア。
  • タスク特化で言えば、SemanticならFaPNが好成績、InstanceならBiFPNが良いなど差がある。
  • しかし、Mask2Formerのユニバーサル性を最大化するならMSDeformAttnが無難に最強。
  1. Queryの数
  • 100クエリ程度がバランス良い。Panopticで多数セグメントを考慮するなら200クエリもよいが、FLOPsは増える。
  1. Zero-initialized vs. Learnable Query
  • どちらも性能に寄与はあるが、Learnable Queryにしてその時点から損失を与える設計が最も良い。
  1. 学習エポック
  • 従来のDETRが何百epochも必要だったのに比べ、Mask2Formerは50~100epoch程度で十分高性能に到達。
  • LSJ等のデータ拡張と組み合わせると、25epoch程度でも性能がかなり高くなる。

§得られた知見と今後の展望

1. 統一モデルでSOTA性能

Mask2Formerは、Panoptic / Instance / Semanticいずれのタスクにおいても専門特化手法と同等、あるいはそれ以上の性能を達成しました。
しかも、学習のしやすさ(収束の早さ / メモリ削減)を同時に実現しており、実務レベルでも使いやすい方向へ進化しています。

2. 完全な “1モデル多タスク学習” への道

現状は「同じアーキテクチャでも、タスクごとに別学習」なので、1回の学習でPanoptic/Instance/Semanticを兼ねるとはまだ言えません。
今後は、単一モデルを一度だけ学習してマルチタスクを一括で解く という夢に近づく可能性があります。
特に、大規模Foundation Modelの流れとも相まって「1モデルですべてのセグメンテーションを包含」というビジョンは、そう遠くないかもしれません。

3. 小物体への対応

Mask2Formerは小物体にはまだ課題が残ると論文では認めており、dilated backboneより細かい特徴抽出さらなるマルチスケール強化などで精度向上が見込まれます。

4. Attention制御の新展開

Masked Attentionの有効性が示されたことで、「アテンションを局所領域に制約する」 という設計が今後も盛んに研究される可能性があります。
特に、diffusionモデルやVision-Languageモデルなどにも応用すれば、推論の解釈性や収束速度改善に繋がるかもしれません。


§まとめ

Mask2Former は、「Universal Image Segmentation」という夢にかなり近づいた新手法であり、Panoptic / Instance / Semanticの三役を単一設計で高水準にこなしてしまいます。
具体的なポイントを再掲すると:

  • Masked Attention による局所的・高効率な情報集約 → 高速収束&高精度
  • マルチスケール高解像度 の活用と、それをレイヤ単位で切り替える効率策
  • 学習最適化(Learnable Query+初期マスクロス、マスク損失のポイントサンプリング)により大幅メモリ削減
  • COCOやCityscapes, ADE20K, Mapillary Vistasといった代表的ベンチマーク全てでSOTA級の精度を実現

今後は、小物体への強化や完全マルチタスク学習の実装など、さらなる発展が期待されます。が、「Panoptic/Instance/Semanticを一気通貫に解く」というアイデアの正当性を強く示す研究成果と言えるでしょう。

大規模ビジョンTransformer が台頭してきた今、ユニバーサル・アーキテクチャとしてのMask2Formerは、多くのアプリケーションにインパクトを与える可能性があります。
私としても、「セグメンテーション実装を複数用意するのではなく、一つの仕組みでカバーしたい」と考える際に、最有力候補となるかもしれません。

少々長めの記事となりましたが、最後まで読んでいただきありがとうございました!


🔑この記事のポイントまとめ

  • Mask2Former:Panoptic / Instance / Semanticをすべて1つのモデルで解くユニバーサルアーキテクチャ
  • Masked Attention:クエリが前レイヤ生成のマスク領域だけに注意を向ける → 学習効率UP & 高精度化
  • マルチスケール:各Transformerデコーダ層ごとに解像度を切り替え、高解像度を活かしつつ計算コストを抑制
  • 学習最適化:Learnable Query、Dropout削除、Points-based mask loss(メモリ1/3に削減)など多彩な工夫
  • SOTA超え:COCOやADE20K, Cityscapes, Mapillary Vistasで既存手法より高いPQ / AP / mIoUを実現

§おわりに

以上、Mask2Former 論文の内容をまとめました。
同じ手法でPanoptic / Instance / Semanticのすべてに対応し、専門特化モデルを凌駕する精度を発揮するという、まさに“ユニバーサル”の名にふさわしいアーキテクチャです。

深層学習の研究がどんどん巨大化・汎用化に進む中で、今回のMask2Formerの発想はさらに別のマルチモーダル分野や大規模事前学習モデルに波及していくかもしれません。
日々発展の著しい領域ですので、ぜひ今後のアップデートにも注目してみると面白いでしょう。

それでは今回はこの辺で。最後までお読みいただき、ありがとうございました!


画像解析

Posted by yuzukaki-dialog