Meta 的 Segment Anything(SAM)把「提示」帶進影像分割:給一個點、一個框甚至一段文字,模型就能吐出合理的遮罩。這篇是我的論文筆記,整理 SAM 的任務設計、三大組件架構、10 億遮罩的 SA-1B 資料集,以及 Zero-Shot Transfer 的實驗結果。論文原文在 arXiv,程式碼在 GitHub。
Segment Anything 是什麼?
「Segment Anything」(SA)計畫包括了一個新的圖像分割任務、模型和數據集。使用高效的模型,在數據收集過程中建立了迄今為止最大的分割數據集,擁有超過 10 億個遮罩和 1100 萬張的圖像。這個模型設計和訓練成可提示(promptable),因此它可以進行 zero-shot 轉移到一系列任務,通過提示工程(prompt)實現。模型的 zero-shot 性能印象深刻,通常與或優於以前的完全監督結果競爭。他們公開了「Segment Anything Model」(SAM)和相應的數據集(SA-1B),以促進計算機視覺基礎模型的研究。
SAM 模型由圖像編碼器、提示編碼器和遮罩解碼器三個組件組成,旨在實現高效運行和實時互動提示。數據引擎包括三個階段,從手動標註到半自動標註,最後實現完全自動生成遮罩。最終數據集 SA-1B 包括 1100 萬張高解析度圖像和 10 億多個高質量分割遮罩,可供未來計算機視覺基礎模型的研究使用。該數據集的質量經過詳細分析,結果顯示自動生成的遮罩質量很高。

此外,論文中還提到了有關模型效能、數據集特性以及公平性考特性以及公平性考慮的討論。該計畫的目標是促進基礎模型的發展,以應對圖像分割等廣泛的計算機視覺問題。整體來說,這個計畫提供了一個重要的資源,用於研究和開發計算機視覺基礎模型。
Segment Anything 做了什麼?
1. 啟示來源:啟發自 NLP 的標記預測任務,並考慮如何為分割任務設計基礎模型。
2. 定義分割任務:
- 基於 NLP 的提示概念,SAM 將其轉化為分割。提示可以是前景/背景點、粗略框、遮罩、或自由文本。
- 任務目標是根據給予的提示返回有效的分割遮罩。即使提示模糊,輸出仍應是合理的遮罩。
3. 預訓練策略:
- 透過模擬各類提示序列進行預訓練,並將模型預測的遮罩與實際情況對照。
- 即使遇到歧義的情境,如衣服與人的示例,模型仍應該能提供有效的遮罩。
4. 零樣本轉移:
- 預訓練賦予模型根據不同提示進行推理的能力。
- 通過工程化特定的提示,例如使用邊界框檢測器,可以解決具體的下游分割任務。
5. 分割的多面性:
- 分割技術包括互動分割、邊緣檢測、超像素化等多種方法。
- 本研究旨在產生一通用模型,可以適應多數分割任務,並透過提示工程來達成。
6. 與多任務分割的區別:
- 傳統的多任務分割模型針對一組固定任務訓練,但 SAM 的模型在推理階段可以適應和執行不同的任務。
7. 深入討論:
- 提示和組合提供了一種策略,使模型更具擴展性,能夠完成許多不同的任務。
- 透過組合的策略,模型可以作為更大系統的一部分進行運作,例如結合現有的對象檢測器進行實例分割。

從上圖可以看出,SAM 可以從同一個點的提示輸入,對照至多個不同的輪廓,這可以讓模型更具擴展性,藉由後續的訓練和組合完成更多不同的任務。
Segment Anything Model(SAM)的架構是什麼?
SAM 是為了可以應對提示的分割而設計的模型,主要包含三個組件:
- 圖像編碼器(image encoder):基於擴展性和強大的預訓練方法,SAM 使用經過預訓練的 Vision Transformer (ViT) 來適應處理高解析度的輸入。該圖像編碼器每張圖片只運行一次,可以在對模型給出提示之前先運行。
- 提示編碼器(prompt encoder):SAM 考慮兩組提示:稀疏(如點、框、文本)和密集(如遮罩)。SAM 使用位置編碼來表示點和框,並為每種提示類型加上學到的嵌入;自由形式的文本則使用 CLIP 的文本編碼器。對於密集的提示(即遮罩),SAM 使用卷積來嵌入它,並與圖像嵌入進行元素級的相加。
- 遮罩解碼器(mask decoder):該解碼器有效地映射圖像嵌入、提示嵌入以及輸出令牌到一個遮罩。在經過兩個解碼器區塊後,SAM 放大圖像嵌入,然後使用一個 MLP 將輸出令牌映射到一個動態線性分類器,進而計算每個圖像位置上的遮罩前景概率。

