残差学習(Residual Learning)の名前の由来と深層学習での仕組み

こんにちは。ゆうせいです。

人工知能や画像認識の分野では、残差学習(Residual learning)という手法が広く活用されています。この手法は、2015年に発表されたResNetと呼ばれるニューラルネットワークの根幹を成す技術です。この記事では、専門知識を持たない読者に向けて、残差学習という名前の由来や基本的な仕組み、具体的な利点と留意点について順を追って解説します。

残差学習の名前の由来と数理的背景

残差学習の名称に含まれる残差(Residual)という言葉は、統計学や数学において古くから使われている専門用語です。名称の成り立ちを理解するために、統計学における残差の意味と、ニューラルネットワークでの扱われ方を整理します。

統計学における残差

統計学において残差とは、実際に観測された実測値と、予測モデルが算出した予測値との間に生じる引き算の差額を指します。たとえば、ある人の身長から体重を予測する計算式を作った場合、実際の体重から予測式が算出した体重を引いた残りの数値が残差に該当します。つまり、既存の予測では説明しきれなかった残りの部分を意味します。

深層学習における残差の定義

ニューラルネットワークに入力されるデータを x とし、層を通過した後に得たい目的の出力を H(x) と置きます。

従来の学習方式では、層の内部で入力 x から目標値 H(x) そのものを直接作り出す計算を行っていました。一方で、残差学習では目標値 H(x) そのものを直接学習するのではなく、目標値と入力値の差額にあたる残差成分 F(x) を学習対象とします。この残差 F(x) は、以下の引き算の式で定義されます。

F(x) = H(x) - x

この式を変形すると、目標とする出力 H(x) は次のように表せます。

H(x) = F(x) + x

このように、入力と出力の引き算によって生じる残りの差分(残差)を集中的に学習させる枠組みであることから、Residual learning(残差学習)と名付けられました。

身近な例で理解する残差学習の仕組み

数式上の差分を学習するという概念は、高校生が模試の復習を行う場面に例えると把握しやすくなります。

すでに前回のテストで70点を取れている生徒が、次のテストで80点を目指すと仮定します。

従来の学習方法は、0点の状態から80点分の学力を毎回すべて作り直そうとする方法に相当します。すでに身についている70点分の基礎知識も含めて一から頭を使い直すため、勉強手順が増えるほど余計な混乱が生じやすくなります。

これに対して残差学習は、すでに手元にある70点分の基礎知識(入力 x)をそのまま答案用紙に持ち込み、目標である80点(目標出力 H(x))との差額である10点分の不足部分(残差 F(x))だけを重点的に勉強する方法に相当します。

ニューラルネットワークの回路では、入力データ x を何の手も加えずにそのまま先の層へと迂回させて足し合わせる連絡通路を設けます。この迂回経路はスキップ接続(あるいはショートカット接続)と呼ばれます。回路の本体は差分の10点分(F(x))だけを計算すれば済むため、計算の負担が大幅に軽減されます。

残差学習のメリット

残差学習を導入することで得られる具体的な長所は、以下の通りです。

  • 勾配消失問題の緩和:層を非常に深く積み重ねた際に、学習に必要な信号が途中で薄れて消えてしまう現象を、入力をそのまま流す迂回経路が防ぎます。
  • 層の多層化の実現:従来の設計では数十層が限界であった層の深さを、性能劣化を伴わずに100層や1000層を超える規模まで拡大できます。
  • 最適化の容易性:入力と同じ情報をそのまま出力する恒等写像の状態を保ちやすいため、層を追加しても最低限の性能が担保され、追加学習が停滞しにくくなります。

残差学習のデメリット

一方で、残差学習の導入に伴って生じる実務的な課題も確認されています。

  • 計算資源の消費増大:層の数を数百層規模にまで増やせるため、モデル全体のパラメータ数と演算回数が増え、学習や処理の実行に高性能な計算機を要します。
  • 配線構造の複雑化:通常の1本道で連なる構造と異なり、層を飛び越えて合流する分岐回路が存在するため、プログラムの実装やメモリ管理の設計が煩雑になります。
  • 浅いネットワークでの限定的な効果:層の数が少ない小規模なネットワークに適用した場合、迂回経路による性能改善の度合いが低く、設計の複雑さに見合う恩恵を得られない傾向があります。

まとめと理解を深める学習ステップ

残差学習は、目標値そのものではなく目標値と入力値の差分(残差)を学習対象とすることから名付けられた手法です。すでにある情報を迂回経路でそのまま先へ渡すことで、深層ニューラルネットワークの学習を成立させています。

今後の理解を深めるための学習手順は以下の通りです。

  1. 誤差逆伝播法(バックプロパゲーション)において、足し算の分岐がどのように勾配をそのまま伝達するのか数式で確認する。
  2. スキップ接続を組み込んだResNetの基本ブロック(Residual Block)の内部構成を調べる。
  3. 画像認識分野から自然言語処理分野へと発展し、残差接続が使われているTransformerモデルの構造を比較する。

数理的な差分の考え方と信号の伝達経路を結びつけて整理することで、深層学習モデルが層を深くできる背景を体系的に捉えられるようになります。

投稿者プロフィール

山崎講師
山崎講師代表取締役
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
海外放浪の末、2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。

学生時代は趣味と実益を兼ねてリゾートバイトにいそしむ。長野県白馬村に始まり、志賀高原でのスキーインストラクター、沖縄石垣島、北海道トマム。高じてオーストラリアのゴールドコーストでツアーガイドなど。現在は野菜作りにはまっている。