係数爆発に関しての対処として、以下の2つの案を検討しています 1)結合パラメータが爆発した場合は、現在の結合パラメータをランダムな値に置き換える 2)結合パラメータが爆発した場合は、現在の結合パラメータをゼロに置き換える 1)の案は、いわば爆発したパラメータを無かったことにして、再学習を促す設計です。 問題点としては、ネットワーク内の単一のパラメータ変化が他の結合パラメータに影響を与えるため 学習効率が極端に悪くなります。 2)の案は、いわば爆発したパラメータを無効化することで、ノード計算から切り離す設計です。 結合パラメータがゼロであれば、結合パラメータの修正を行わない設計とすれば、ネットワークの自動縮小化が可能となります。 ただし、一つの結合パラメータをゼロ化すると、残りの結合パラメータが割を食うため、連鎖的に係数爆発が起こる可能性があります。 ※係数爆発 ネットワークの計算中にパラメータがオーバーフローを起こして、計算結果が無効になってしまう現象のことを、本プロジェクトでは 「係数爆発」と呼んでいます。(具体的には、double型変数に格納される数値がNaN化することを係数爆発と呼んでいます) 係数爆発は「順計算(計算結果伝搬)」「逆計算(誤差逆伝搬)」「学習判定(打ち切り判定を行うための誤差計算)」のいづれの計算でも発生する可能性があり、極めて厄介です。