隠れ層 (G検定)

隠れ層

1. 定義と概要

隠れ層とは、ニューラルネットワークにおいて入力層と出力層の間に位置する層のことです。前の層から受け取った値に重みを掛けて合計し、活性化関数(入力の合計値を変換して次の層に渡すための関数)を通すことで、データの特徴を段階的に抽出・変換して次の層へ渡します。中間層とも呼ばれます。

1層以上の隠れ層を持つネットワークは多層パーセプトロン(MLP。隠れ層を持つニューラルネットワークの基本形)と呼ばれ、隠れ層を持たない単純パーセプトロン(入力層と出力層だけで構成される最も単純な構造)とは、表現できる関数の範囲が異なります。単純パーセプトロンが直線一本で結果を分ける処理しかできないのに対し、多層パーセプトロンは隠れ層を挟むことで、より複雑な境界線を描けるようになります。両者の違いを並べると次のとおりです。

モデル 構造 扱える分類
単純パーセプトロン 入力層と出力層だけ 直線一本で分けられる線形分類のみ
多層パーセプトロン 入力層と出力層の間に1層以上の隠れ層を持つ 隠れ層の非線形変換により非線形分類も扱える

この差が生まれた経緯を、もう少しさかのぼって確認します。

単純パーセプトロンは入力層と出力層のみで構成され、直線で分けられる問題(線形分類)しか扱えないという制約がありました。この限界を超えるため、入力層と出力層の間に隠れ層を挟み、活性化関数による非線形変換を加えることで、非線形分類(直線一本ではきれいに分けられない複雑なパターンの分類)を扱えるようになった、という経緯があります。

隠れ層を複数重ねたネットワークが、ディープラーニングの基本形にあたります。画像や音声のように複雑な構造を持つデータほど、隠れ層を重ねる意義が大きくなります。

2. 試験対策ポイント

隠れ層の働きの基本は、前の層から受け取った値に重みを掛けて合計し、活性化関数を通して次の層へ渡すという処理です。シグモイド関数や「ReLU」などが代表的な活性化関数にあたります。単純パーセプトロンと多層パーセプトロンの違いは、この処理を挟むかどうかにあり、あわせて整理しておきたいところです。層を一つ挟むだけで、扱える問題の幅が大きく広がります。

隠れ層の重みは、誤差逆伝播法(バックプロパゲーション。出力の誤差を逆向きに伝えて各層の重みを調整する学習方法)によって更新されます。隠れ層の数を増やすほどネットワークは深くなり、より複雑な特徴表現が可能になる一方、層を重ねるほど勾配消失問題(層を重ねすぎると誤差の情報が深い層まで伝わりにくくなり学習が進みにくくなる現象)が生じやすくなるという関係にあります。

深さと学習の安定性は、トレードオフの関係にあります。層を増やせば表現力は上がりますが、学習が思うように進まなくなる可能性も同時に高まる、という両面を持つ論点です。

制限付きボルツマンマシン(RBM。可視層と隠れ層の2層だけで確率的にデータの特徴を学習するモデル)では、隠れ層が観測データを表す可視層(RBMで入力にあたる観測データを表す層)とペアになります。両者は二部グラフ(2つのグループに分かれ、同じグループ内同士はつながらないネットワークの構造)を構成し、可視層の内部・隠れ層の内部にはそれぞれ結合を持ちません。

可視層より隠れ層のユニット数が少ない場合、隠れ層は入力の特徴量(データの特徴を数値で表したもの)を表すベクトルとみなせる、という捉え方もあります。

3. 関連概念との比較・相違点

可視層との最大の違いは、制限付きボルツマンマシンという枠組みの中での役割にあります。可視層が観測データそのものを表す層であるのに対し、隠れ層はそこから抽出した特徴を表す層で、両者は二部グラフとして対になり、同一層内のノード間には結合を持ちません。これは一般的な多層パーセプトロンの層構造とは異なる、確率モデル特有の対比です。

多層パーセプトロンの隠れ層が層から層へ一方向に値を伝えるのに対し、RBMの隠れ層と可視層は互いに確率的な影響を与え合う点も異なります。可視層そのものの成り立ちは、本記事では立ち入らず別のテーマとして扱われます。

