ニューラルネットワークとは、脳の機能の特性を計算機のシミュレーションで実現するための数学モデルのことをいい、人工ニューラルネットワーク(artificial neural network:ANN)とも呼ばれます。
脳内には多数の神経細胞(ニューロン)が存在しています。個々のニューロンは、ほかの多数のニューロンから信号を受け取って、そしてほかの多数のニューロンへと信号を受け渡しています。ニューロンとニューロンは、シナプスによって結ばれています。このような情報伝達によって脳波さまざまな情報処理を行っています。
この脳内の仕組みをコンピュータ内で実現したものがニューラルネットワークです。ニューラルネットワークにおいても、人工ニューロン(ノード)がシナプスによって結ばれており、学習によってシナプスの結合強度をさまざまに変化させることで、問題解決の能力をもつようなモデルを構築します。
ニューラルネットワークは階層的なネットワーク構造をしています。外部からの情報を受けるのは入力ユニット(入力ノード)で、外部へと信号を出力するのは出力ユニット(出力ノード)です。
ニューラルネットワークにはさまざまなモデルがありますが、最初に考案された単純な構造をもつモデルは順伝播型ニューラルネットワーク(フィードフォワードニューラルネットワーク:FFNN)です。
ニューラルネットワークでは個々の人工ニューロン(ノード)が結合されたネットワークが構築されますが、FFNNではではネットワーク内にループ構造を持ちません。
そのため、入力ノードから中間ノードそして出力ノードというように、単一の方向のみに信号が伝播する構造となっています。
ニューラルネットワークを作成しただけでは入力ノードに何らかのデータを与えても、出力ノードからは適切な値を出しません。
各ノードをつなぐ部分の「重み」を何らかの方法によってそれぞれ調整することで、希望した出力が得られるようにモデルを変化させる必要があり、このことを「学習」と呼んでいます。
学習には大きく分けて「教師つき学習」と「教師なし学習」という2つの方法があります。
出典・参考