---
title: "U-Net（セマンティックセグメンテーション）"
description: "U-Net（セマンティックセグメンテーション）について、G検定で問われる画像認識・CNN分野の観点から、基本的な意味、代表モデル・手法との関係、試験で問われやすい判断軸を整理します。暗記だけでなく、似た概念との混同を避ける見分け方や、選択肢を切るためのポイントも確認します。"
canonical_url: "https://stemtazoo.github.io/gk/u-net/"
section: "gk"
---

## まず結論

**U-Net は「セマンティックセグメンテーション向けのエンコーダ・デコーダ型 CNN」で、
エンコーダ側の特徴マップをデコーダ側に直接渡す「スキップ接続」が最大の特徴です。**

SegNet が「最大値プーリングの位置を記憶する」のに対し、
**U-Net は「特徴マップそのものを渡す」**点が決定的な違いです。

---

## 直感的な説明

U-Net は名前の通り **U 字型** の構造をしています。

* 左側：画像をだんだん小さくして特徴を抽出（エンコーダ）
* 右側：特徴を元の解像度に戻しながら分類（デコーダ）

このとき、

👉 **小さくする前の情報を、そのまま右側にワープさせる**

のが U-Net の発想です。

これにより、

* 位置情報が失われにくい
* 境界がくっきりしたセグメンテーション

が可能になります。

---

## 定義・仕組み

U-Net の構造的特徴は次の通りです。

* **セマンティックセグメンテーション**に利用
* **エンコーダ・デコーダ構造**
* エンコーダで畳み込み＋プーリング
* デコーダでアップサンプリング
* **対応する層同士をスキップ接続で結合**

重要なのは、

⭕ 特徴マップを **コピーして結合** する
❌ プーリング位置だけを記憶するわけではない

という点です。

---

## いつ使う？（得意・不得意）

### 得意なこと

* 医療画像（臓器・腫瘍など）のセグメンテーション
* 少量データでも高精度を出したい場合
* 物体の輪郭を正確に分割したいタスク

### 不得意なこと

* 非常に大規模な画像・高計算量タスク
* Transformer ベースのグローバル文脈理解

---

## G検定ひっかけポイント

### ① SegNet との違い

ここは **最頻出ポイント** です。

* **SegNet**：最大値プーリングの「位置」を保存
* **U-Net**：エンコーダの「特徴マップ」をスキップ接続

👉 「位置を記憶」→ SegNet
👉 「特徴を直接渡す」→ U-Net

---

### ② Encoder-Decoder と書いてあっても即決しない

Encoder-Decoder は

* SegNet
* U-Net
* FCN

すべてに共通します。

👉 **違いは“何をデコーダに渡すか”**

ここを見抜くのが G検定の狙いです。

---

### ③ Attention と混同しない

* Attention：重要度の重み付け
* U-Net：構造的な情報のショートカット

👉 「注意」「重み」「重要度」という言葉が出たら U-Net ではない

---

## まとめ（試験直前用）

* U-Net は **セマンティックセグメンテーション用 CNN**
* **エンコーダ・デコーダ構造**を持つ
* **スキップ接続で特徴マップを直接渡す**
* SegNet の「プーリング位置保存」との違いを即答できるようにする

👉 **「特徴マップをそのまま渡す」＝ U-Net**
