為遙感與衛星影像微調 CLIP

研究人員利用衛星影像和說明文字對 OpenAI 的 CLIP 模型進行了微調,證明了在遙感領域中,為了實現高性能檢索,進行特定領域的微調是必要的。所得模型在將航拍照片與其對應的文本描述進行匹配方面,表現顯著優於基準 CLIP 模型。

技術方法與模型架構

該專案使用了 openai/clip-vit-base-patch32 模型的微調版本。其架構採用雙編碼器系統——一個文本編碼器和一個圖像編碼器——利用對比學習將兩種模態映射到一個共同的嵌入空間中。在此空間中,匹配的圖像-說明文字對會被推得更近,而不相似的對則會被推得更遠。

訓練基礎設施

訓練是使用以下技術棧進行的:

  • 框架:Flax 和 JAX(一個具有自動微分功能的線性代數庫)。
  • 硬體:Google Cloud TPUs。
  • 優化:表現最佳的模型使用了 Adam 優化器,學習率為 5e-6,批次大小為 1024(分佈在 8 個 TPU 核心上,每個核心 128)。

數據集與數據增強

為了使模型適應衛星影像的獨特視覺特徵,團隊使用了三個主要數據集:

  • RSICD:主要數據集,包含來自 Google Earth、Baidu Map、MapABC 和 Tianditu 的約 10,000 張 RGB 影像(224x224),每張影像最多有五條說明文字。
  • UCM:基於 UC Merced Land Use 數據集,包含 2,100 張影像,涵蓋 21 個類別,每張影像有五條說明文字。
  • Sydney:包含 613 張悉尼(Australia)的影像,涵蓋七個類別,每張影像有五條說明文字。

正則化策略

為了防止在這些相對較小的數據集上發生過擬合,團隊實施了兩種增強方式:

  • 圖像增強:利用 PyTorch Torchvision 進行隨機裁剪、隨機縮放、色彩抖動以及隨機水平和垂直翻轉。
  • 文本增強:採用使用 Marian MT 系列模型的反向翻譯。說明文字會先從英文翻譯成法文、西班牙文、義大利文和葡萄牙文,然後再翻譯回英文,以增加對於說明文字少於五條唯一描述的影像的說明文字多樣性。

損失函數圖表顯示,圖像增強顯著減少了過擬合,而圖像與文本增強的結合則提供了最大的過擬合減少量。

評估結果

評估是在 RSICD 測試集的子集中,涵蓋 30 個影像類別進行的。模型透過對每張影像對形式為 "An aerial photograph of {category}" 的 30 條說明文字進行排名,並測量 top-k 準確度來進行測試。

Model-name k=1 k=3 k=5 k=10
baseline 0.572 0.745 0.837 0.939
Best Model (Adam, lr 5e-6) 0.883 0.968 0.982 0.998

微調後的模型在性能上較基準模型有了顯著提升,特別是在 k=1 時,準確度從 0.572 增加到 0.883。

實際應用與能力

微調後的 CLIP 模型實現了多種遙感能力:

  • 文本轉圖像搜索:使用文本查詢(例如 "beach"、"airport" 或特定的建築特徵)在大型衛星影像集合中進行搜索。
  • 圖像轉圖像搜索:在語料庫中尋找視覺上相似的衛星影像。
  • 特徵定位:透過將影像劃分為 patches 並進行編碼,模型可以將文本向量與特定的影像 patches 匹配,以確定特徵在特定區域出現的概率。

倫理考量

作者指出,雖然這項技術可以用於社會公益——例如監測氣候變化或國防——但它也引發了倫理考量,即它可能被威權國家用於軍事和警察監視。

未來研究方向

團隊識別了幾個進一步開發的領域:

  • 圖像描述 (Image Captioning):開發一個結合 CLIP 編碼器與 GPT-3 解碼器的序列到序列模型。
  • 數據集擴展:在更多的圖像-說明文字對上進行微調,以進一步提高性能。
  • 泛化能力:研究微調如何影響在非 RSICD 數據上的性能,以及模型對其訓練集之外的類別進行分類的能力。

Sources

相關

  • Dispatch
  • 專案
  • 專案
  • 專案
  • Dispatch