ニューラルネットワークが強力である理由は、その強力なシミュレーション能力にあります。理論的には、無限に小さなエラーで任意の関数をシミュレートできます。
言い換えれば、ニューラルネットワークを使用して任意の関数を構築し、任意のアルゴリズムを取得できます。
ここでは、直感的な理解を得るために、いくつかの視覚的な例を使用します。
これは最も単純なケースであり、活性化関数のないニューロンを使用してシミュレートできます。
10
パラメータを調整することにより、任意の直線をシミュレートできます。
sigmoid活性化関数を持つニューロンを使用してシミュレートします。
300
パラメータが増加し続けると、ニューラルネットワークは徐々に関数に近づきます。
それをいくつかのステップに分けます。
2020
20-20
10-10-5
得られた結果は、目的関数の適切な近似です。
長方形のインパルス関数を使用すると、積分の原理と同じように、他の任意の関数を簡単に近似できます。
10
Broken Lineミッションを完了し、各ニューロンに対応する関数を観察します。
これは最も単純なケースであり、活性化関数のないニューロンを使用してシミュレートできます。
010
のパラメータを調整することにより、任意の平面をシミュレートできます。
sigmoid活性化関数を持つニューロンを使用してシミュレートします。
0300
単項関数の場合と同様に、段階的に実装します。
02020
10-10-5
10-1010-10-15
最終的なニューラルネットワーク構造を次の図に示します。
バイナリ矩形インパルス関数を使用すると、積分の原理と同じように、他のバイナリ関数を簡単に近似できます。
Circleミッションを完了し、各ニューロンに対応する機能を観察します。
原理は同じです、あなた自身のために想像してください! 😥
デジタル回路上に構築されたソフトウェアプログラムも任意の機能をシミュレートできるのに、なぜ人工ニューラルネットワークを発明するのでしょうか。