ニューラルネットワーク

Neural Network

ニューラルネットワーク(Neural Network)とは、人間の脳の神経回路網を模したモデルで、多数のニューロン(ノード)が層状に接続された構造を持つ機械学習アルゴリズムです。深層学習(ディープラーニング)の基礎となる技術です。

基本構造

ニューラルネットワークは入力層、隠れ層(中間層)、出力層の3種類の層で構成されます。各ニューロンは前の層のすべての出力を重み付きで受け取り、活性化関数を適用して次の層に出力します。隠れ層が2層以上のものを深層ニューラルネットワーク(ディープラーニング)と呼びます。

表:ニューラルネットワークの要点まとめ
ひとことで言うと脳の神経回路をまねた、層を重ねて複雑な関係を学ぶモデル。
どこで使う画像認識、音声認識、自然言語処理。ディープラーニングの土台。
注意点大量のデータと計算資源が必要で、判断の理由が分かりにくい。

学習の仕組み

順伝播(Forward Propagation)で入力から出力を計算し、損失関数で誤差を求め、逆伝播(Backpropagation)で各重みの勾配を計算し、勾配降下法でパラメータを更新します。

図:ニューラルネットワークの構造
1入力層データを受け取る
▶
2重み付きで伝達つながりの強さを掛ける
▶
3活性化関数非線形に変換
▶
4中間層で繰り返す何層も重ねる
▶
5出力層予測結果を出す

ニューラルネットワークの種類

全結合型(MLP)、畳み込みニューラルネットワーク(CNN)、再帰型ニューラルネットワーク(RNN)、Transformerなど、タスクに応じた多様なアーキテクチャがあります。