上圖展示了 SAM 模型的整體流程。一個高效的圖像編碼器會輸出一個圖像嵌入(表示),然後可以被各種不同的輸入提示有效地查詢,以實時的速度產生物體的遮罩。對於對應多於一個物體的模糊提示,SAM 能夠輸出多個合法的遮罩以及相關的信心分數。
- 解決模糊性:對於模糊的提示,模型可能會輸出多個合理的遮罩。為了解決這一問題,SAM 修改模型使其能夠對單一提示預測多個輸出遮罩。SAM 發現 3 個遮罩輸出通常足以應對大多數常見情況。模型還會為每個遮罩預測一個信心分數(即預估的 IoU)。
- 效率:整體的模型設計主要是考慮到效率。給定一個預先計算的圖像嵌入,提示編碼器和遮罩解碼器可以在一個網頁瀏覽器上、在 CPU 上、在約 50ms 內運行。這樣的運行效能使得 SAM 的模型可以實時互動地給出提示。
- 損失和訓練:SAM 使用 focal loss 和 dice loss 的線性組合來監督遮罩預測。SAM 使用幾何提示的混合來訓練可提示的分割任務。SAM 模擬一個互動設置,每個遮罩隨機抽樣提示 11 輪,使 SAM 能夠無縫地融入數據引擎中。
Zero-Shot Transfer 是什麼?
「零樣本遷移」是機器學習中的一個概念,主要關注如何讓模型在沒有直接經過訓練的任務或類別上表現得很好:
- 定義:當我們訓練一個模型來處理某種任務或分類某些類別,但希望它能夠處理從未見過的新任務或新類別時,我們稱之為「零次轉移」。換言之,模型從未直接在某些任務或類別上進行過訓練,但我們仍然希望它在這些任務或類別上表現良好。
- 如何實現:這通常是透過利用與目標任務或類別相關的一些額外資訊來實現的,例如語義關係或屬性。例如,在圖像分類中,即使模型從未見過「斑馬」這個類別,但透過知道斑馬是黑白條紋的、與馬相似的動物,模型可能能夠正確地辨識出斑馬。
- 應用:零樣本學習的應用範圍廣泛,包括圖像分類、文字分類、語音識別等。在現實世界中,我們經常遇到新的任務或類別,而不是總是從頭開始訓練新的模型,所以零次轉移學習提供了一個有效的方法來適應這些新情境。
- 與其他轉移學習的區別:轉移學習通常意味著將一個任務中學到的知識應用到另一個相關任務中。當這種轉移不涉及模型中從未見過的新類別時,它被稱為「有的轉移學習」或「少樣本學習」。而當轉移涉及到完全未見過的監督類別時,它被稱為「零次轉移學習」。
總之,「零次轉移」是關於如何使機器學習模型具有更強的泛化能力,從而能夠處理它從未直接經歷過的任務或類別。
SAM 的 Zero-Shot 實驗結果如何?
在論文中,我們提示 SAM 來:(1) 執行邊緣檢測,(2) 分割所有內容,即物體提議生成,(3) 分割檢測到的物體,即實例分割,以及 (4) 作為概念驗證,從自由格式文本中分割物體。下圖為測試結果:

上圖是從單個前景點分割出一個對象。但由於一個點可能指向多個對象,這樣的任務定義起來是不確定的。大多數數據集的真實遮罩並未列出所有可能的遮罩,使得自動度量可能不可靠。因此,除了標準的 mIoU 指標外,還進行了一項由標註者對遮罩質量進行 1(無意義)到 10(完美)評分的人類研究。
結果:
- 在使用 mIoU 的全套 23 個數據集的自動評估中,與 RITM 比較,SAM 在其中 16 個數據集上表現更好。
- 在進行歧義解決的「神諭」實驗中,SAM 在所有數據集上都超過了 RITM。
- 人類研究的結果顯示,評分者總是將 SAM 的遮罩質量評分為高於 RITM。而且,SAM 的平均評分落在 7 到 9 之間,這意味著其遮罩質量相當好。
其他觀察:
- 當點的數量從 1 增加到 9 時,各方法之間的差距會減少。
- 使用隨機點取樣替代默認的中心點取樣時,SAM 與基線之間的差距變得更大,但 SAM 在兩種取樣方法下都能獲得相似的結果。
怎麼用 SAM 進行智慧標記?
Roboflow 採用了 SAM 來進行智慧標記:只要在影像上點幾下,SAM 就能自動生成遮罩並轉成標註,大幅減少手動標記的成本。實際操作畫面可以參考 Roboflow 的示範影片,標記流程就是「上傳圖片 → 點選目標 → 自動生成多邊形遮罩 → 匯出標註格式」。
延伸閱讀
- 使用現有模型標記新圖片:SAM、Roboflow 與 YOLO label 轉換流程:同樣聚焦 Segment Anything,可接著比較不同情境的做法。
- 影像分割 Image Segmentation 模型整理:U-Net、Mask R-CNN、DeepLab 與 U2-Net:同樣聚焦 Image Segmentation,可接著比較不同情境的做法。
- 影像分割模型介紹:U-Net 與去背改良版 U2-Net:同屬「機器學習」主題,可延伸理解相近問題的判斷方式。
常見問題
SAM 可以直接用於語義分割嗎?
SAM 本身輸出的是類別無關的遮罩,需要搭配其他模型(如檢測器或 CLIP)透過提示工程才能完成帶類別的語義分割任務。論文中的自由文本分割就是這種組合的概念驗證。
SAM 的推論速度很快嗎?
圖像編碼器每張圖片只運行一次,而提示編碼器與遮罩解碼器在 CPU 上約 50ms 內即可運行,因此給定預先計算的圖像嵌入後可以即時互動式地調整提示。
SA-1B 資料集可以自由下載嗎?
可以。Meta 公開了 SA-1B(1100 萬張圖像、10 億多個遮罩)與 SAM 模型權重,供研究使用,用意在促進計算機視覺基礎模型的研究。
參考資料
最後更新
2026-08-28(原文發布於 2023-09-27,本文保留原始筆記內容並補上 GEO 結構。)
關於作者 {#author}
Claire Chang | 企業 AI 導入與流程轉型顧問。專注於 AI Agent 架構設計、ERP 系統整合與企業 AI 治理。
首次發布:2023-09-27
