162 Views
November 29, 25
スライド概要
AI・機械学習を勉強したい学生たちが集まる、京都大学の自主ゼミサークルです。私たちのサークルに興味のある方はX(Twitter)をご覧ください!
2025年度前期第2回 論文読会 Rethinking Transformers Pre-training for Multi-Spectral Satellite Imagery SatMAE++: 衛星画像のための Masked Autoencoder Mubashir Noman, Muzammal Naseer, Hisham Cholakkal, Rao Muhammad Anwar,Salman Khan,Fahad Shahbaz Khan Mohamed bin Zayed University of AI, Australian National University, Linkoping University ICVPR 2024/2403.05419v1 https://arxiv.org/abs/2403.05419 https://github.com/techmn/satmae_pp KaiRA社会人メンバー 柴田 たけお 0
■ 愛知県名古屋市生まれ豊田市育ち ■ 大学は東北、大学院はUCバークレーで地物専攻 ■ 本業ロサンゼルス商社のデータサイエンティスト 個人でAI関連含むプロジェクト多数やったつもり ■ 愛知県豊田市の空家に年数回滞在(日米2拠点生活) 興味のある仕事 写真 ■ ■ ■ ■ システム開発 先端技術と情報技術の融合と応用 データサイエンス AI(生成AI,分析AI,識別AI), 統計や機械学習 ■ ■ ■ ■ キャンプやハイキング 自転車旅行 青春18切符でのんびり列車旅行 食べること 趣味
目次 ■ ■ ■ ■ ■ ■ ■ ■ ■ SatMAE++ 概要:何が問題で何を解決した論文? 関連研究:衛星画像の表現学習,マルチスケール情報の利用 背景: Masked Auto-Encoder (MAE) 結論 実験(モデルとデータセットおよび結果) まとめ テストデータでの推論再現 実際に用意したデータで再現 所感
SatMAE++ 概要:何が問題で何を解決した論文? ① 本論文の主張 •衛星画像は 解像度(GSD)やセンサー,バンドがバラバラ でマルチスケール・マルチモダリティ。 •そうしたデータに対して「特別な GSD 埋め込みなし」でマルチスケールな表現を学べる MAE(SatMAE++)の提案。 ② 従来手法の問題 •SatMAE • 大規模事前学習は有効だが, マルチスケール情報を明示的に扱わず,解像度が変わるドメインへの一般化が弱い。 •ScaleMAE • GSDPE+ラプラシアンピラミッドでマルチスケール対応だが, RGB 前提で,マルチスペクトル(Sentinel-2)には適用しづらい。 ③ SatMAE++ のアイデアと結果 •標準の位置埋め込み+畳み込みアップサンプリングで 低解像から高解像へ マルチスケール再構成する MAE。 •RGB とマルチスペクトルの両方にそのまま使える。 •6 データセットで SOTA: • BigEarthNet multi-label で mAP +2.5% • 土地被覆分類で SatMAE 比 +3.6% の改善。
関連研究(1/2):衛星画像の表現学習(Representation Learning) •自己教師あり学習の流れ • GASSL / SeCo:コントラスト学習で衛星画像を事前学習し,下流タスクで有効性を示す。 • Neumann ら:リモセン画像ドメイン内での表現学習(in-domain) の重要性を指摘。 • Mendieta ら:継続学習+Masked Image Modeling を組み合わせた手法を提案。 •SatMAE(2022) • マスク付き画像モデリング(MAE)を マルチスペクトル・時系列・光学データに拡張。 • 大規模事前学習がリモセンタスクに有効であることを実証。 •ScaleMAE • 光学衛星画像のために GSDベースの位置埋め込み(GSDPE) を導入し, 解像度(スケール)情報をエンコード。 • ただし: • RGB前提の設計で,バンドごとにGSDが異なる マルチスペクトルには適用しづらい。 • 複雑な構造(GSDPE+ラプラシアンピラミッドデコーダ)が必要。 •本研究(SatMAE++)の立ち位置 • これらの流れを受けて, 「よりシンプルで,光学+マルチスペクトル両方に使える事前学習」 を目指す。
関連研究(2/2):マルチスケール情報の利用(Multi-scale Information) •一般的なマルチスケール • CNN や Transformer の多くは, 複数スケールの特徴マップを使って分類・検出・セグメンテーション性能を向上。 •MAE系でのマルチスケール • ConvMAE:階層的マスキングで マルチスケール特徴を学ぶハイブリッドConv-Transformer。 • Point-M2AE:3D点群に対する マルチスケールオートエンコーダ。 • ScaleMAE:ラプラシアンピラミッド型デコーダで マルチスケール表現を学習。 •SatMAE++ の位置づけ • ScaleMAE の発想を より単純な形に整理して継承。 • 畳み込みベースのアップサンプリングブロックで 低解像から高解像までの特徴マップを段階的に再構成。 • スケールを増やしやすく,光学+マルチスペクトルの両方に拡張しやすい設計。
背景: Masked Auto-Encoder (MAE) Masked Auto-Encoder (MAE) の流れ •入力とパッチ分割 • 入力画像:𝐼 ∈ ℝ𝐶×𝐻×𝑊 • 画像を 𝑃 × 𝑃サイズの パッチに分割 𝐻𝑊 → パッチ数 𝑁 = 2 𝑃 • 各パッチをベクトル化し、 2 𝑆 ∈ ℝ𝑁× 𝑃 𝐶 として並べる •パッチ埋め込み & マスキング • パッチ埋め込み層 2 𝑓: ℝ𝑃 𝐶 → ℝ𝐷 で ˉ 埋め込みトークン列 𝑆 ∈ ℝ𝑁×𝐷 を取得 • 全トークンのうち 割合 𝑚をランダムに マスク → 残り 1 − 𝑚のトークンだけを エンコーダに入力 •エンコーダ & 位置埋め込み • エンコーダは Transformer ブロック列 • 各トークンに 位置埋め込み(Positional Encoding) を加えてパッチの空間位置情報を保持 • 典型的には 正弦波型の位置埋め込みを使用 𝑣𝑥 𝑝 𝑜𝑠2𝑖 = sin( 𝑝𝑜𝑠 𝑝𝑜𝑠 ), 𝑣 𝑝 𝑜𝑠2𝑖 + 1 = cos( ) 𝑦 Ω2𝑖/𝑑 Ω2𝑖/𝑑 • 𝑝𝑜𝑠:パッチ位置、𝑖:特徴次元インデックス • 𝑑:位置埋め込みの次元、Ω:スケール用の大きな定数 •デコーダ & 再構成 • デコーダ入力では: • エンコーダからの 可視トークンを元の順序に戻す • マスクされた位置には 学習可能な mask トークン を挿入し、合計 𝑁トークンに • これに位置埋め込みを再び加え、 Transformer デコーダで 元画像パッチを再構成 • 学習は 再構成誤差(平均二乗誤差; MSE) を最小化するように行う → 「見えている一部」だけから「隠された領域」を推定する自己教師あり学習
手法(1/2): ベースのSatMAE からSatMAE++へ ベースライン:SatMAE(CVPR 2022) •RGB:通常の MAE •Sentinel-2: • バンドを GSDごとにグループ化(10m / 20m / 60m) • 入力を 224×224 → 96×96、パッチ 8×8 にして計算量削減 • グループごとに別パッチ埋め込み → 空間方向に連結して Transformer Encoder へ • スペクトル情報入りの位置埋め込み + デコーダで 単一スケール(H,W) を MSE 再構成 事前学習 (MAE) DATA: fMoW 課題 •画像内・GSD間の スケール差を陽に利用していない •ScaleMAE は GSDベース位置埋め込み+複雑デコーダ → RGB専用・汎用性が低い FINETUNING-1 (教師あり学習分類) DATA: fMoW (62クラス) 全層end-to-endの補正 SatMAE++ のアイデア •位置埋め込みはそのまま 標準の正弦波 PE を使用(GSD専用にしない) •代わりに MAE デコーダ出力に Upsample Block を接続し, 1× / 2×(+ Sentinel では 4×)のマルチスケールで再構成 •マルチスケール再構成だけで → RGB・マルチスペクトル両方で スケールに頑健な特徴 を学習させる SatMAE++はこのMAEの事前学習部分だけをオリジナルSatMAEの 1スケールから2スケールもしくは3スケールに改良しただけ FINETUNING-2 (下流タスク) (教師あり学習分類) DATA: EuroSAT,RESISC-45,UC-Merced,BigEarthNet 全層end-to-endの補正 •EuroSAT(LULC 10クラス) •RESISC-45(45クラス) •UC-Merced(21クラス) •BigEarthNet(19クラス,多ラベル) SatMAEもSatMAE++も大枠は同じ
手法(2/2): Upsample Block とマルチスケール再構成 Upsample Block(Fig.2) Fig.2:Convベース Upsample Block 構造 (2倍アップサンプル+残差Conv) 1.入力特徴 𝑋 ∈ ℝ𝐶×𝐻×𝑊 2. 4×4転置Conv(stride 2) → 2倍アップサンプル 3.Norm + Leaky ReLU 4.3×3 Conv×2 の残差ブロックで局所特徴を強化 → 𝑋෨ 5. 1×1Conv で画素空間に写像し,アップサンプル画像を得る → 高解像度側の損失には L1 を使用(super-resolution と同様) 2スケール再構成(RGB) •元画像 𝐼መ ∈ ℝ𝐶×2𝐻×2𝑊 をダウンサンプルして 基準スケール 𝐼 ∈ ℝ𝐶×𝐻×𝑊 を MAE に入力 •デコーダ出力 𝐹と 𝐼の MSE: 𝐿1 •𝐹を Upsample Block に入れ、𝐹 2)H×2W)を再構成し, መ 𝐼との L1: 𝐿2 を計算 •最終損失:Loss = 𝛼1 𝐿1 + 𝛼2 𝐿2 3スケール再構成(Sentinel-2) ˉ •高解像度 𝐼 ∈ ℝ𝐶×4𝐻×4𝑊 2 →回ダウンサンプルして 𝐼, 𝐼2𝑥 (H×W, 2H×2W) を生成 •H×W で MAE 再構成 𝐹(MSE: 𝐿1 ( •Upsample Block 1段目:𝐹2𝑥 2)H×2W, L1: 𝐿2 ( ˉ •もう1段:𝐹 4)H×4W, L1: 𝐿3 ( •損失:Loss = 𝛼1 𝐿1 + 𝛼2 𝐿2 + 𝛼3 𝐿3 Fig.3:SatMAE vs SatMAE++ のマルチスケール再構成結果 (H,W / 2H,2W / 4H,4W)」
実験(1/5): 実験設定とデータセット •目的 • SatMAE++ が「マルチスケール事前学習」でどれだけ良い表現を学べるか検証 •事前学習データ 事前学習データ例:fMoW RGB:左,SentinelのRGB摘出版:右 • fMoW-RGB:62クラス,約 36万 train / 5万 test • fMoW-Sentinel:fMoW に Sentinel-2 を追加 約 71万 train / 8.5万 val / 8.5万 test •下流タスク用データ • • • • EuroSAT:10クラス LULC(RGB & Sentinel-2) RESISC-45:45クラスのリモートセンシングシーン UC-Merced:21クラス,1クラス100枚 BigEarthNet:19クラス,多ラベル,Sentinel-2(train の10%使用) •バックボーン • 主に ViT-Large, 一部 ViT-Base 下流タスク用データ例: EuroSat: https://github.com/phelber/EuroSAT
実験(2/5): fMoW-RGB – 事前学習と結果 •事前学習条件 • 入力:224×224, パッチサイズ16(SatMAEと同じ) • 画像を一度 448×448 に拡大 → 224×224 に縮小 して multi-scale のように • マスク率:75%, Optimizer:AdamW, Cosine LR 800エポック,GPU 8枚(V100) •ファインチューニング • ViT-L の重みを初期化に利用 • LR=1e-3, バッチ 8, 50エポック(8×V100) •結果(fMoW-RGB val) • SatMAE++ 78.14% • SatMAE(再現)73.87%,SatMAE(論文)77.84% • ScaleMAE(GSD PE + Laplacian デコーダ)77.9% •ポイント • GSD 依存の位置埋め込みなし・シンプルなデコーダ なのに ScaleMAE をわずかに上回る 精度
実験(3/5): fMoW-Sentinel – 事前学習と結果 •事前学習条件 • 入力解像度:96×96, パッチ 8×8 • Sentinel-2 の 13バンド中 B1, B9, B10 を除外(計10ch) • GSD に合わせたチャネルグループ • G1: {B2,B3,B4,B8}, G2: {B5,B6,B7,B8A}, G3: {B11,B12} • 画像 384×384 を作り,そこから 96, 192, 384 の3スケールで再構成 • ベースLR=1e-4, バッチ 8, 50エポック(8×V100) •ファインチューニング • 30エポック, LR=2e-4, 入力96×96 •結果(fMoW-Sentinel val) • ViT-L: • SatMAE(再現)61.61% • SatMAE++ 63.23%(+1.62pt) • ViT-B: • SatMAE 60.01% → SatMAE++ 62.69% •定性的結果 • Fig.3–4: • SatMAE:可視パッチですらブロックノイズが残る • SatMAE++:全スケールで滑らかで構造も保たれた再構成 SatMAE+Group+IM
実験(4/5): マルチスケール事前学習の効果 •アブレーション(fMoW-Sentinel, ViT-L) • 1スケール(96×96 のみ):61.61% • 2スケール(96, 192):62.86%(+1.25pt) • 3スケール(96, 192, 384):63.23%(さらに +0.37pt) •解釈 • 1→2スケールで 大きく改善 ⇒ “マルチスケール”を入れること自体が効いている • 2→3スケールは 上乗せ効果は小さい ⇒ ある程度スケールを増やすと 飽和 する可能性 •収束速度(Fig.5) • 1スケール:20エポックでピーク(61.61) • 3スケール:12エポック目でピーク(63.23) • ⇒ 性能も良くなり,学習も速く収束 する
実験(5/5): 下流タスクでの転移学習結果まとめ •設定 • ViT-L を SatMAE++ で fMoW(RGB / Sentinel)事前学習 • 各下流データセットで全体をファインチューニング •Land Cover / Scene Classification • EuroSAT (RGB) • SatMAE:95.74%,SatMAE†(MS):98.98% • SatMAE++:99.04%(MS 版も上回る) • RESISC-45 • SatMAE:94.8%,ScaleMAE:95.7% • SatMAE++:97.48% • UC-Merced • SatMAE:94.05% • SatMAE++:97.62%(+3.6pt) •Multi-label(BigEarthNet, mAP) • SeCo:82.62%,SatMAE:82.13% • SatMAE++:85.11% •要点 • シンプルなマルチスケール MAE 事前学習だけで • RGB / Sentinel の両方で SOTA に匹敵 or 超える性能 • さまざまな下流タスクに 一貫して効く 汎用表現 を獲得している
結論 •リモートセンシング画像は • 解像度(GSD)がバラバラ • 多数のスペクトルバンド(Sentinel-2) → マルチスケール+マルチスペクトル な情報を含むが 既存手法はこれを十分活かせていなかった •本研究:SatMAE++ • SatMAE ベースの MAE に マルチスケール再構成(1× / 2× / 4×)+Upsample Block を追加 • GSD 情報や特殊な位置埋め込みに頼らず シンプルな構造でマルチスケール情報を学習 • RGB(fMoW-RGB)とマルチスペクトル(fMoW-Sentinel)の両方で利用可能 •実験結果: • fMoW-RGB / fMoW-Sentinel の メインタスクで SOTA もしくはそれ以上の精度 • EuroSAT / RESISC-45 / UC-Merced / BigEarthNet などの 下流タスクでも一貫して性能向上 • さらに 収束も高速化(少ないエポックでベスト精度) •まとめ: • SatMAE++ は シンプルなマルチスケール pre-training だけで 表現力と汎化性能を向上できることを示した • 今後は,このマルチスケール事前学習を セマンティックセグメンテーションなどの密予測タスクへ拡張することが課題
テストデータでの推論識別再現(Sentinel) fountain_fountain_121_104_sentinel.tiff golf_course_golf_course_47_103_sentinel.tiff tower_tower_160_106_sentinel.tiff
テストデータでの推論識別再現(RGB) fountain_113_1_rgb.jpg golf_course_41_15_rgb.jpg tower_140_3_rgb.jpg
実際に衛星画像で推論して識別させたら… Sentinel-2: GEEデータカタログID:COPERNICUS/S2_HARMONIZED 2018-01-01 ~ 2024-12-31 雲が一番少ない画像 京大キャンパス(135.7800, 35.0260: 2km) SENTINEL-2のB2,B3,B4(RGB) 全チャネル 嵐山(135.6672, 35.0088: 2km) SENTINEL-2のB2,B3,B4(RGB) 全チャネル
GMAPのスクショで推論して識別させたら… 京大キャンパス 嵐山
所感:この手法の応用可能性について •本論文のfMoW スタイルのシーン分類は、 日本のような高密度都市の精緻な土地利用分類には限界がある •しかし、多スケール MAE で学んだ特徴は、 下流タスク(自然災害・環境監視・違法投棄検知など)に 転移する バックボーンとして有用かも(独自ラベルでのファインチューニング) •既存の landcover プロダクト(Google Earth Engine / ArcGIS)は • 安定した用途分類には強いが、 • 異常・イベント・高解像度データの扱いには弱い •SatMAE++ は、 • 任意のラベル設計 + 高解像データ + 時系列に柔軟に対応できる → 既存の土地利用図を補完する役割が期待できる (不法投棄・自然災害・違法開発の可能性のある場所の自動検知)