ニューラルネットワーク (Neural Network)
ニューラルネットワークは人間の脳の神経回路を模倣した計算モデルで、機械学習や深層学習において広く利用されるアルゴリズムです。
基本的な構造は、入力層(Input Layer)、隠れ層(Hidden Layers)、出力層(Output Layer)の3つの層で構成されます。
各層には重み(Weights)とバイアス(Bias)と呼ばれるパラメータが存在し、各層の重みの接続はニューロン(Neuron)と呼ばれます。
入力されたデータは、ニューロンの接続を通じて次の層へ伝達され、活性化関数(Activation Function)の適用で非線形な表現が可能になります。
ニューラルネットワークの学習プロセス
学習の過程では、誤差逆伝播法(Back propagation)と最適化手法(確率的勾配降下法 SGDなど)を用いて、正解と予測の誤差を減らすように重みとバイアスが調整されます。
ニューラルネットワークは非常に優れた表現能力を持ちますが、この理論的な基盤に「万能近似定理」があります。 万能近似定理は、「あらゆる任意の連続関数は、1つの隠れ層に十分な数のニューロンを備えた単層のニューラルネットワークによって、任意の精度で近似できる」という定理です。
単層のニューラルネットワークでは、必要なニューロンの数が非常に多くなり実用上の問題が発生します。そこで、多層の隠れ層を接続してネットワークを深くした「ディープニューラルネットワーク(DNN)」により、少ないニューロンで効率的に関数を近似出来るようになります。
ニューラルネットワークの学習が完了してしまえば、予測(推論)の計算は大量の単純な行列演算に帰着されるため、GPUやTPUによる並列計算が容易です。そのため大規模なネットワークでもリアルタイムに近い計算が可能です。
CAEサロゲートモデルにおけるニューラルネットワークの役割
ニューラルネットワークは、3D CAEサロゲートモデルに必要不可欠な技術です。3D CAEサロゲートモデルでは、CAEの入力(3D CADデータや境界条件)と出力(応力分布や温度分布、流体の速度分布など)の関係をニューラルネットワークにより近似します。
ニューラルネットワークが持つ「万能近似定理」により、高次元かつ強い非線形性を持つCAE結果でさえも高い精度で近似できます。ひとたびCAEサロゲートモデルの学習が済んでしまえば、CAEの入力をモデルに通すだけで、ニューラルネットワークの重みとバイアスを用いた単純な行列演算によって出力が得られるため、シミュレーションを実行するよりも圧倒的に早く結果を得ることが出来ます。
CAEにおけるサロゲートモデルでは、ディープニューラルネットワーク(DNN)だけではなく、畳み込みニューラルネットワーク(CNN)、グラフニューラルネットワーク(GNN)、Transformerなどが使われます。高速かつ高精度な予測を実現するためには、シミュレーションの種類やデータの性質に応じて適切なニューラルネットワークを選択し、組み合わせることが重要です。