1. 定義と概要
FCN(完全畳み込みネットワーク)とは、画像分類向けのCNN構造から全結合層を取り除き、代わりに1×1畳み込み層(フィルタの大きさが1画素分しかない畳み込み演算で、全結合層の代わりとして使われます)を用いたニューラルネットワークです。入力画像と同じ空間的な構造を保ったまま、画素ごとにクラスを予測できます。
2015年、Jonathan Long・Evan Shelhamer・Trevor Darrell氏の3名がCVPR(コンピュータビジョン分野の主要国際会議)で発表しました。評価指標にはmean IU(平均IoU。予測した領域と正解の領域の重なり具合を測るセグメンテーションの評価指標)が使われます。
PASCAL VOC 2012という画像認識ベンチマークのセマンティックセグメンテーション(画像を画素単位で「何が写っているか」に色分けする技術)では、従来手法から相対20%改善となるmean IU 62.2%を達成しています。深層学習で画素単位のセグメンテーションをEnd-to-End(入力から出力まで一括で学習する方式)に解く先駆けとなったモデルです。
従来のCNNは画像分類向けに設計されており、全結合層を通して1枚の画像に1つのラベルを出力する構造を持ちます。全結合層があるため入力画像のサイズはあらかじめ固定され、畳み込みで得た特徴の空間的な位置情報も最終的には失われてしまいます。
しかし、画像内の物体の輪郭を画素単位で塗り分けたいセマンティックセグメンテーションという課題には、この構造は不向きでした。FCNは全結合層を1×1畳み込みに置き換えることで、任意サイズの入力を受け付けたまま空間情報を保持し、画素ごとのクラス確率マップを出力する構造を実現し、以降のセグメンテーションモデルの土台になりました。
2. 試験対策ポイント
FCNの核心は、全結合層を1×1畳み込み層に置き換えたことにあります。これにより出力が空間的な位置情報を保持したまま、縦×横×クラス数の画素単位の確率マップになる点が、画像1枚に1ラベルを出力する通常のCNNとの構造上の違いにあたります。
全結合層を持たないため入力画像のサイズに制約がなく、任意サイズの画像をそのまま処理できます。畳み込みとプーリング層(特徴マップの情報を間引いて縮小し、計算量を抑える層)を繰り返すと、特徴の解像度は徐々に小さくなります。最終層に残る特徴マップ(畳み込み層が画像から抽出した特徴を数値の集まりで表した中間データ)は、元画像より小さな解像度しか持ちません。
そこでアップサンプリングによって、入力画像と同じサイズまで拡大して戻します。この処理は逆畳み込み(畳み込みとは逆方向に特徴マップを拡大する演算で、アップサンプリングの実装手法の一つ)などで実現されるというのが理解の軸になります。
アップサンプリングのみでは輪郭がぼやけた粗い結果になります。そのため、浅い層の特徴マップが持つ詳細な位置情報と、最終層の出力が持つ大まかな意味情報を、要素ごとに足し合わせて組み合わせるスキップ接続が導入されています。
このスキップ接続は、組み合わせる層を増やす形で段階的に改良されました。どの層の情報を使うかと、PASCAL VOC 2011の検証セットでの評価結果は次のように対応します。
| モデル | 組み合わせる情報 | mean IU |
|---|---|---|
| FCN-32s | 最終層の出力のみ | およそ63.6% |
| FCN-16s | 最終層の出力+pool4層の情報 | およそ65.0% |
| FCN-8s | 最終層の出力+pool4層+pool3層の情報 | およそ65.4% |
浅い層の情報を加えるほど数値も改善しており、粗い出力を詳細な位置情報で補うという狙いが結果にも表れています。この段階的な改良の経緯は、あわせて押さえておきたいところです。
2015年にLong・Shelhamer・Darrell氏らが提案し、PASCAL VOC 2012で従来手法から性能を大きく改善しました。深層学習によるセマンティックセグメンテーションの先駆的モデルという歴史的位置づけも、あわせて重要な論点です。
3. 関連概念との比較・相違点
CNNとの最大の違いは、全結合層の有無と出力の形にあります。この2点の違いは、扱える入力画像のサイズの違いにもそのままつながります。
| 観点 | 画像分類に使われる通常のCNN | FCN |
|---|---|---|
| 全結合層 | 持つ | 持たず、1×1畳み込み層に置き換える |
| 出力の形 | 画像1枚に1つのラベル | 画素ごとのラベル、つまりクラスマップ |
| 入力画像のサイズ | あらかじめ固定される | 可変で、任意サイズを受け付ける |
画像1枚が何であるかを言い当てたいのか、画像の中身を画素単位で塗り分けたいのかという目的の違いが、そのまま構造の違いとして表れているといえます。
FCN以降に登場したセグメンテーションモデルとの位置関係も、比較の観点として整理されています。FCNはスキップ接続によって最終層の粗い出力を浅い層の情報で補う設計です。
これに対しSegNetモデルやU-Netモデルは、入力を圧縮して特徴を抽出するエンコーダと、圧縮された特徴を元の解像度まで復元するデコーダという構造を、より明確に体系化した後続モデルという系譜にあります。それぞれのモデル自体の詳しい仕組みは別のテーマとして扱われることが多く、ここではFCNが後続モデルの土台を築いた立場にあるという関係を押さえておけば十分です。
4. ビジネス・実務での活用シナリオ
自動運転の分野では、車載カメラが撮影した画像を画素単位で「道路」「歩行者」「車両」などに分類し、走行可能な領域を特定する処理の基盤としてセマンティックセグメンテーションが使われています。FCNはこの技術の出発点となった構造であり、画素ごとに意味を割り当てるという発想そのものが、周囲の状況を細かく把握する必要のあるこの分野の土台になっています。
医療画像診断の分野では、MRIやCT画像から病変部位を画素単位で塗り分ける手法として、FCNの考え方を発展させたモデルが臨床現場での画像解析支援に応用されています。輪郭を大まかに囲むのではなく画素単位で境界を示せることが、医師が病変の広がりを正確に把握するうえでの助けになっています。
衛星・航空画像解析の分野では、衛星画像から農地・建物・道路などの土地被覆を画素単位で分類し、都市計画や災害状況の把握に活用されています。人が目視で確認するには広すぎる範囲を自動的に塗り分けられることが、この分野でセグメンテーション技術が使われる理由です。
5. 要点まとめ
- FCNは、CNNの全結合層を1×1畳み込み層に置き換えることで、任意サイズの入力から画素単位のクラス確率マップを出力できるようにしたモデルです。
- 縮小した特徴マップをアップサンプリングで元の解像度に戻し、スキップ接続で浅い層の詳細情報を組み合わせることで、出力の粗さを補っています。
- 2015年にLong・Shelhamer・Darrell氏らが発表し、PASCAL VOC 2012で従来手法から性能を大きく改善した、セマンティックセグメンテーションの先駆的モデルという位置づけにあります。
6. 確認問題
問1FCNは、CNNの全結合層を1×1畳み込み層に置き換えることで、画像内の空間的な位置情報を保持したまま画素ごとのクラスを予測できるようにしたモデルである。
解答・解説をみる
○ 正しい
全結合層を1×1畳み込み層に置き換えたことがFCNの核心であり、これにより位置情報を保持したまま画素単位の出力を得られる構造になります。CNNとの構造上の違いが表れる部分です。
問2FCNは全結合層を持つため、入力できる画像のサイズはあらかじめ固定されている。
解答・解説をみる
× 誤り
正しくは逆で、FCNは全結合層を持たないため入力サイズに制約がなく、任意サイズの画像を処理できます。全結合層を持ち入力サイズが固定されるのは、画像分類向けの通常のCNNの方です。
問3FCNでは、最終層の粗い出力をそのまま使うのではなく、浅い層の特徴マップと組み合わせるスキップ接続によって、境界の精度を高める工夫が導入されている。
解答・解説をみる
○ 正しい
スキップ接続はFCN-32sからFCN-16s、FCN-8sへ段階的に改良された仕組みの中核で、深い層が持つ意味情報と浅い層が持つ位置情報を組み合わせる工夫にあたります。

