Segment Anything(通称 SAM)は、Metaが2023年に公開した画像の汎用セグメンテーション基盤モデルです。従来のMask R-CNNが「人・車など決め打ちクラス」を学習するのに対し、SAMは1,100万枚・10億超のマスクで「切り出し方」そのものを学び、点や枠のプロンプトだけで任意の輪郭を返す——本記事はアーキテクチャの部品名より、「なぜラベル地獄を終わらせようとしたか」に焦点を当てます。
試験で問われる見方
Segment Anything単独の過去問はまだ少ない一方、辞典の定義は「プロンプトで任意物体をセグメントする基盤モデル」です。試験ではセグメンテーションの種類(G-317、TF-116)と代表モデルとの違い(G-326)を土台に整理します。
誤答では、SAM=物体検出だけ(G-021)、SAM=画像生成、SAM=形態素解析(G-022)など、別タスクとのすり替えに注意します。
ラベル地獄からの脱却
画像認識の実務では、「何をラベルするか」がボトルネックになります。物体検出なら箱とクラス、セグメンテーションなら画素ごとのマスク——対象クラスを増やすほど、アノテーションコストは爆発します。
Segment Anythingは、クラス一覧を先に決めない設計を採りました。大規模データ(SA-1Bなど)で「点を置けばその周辺の物体らしい輪郭が返る」という汎用的な切り出し能力を学習し、下流タスクではプロンプトで対象を指定します。
- 従来 — クラスごとに教師データを用意 → そのクラスだけ検出・セグ
- SAM — 切り出し能力を汎用学習 → 利用時にプロンプトで対象指定
- 試験向け — 「固定クラス教師あり」vs「プロンプト駆動の汎用セグ」の対比
Anythingの意味
名前の Anything は「犬でも車でもコップでも、プロンプトで指したものなら切り出せる」という野心を表します。モデル内部に「80クラス」「1000クラス」といった閉じた語彙表は持たない——これが基盤モデルとしてのセグメンテーションの転換点です。
| 観点 | 教師ありセグ(例: Mask R-CNN) | Segment Anything |
|---|---|---|
| 対象の決め方 | 学習済みクラスを自動検出 | ユーザーのプロンプト |
| 未知クラス | 学習外は検出しにくい | プロンプトがあれば切り出し可能 |
| 出力 | 箱+クラス+マスク | マスク中心 |
| 試験 | G-326 | 汎用セグ・基盤モデル(G-396) |
プロンプトで対象を指定
SAMの「プロンプト」は、テキスト指示だけではありません。空間的なヒントが中心です。
| プロンプト | ユーザーの操作 | 試験向け |
|---|---|---|
| 点(ポジティブ/ネガティブ) | 「ここにある/ここは違う」 | 最小クリックでマスク取得 |
| 矩形(ボックス) | 「この範囲の主対象」 | 検出框に近いがマスク出力 |
| 既存マスク | 「この形を修正して」 | インタラクティブ編集 |
FCNがセマンティックセグメンテーション(画素ごとに「道路」「空」などクラスを一括付与——個体は区別しない)の代表であるのに対し、SAMはプロンプトで個体レベルのマスクを得ます。インスタンスセグに近い出力を、クラス名なしで実現する——と整理すると、G-317・TF-117との接続が明確になります。
基盤モデルとしての位置づけ
SAMは、大規模データで事前学習し、下流タスクへ転用されることを想定した基盤モデルです(G-396)。BERTがテキスト理解の共通基盤であるのと同様、SAMは「画像から領域を切り出す」共通エンジンとして使われます。
- アノテーション支援 点1つでマスク草案 → 人間が修正してラベルコスト削減
- 画像編集 背景ぼかし・物体消去・切り抜き合成の前処理
- 下流パイプライン 切り出した領域を別の認識・計測モデルへ渡す
SAMは画像を新しく描くモデルではありません。Stable Diffusionなどの生成モデルと組み合わせて「切り出した部分だけ編集する」——パイプラインの部品として使われることはありますが、生成そのものは別タスクです。
SAM 2との関係
SAM 2(Segment Anything Model 2)は、SAMの後継です。SAMが静止画の汎用セグを確立したのに対し、SAM 2は動画フレーム間で対象を追跡しながらマスクを更新する点を強化しました。
| 観点 | Segment Anything(SAM) | SAM 2 |
|---|---|---|
| 主な入力 | 画像 | 画像+動画系列 |
| 時系列 | フレーム独立が基本 | フレーム間追跡 |
| 公開 | 2023年 | 2024年 |
| 試験 | 汎用セグの原点として整理 | 動画セグの拡張として整理 |
試験では世代の細部より、「プロンプト駆動の汎用セグメンテーション」という共通の設計思想を押さえるのが先です。
すり替えに注意
| 誤った説明 | 正しい理解 |
|---|---|
| SAM=SSD/YOLO | マスク出力のセグ vs 物体検出(G-021) |
| SAM=Stable Diffusion | 領域切り出し vs 画像生成 |
| SAM=Mask R-CNN | プロンプト駆動の汎用セグ vs 固定クラス教師あり |
| SAM=形態素解析 | 画像の領域分割 vs 文章の分割(G-022) |
| SAM=FCNの別名 | プロンプト指定の個体マスク vs 画素一括クラス分類 |
| Anything=全自動で何でも検出 | プロンプトで対象を指定する必要がある |
よくある質問
Segment Anythingは何をする技術ですか?
画像の中から、ユーザーが点や矩形などで指定した物体の輪郭(マスク)を切り出す汎用セグメンテーションの基盤モデルです。あらかじめ決めたクラス名(人・車など)に縛られず、プロンプトで「何でも」対象を分離できる点が特徴です。
Segment AnythingとSAM 2は同じですか?
同じ系譜ですが別世代です。Segment Anything(SAM)は2023年に公開された静止画向けの汎用セグメンテーションモデルです。SAM 2はその後継で、動画フレーム間の追跡を強化したモデルとして位置づけられます。
Segment Anythingは物体検出モデルですか?
いいえ。物体検出はバウンディングボックスとクラスを推定するタスクです。Segment Anythingは画素単位のマスク(領域の輪郭)を出力するセグメンテーション向けモデルで、ユーザーのプロンプトで対象を指定する設計が特徴です。