入力層・出力層との最大の違いは、位置と役割にあります。3つの層を並べると、次のような分担になります。

層 位置 役割
入力層 ネットワークの入口 生データを最初に受け取る
隠れ層 入力層と出力層の間 外部から直接は観測できない中間の変換を担う
出力層 ネットワークの出口 最終的な結果を出す

この表のうち、外から様子をうかがいにくいのが隠れ層です。入力層と出力層の値は外から確認できますが、隠れ層が途中でどのような特徴を作っているかは、学習が終わった後でも直接には見えにくいという性質があります。入力から出力までの過程で何が起きているかは、隠れ層の中身を見ない限り分かりにくい、という点も覚えておきたいところです。

4. ビジネス・実務での活用シナリオ

画像認識の分野では、医療の診断支援や製造業の外観検査で、畳み込みニューラルネットワーク(画像の特徴を捉えるのに適したネットワーク構造)の隠れ層がエッジや形状、部位といった特徴を段階的に抽出し、最終層で疾患の有無や製品の欠陥を分類します。人手で検査基準を作り込まなくても隠れ層が特徴抽出を自動で担うため、検査員ごとの判断のばらつきを抑えられるという効果があります。

層が浅いエッジの検出から層が深い部位の認識まで、段階を追って特徴を積み上げていく点が実務での強みになります。

自然言語処理(人間の言葉をコンピュータに処理させる技術)の分野では、翻訳や感情分析において隠れ層が文脈や話題といった抽象的な特徴を学習します。単語を一つずつ処理するだけでは文全体の意味をつかみにくいところを、隠れ層が文全体の関係性を反映した表現に変換するため、より自然な翻訳や精度の高い感情分析につながります。同じ単語でも前後の文脈によって意味が変わる場合の対応が、隠れ層の役割の中心にあります。

レコメンドや異常検知の分野では、制限付きボルツマンマシンやオートエンコーダー(データを圧縮してから復元する過程で特徴を学習するネットワーク)の隠れ層が、データを凝縮した特徴表現をつくります。この特徴表現をもとにした協調フィルタリング(利用者どうしの似た傾向から好みを推測する手法)による推薦や、通常とは異なるパターンの検知が実務で行われています。

元のデータより情報量の少ない隠れ層の値だけで元の傾向を再現できることが、圧縮と特徴抽出を同時に行う利点です。

5. 要点まとめ

  • 隠れ層は入力層と出力層の間に位置し、重み付けと活性化関数による非線形変換でデータの特徴を段階的に抽出・変換する層です。
  • 隠れ層の有無が単純パーセプトロン(線形分類のみ)と多層パーセプトロン(非線形分類が可能)の違いにつながり、重みは誤差逆伝播法で更新されます。
  • 制限付きボルツマンマシンでは隠れ層が可視層とペアの二部グラフを構成し、特徴量ベクトルとして機能します。

6. 確認問題

問1隠れ層は入力層と出力層の間に位置し、活性化関数を通じてデータの特徴を非線形に変換する役割を持つ。

解答・解説をみる

○ 正しい

前の層から受け取った値に重みを掛けて合計し、活性化関数を通して次の層へ渡すという、隠れ層の基本的な働きに合致します。この処理の有無が単純パーセプトロンとの違いを生みます。

問2制限付きボルツマンマシン(RBM)では、可視層と隠れ層が二部グラフ構造をとり、同一層内のノード間には結合を持たない。

解答・解説をみる

○ 正しい

RBMの「制限」とは同一層内の結合を禁止することを指し、可視層・隠れ層それぞれの内部にはノード間の結合がない二部グラフ構造をとります。可視層と隠れ層の対がRBMの土台になります。

問3単純パーセプトロンは隠れ層を持ち、直線では分けられない非線形分類を扱うことができる。

解答・解説をみる

× 誤り

単純パーセプトロンは入力層と出力層のみで構成され隠れ層を持たず、扱えるのは線形分類のみです。正しくは、隠れ層を持ち非線形分類を扱えるのは多層パーセプトロンであり、両者は取り違えやすい組み合わせです。