1 定義と歴史
1.1 基本概念
フィードフォワードネットワークは、ニューロン間の結合が循環やフィードバックを持たず、情報が入力層から出力層へ一方向にのみ伝播する人工ニューラルネットワークである。各層のニューロンは前の層からの出力を重み付き和として受け取り、活性化関数を適用した結果を次の層へ渡す。この単純な構造により、関数近似やパターン分類などの静的な写像学習に適している。
1.2 発展の歴史
1.2.1 パーセプトロンから多層へ
1958年にフランク・ローゼンブラットが提案したパーセプトロンは、単一ニューロンからなる初期のフィードフォワードモデルであったが、線形分離可能な問題しか解けない限界があった。1969年のマービン・ミンスキーとシーモア・パパートによる著書『パーセプトロンズ』でこの限界が指摘され、多層構造の必要性が認識された。1970年代には多層パーセプトロンの研究が進み、隠れ層を導入することで非線形問題への対応が可能になった。
1.2.2 誤差逆伝播法の登場
1986年にデイビッド・ラメルハート、ジェフリー・ヒントン、ロナルド・ウィリアムズらが誤差逆伝播法を再発見・普及させた。これにより多層フィードフォワードネットワークの効率的な学習が可能となり、ニューラルネットワーク研究の第二のブームを引き起こした。この手法は出力層の誤差を逆方向に伝播させ、各層の重みを勾配降下法で更新する。
2 ネットワーク構造
2.1 入力層、隠れ層、出力層
フィードフォワードネットワークは、入力層、1つ以上の隠れ層、出力層から構成される。入力層はデータの特徴ベクトルを受け取り、隠れ層は非線形変換を担当し、出力層は最終的な予測や分類結果を出力する。層の数と各層のニューロン数はネットワークの表現力を決定するハイパーパラメータである。
2.2 ニューロンと活性化関数
ニューロンは重み付き和にバイアスを加えた値を活性化関数で変換する。活性化関数は非線形性を導入し、ネットワークの表現力を高める。
2.2.1 シグモイド関数
シグモイド関数は出力を0から1の範囲に圧縮し、主に二値分類の出力層で使用される。しかし、勾配消失問題を引き起こしやすく、隠れ層ではReLU系関数に取って代わられた。
2.2.2 ReLUとその派生
ReLU(Rectified Linear Unit)は、正の入力に対しては恒等写像、負の入力に対しては0を出力する単純な関数である。計算効率が高く、勾配消失問題を軽減するため、深層学習で広く使われる。派生としてLeaky ReLU(負の領域で微小な傾きを持つ)、ELU、PReLUなどが提案されている。
2.2.3 ソフトマックス関数
ソフトマックス関数は多クラス分類の出力層で用いられ、各クラスの出力値を確率分布に変換する。出力の総和が1となるため、相互排他的な分類問題に適している。
2.3 全結合層とその他の接続
全結合層は、前層のすべてのニューロンと次層の全ニューロンが結合する標準的な構造である。これ以外に、スキップ接続(ResNetのような残差接続)や局所結合(畳み込み層)などの変種が存在するが、フィードフォワードネットワークの基本形では全結合層が主に用いられる。
3 学習アルゴリズム
3.1 誤差逆伝播法
3.1.1 順伝播と損失関数
入力データがネットワークを順方向に伝播し、出力が得られる。この出力と真のラベルとの差を損失関数(交差エントロピー誤差や二乗誤差など)で評価する。
3.1.2 勾配計算と重み更新
損失関数に対する各重みの勾配を、連鎖則(チェインルール)を用いて出力層から入力層に向かって計算する。得られた勾配に学習率を乗じ、重みを更新する。このプロセスを全訓練データまたはミニバッチに対して繰り返す。
3.2 最適化手法
3.2.1 確率的勾配降下法(SGD)
SGDは、ミニバッチごとに勾配を計算して重みを更新する手法である。計算効率が高く、局所最適解から抜け出しやすいという利点があるが、収束が不安定な場合がある。
3.2.2 モーメンタム法とAdam
モーメンタム法は過去の勾配の移動平均を用いて更新方向を平滑化し、収束を加速する。Adam(Adaptive Moment Estimation)はモーメンタムとRMSPropを組み合わせ、各パラメータに適応的な学習率を提供する。Adamは多くの実践で標準的な最適化手法である。
3.3 正則化技術
3.3.1 L1/L2正則化
重みの大きさにペナルティを課す正則化手法。L1正則化はスパースな重みを促進し、L2正則化(ウェイト減衰)は重みを小さく保つことで過学習を抑制する。
3.3.2 ドロップアウト
訓練時にランダムにニューロンを一定確率で無効化する手法。これによりニューロン間の共適応を防ぎ、アンサンブル効果で汎化性能が向上する。
3.3.3 バッチ正規化
各層の入力の分布を平均0、分散1に正規化する手法。内部共変量シフトを軽減し、学習を安定化・高速化するとともに、ドロップアウトの代替としても機能する。
4 主要な変種と拡張
4.1 多層パーセプトロン(MLP)
多層パーセプトロンは、複数の全結合層と非線形活性化関数からなるフィードフォワードネットワークの最も一般的な形態である。理論的には任意の連続関数を近似可能であり、ユニバーサル近似定理の対象となる。
4.2 畳み込みニューラルネットワークとの関連
畳み込みニューラルネットワークはフィードフォワード構造に基づきつつ、畳み込み層とプーリング層を導入して空間的局所性を活用する。フィードフォワードネットワークの原理を画像処理に特化させた変種と見なせる。
4.3 深層フィードフォワードネットワーク
層数を増やした深層フィードフォワードネットワークは、より抽象的な特徴を学習できるが、勾配消失や過学習の問題が顕著になる。そのため、残差接続やバッチ正規化などの技術が併用される。
5 応用例
5.1 画像分類
フィードフォワードネットワークは、画像の画素値を入力として、物体のカテゴリを出力する分類器として用いられる。ただし、現代では多くの場合、畳み込み層を組み合わせたハイブリッドモデルが主流である。
5.2 回帰問題
株価予測や住宅価格推定などの連続値予測に、出力層に線形活性化を用いたフィードフォワードネットワークが使われる。
5.3 自然言語処理
単語の埋め込みベクトルを入力とし、感情分析や文書分類などのタスクに適用される。ただし、シーケンスデータにはリカレントネットワークやTransformerがより適している。
5.4 ゲームAIと制御
強化学習の価値関数や方策を近似するために、フィードフォワードネットワークが利用される。チェスや囲碁の評価関数の一部としても使われる。
6 限界と課題
6.1 勾配消失・爆発問題
深いネットワークでは、誤差逆伝播時の勾配が指数関数的に減衰(消失)または増大(爆発)する。これにより学習が停滞するため、活性化関数の選択や初期化手法が重要となる。
6.2 過学習と汎化性能
パラメータ数が多いため、訓練データに過適合しやすい。適切な正則化やデータ拡張、早期停止などの技法が必要である。
6.3 表現力と計算コストのトレードオフ
層数やニューロン数を増やすと表現力は向上するが、計算コストとメモリ消費が増大する。実用的には、タスクに応じた適切なネットワーク規模の選択が求められる。
7 関連技術
フィードフォワードネットワークは、リカレントニューラルネットワーク、畳み込みニューラルネットワーク、自己符号化器、生成敵対ネットワークなど、多くのニューラルネットワークアーキテクチャの基礎をなす。また、転移学習やメタ学習、ニューラルアーキテクチャサーチなどの発展的な技術とも密接に関連する。