Neural Network と Universality について
-
Upload
kato-yuzuru -
Category
Engineering
-
view
435 -
download
6
Transcript of Neural Network と Universality について
![Page 1: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/1.jpg)
Neural Network の
Universalityについて
![Page 2: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/2.jpg)
本資料の内容は、
「Neural Network and Deep Learning」Michel Nielsen著
http://neuralnetworksanddeeplearning.com/
に基づいています。
![Page 3: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/3.jpg)
本資料の内容は、
Rigorous(厳密)さよりも、Roughly(ざっくり)でも
直観的な理解のしやすさ、
に焦点を当ててまとめました。
![Page 4: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/4.jpg)
アウトライン
1.本資料について(スキップ可)
2.Neural Network とは?
3.論理関数としてのUniversality
4.連続関数としてのUniversality
![Page 5: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/5.jpg)
アウトライン
1.本資料について(スキップ可)
2.Neural Network とは?
3.論理関数としてのUniversality
4.連続関数としてのUniversality
![Page 6: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/6.jpg)
1.本資料について
「Neural Network and Deep Learning」の著者Michael Nielsen とは?
1-1.Michael Nielsen
過去:量子情報処理分野の研究者現在:科学者、作家、プログラマーとして、
科学のオープン化など、複数の活動を遂行中。http://michaelnielsen.org/
Michael Nielsen
著書:
量子情報処理入門(和訳あり)
オープンサイエンス(和訳あり)
Neural networkAnd
Deep Learning
本資料の内容はこれ
![Page 7: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/7.jpg)
1.本資料について
Neural Network と Deep Learningについて、Principle(原理)に焦点をおいてまとめたオンラインブック。本資料は、特に Neural Network の直観的理解につながる
Universalityについて、1章と4章の内容についてまとめました。
1-2.Neural Network and Deep Learning
![Page 8: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/8.jpg)
アウトライン
1.本資料について(スキップ可)
2.Neural Network とは?
3.論理関数としてのUniversality
4.連続関数としてのUniversality
![Page 9: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/9.jpg)
2. Neural Networkとは? 2-1. Neural Network
大量のデータからコンピュータに学習させるための、(生物模式的な)理論的枠組み。
学習用データ
未知データを入力
1 3 1
2 8 6
4 3 2
6 0 4
8 5 9
0 9 4
6 1 0
2 1 1
3 9 0
Neural Network正解を出力
0 9 4
6 1 0
学習用データ
![Page 10: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/10.jpg)
つまり・・・
![Page 11: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/11.jpg)
2. Neural Networkとは? 2-1. Neural Network
入力:手書き数字画像
学習用データ
1 3 1
2 8 6
4 3 2
6 0 4
8 5 9
0 9 4
6 1 0
2 1 1
3 9 0
Neural Network
学習用データ
入出力関係からルールを学習
例:
出力:表された数字
上の4画像に近いパーツがあれば、その画像に表された数字は、0である可能性が高い。
0
※手書き数字画像の各ピクセルを並べたベクトルを X 、出力数字を y として、(X, y)の入出力関係データを大量に用いる。
未知データを入力
正解を出力
0 9 4
6 1 0
![Page 12: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/12.jpg)
2. Neural Networkとは? 2-1. Neural Network
入力:手書き数字画像
学習用データ
1 3 1
2 8 6
4 3 2
6 0 4
8 5 9
0 9 4
6 1 0
2 1 1
3 9 0
学習用データ
学習したルールをもとに正解を出力(正解率は95%以上)
例:
出力:表された数字
上の4画像に近いパーツがあれば、その画像に表された数字は、0である可能性が高い。
0
未知データを入力
正解を出力
0 9 4
6 1 0
Neural Network
※手書き数字画像の各ピクセルを並べたベクトルを X 、出力数字を y として、(X, y)の入出力関係データを大量に用いる。
![Page 13: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/13.jpg)
具体的に、どうやって学習をするのか?
![Page 14: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/14.jpg)
2. Neural Networkとは? 2-2.Perceptron
Neural Network の基本単位である各ニューロンをPerceptronモデルで表す。
このモデルは、人間の意思決定モデルとも解釈できる。
Perceptronモデル 意思決定モデル
Output:0: 買い物に行かない1: 買い物に行くInput:X1: 天気が良いかどうかX2: 恋人がついてくるかどうかX3: 近くで祭りがあるかどうか
(w1,w2,w3,thershold) = (0.7, 0.5, 0.1, 1) とすれば、(x1,x2,x3) = (1,1,0) でOutputは 1 。つまり、天気が良く、恋人がついてこれば、近くで祭りがなくても、買い物に行く。
![Page 15: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/15.jpg)
2. Neural Networkとは? 2-2.Perceptron
Perceptronモデル 意思決定モデル
Output:0: 買い物に行かない1: 買い物に行くInput:X1: 天気が良いかどうかX2: 恋人がついてくるかどうかX3: 近くで祭りがあるかどうか
(w1,w2,w3,threshold) = (0.7, 0.5, 0.1, 1) とすれば、(x1,x2,x3) = (1,1,0) でOutputは 1 。つまり、天気が良く、恋人がついてこれば、近くで祭りがなくても、買い物に行く。
(w1,w2,w3,…,threshold) が変わると
Output が変わる。
つまり(w1,w2,w3,…,threshold) が
ルールを決める
Neural Network の基本単位である各ニューロンをPerceptronモデルで表す。
このモデルは、人間の意思決定モデルとも解釈できる。
![Page 16: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/16.jpg)
2. Neural Networkとは?
学習用データ
1 3 1
2 8 6
4 3 2
6 0 4
8 5 9
0 9 4
6 1 0
2 1 1
3 9 0
Neural Network
学習用データ
未知データを入力
正解を出力
0 9 4
6 1 0
大量データから、多数パーセプトロンの (w1,w2,w3,…,threshold) を調整し、複雑なルールを学習する。
2-2.Perceptron
![Page 17: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/17.jpg)
2. Neural Networkとは?
学習用データ
1 3 1
2 8 6
4 3 2
6 0 4
8 5 9
0 9 4
6 1 0
2 1 1
3 9 0
学習用データ
入出力関係から(w1,w2,w3…, threshold)を調整し、ルールを学習
例:
上の4画像に近いパーツがあれば、その画像に表された数字は、0である可能性が高い。
未知データを入力
正解を出力
0 9 4
6 1 0
大量データから、多数パーセプトロンの (w1,w2,w3,…,threshold) を調整し、複雑なルールを学習する。
Neural Network
2-2.Perceptron
![Page 18: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/18.jpg)
2. Neural Networkとは? 2-3.Sigmoidニューロン
ただし実際には、非連続関数は扱いにくいため、Perceptronを Sigmoid ニューロンで近似する場合が多い。
Perceptron Sigmoidニューロン
![Page 19: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/19.jpg)
なお、はじめに (生物模式的な)と書いたのは、
「Neural Networkは、脳機能のモデル化である」
という研究の源泉があるからです。ただ、専門家の意見としては、厳密には違うらしいです。
参照:http://spectrum.ieee.org/robotics/artificial-intelligence/machinelearning-maestro-michael-jordan-on-the-delusions-of-big-data-and-other-huge-engineering-efforts
![Page 20: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/20.jpg)
あくまで、Neural Network を
「大量のデータからコンピュータに学習させるための、(生物模式的な)理論的枠組み」
くらいで捉えるのがよさそうです。
![Page 21: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/21.jpg)
アウトライン
1.本資料について(スキップ可)
2.Neural Network とは?
3.論理関数としてのUniversality
4.連続関数としてのUniversality
![Page 22: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/22.jpg)
Universality とは、
「一般性」や「普遍性」
という意味です。
![Page 23: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/23.jpg)
「~のUniversality」 とは、
「任意の~」という意味を持ちます。
![Page 24: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/24.jpg)
Neural Network の「論理関数としてのUniversality」
とは、
Neural Network によって、「任意の論理計算を実現できる」
ことを意味します。
![Page 25: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/25.jpg)
本章では、
どうやって、Neural Networkによって、任意の論理計算を実現できるのか?
についてまとめました。
![Page 26: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/26.jpg)
3.論理関数としてのUniversality 3-1.NANDゲート
NANDゲートを基本素子として、複数の基本素子を組み合わせれば、任意の論理計算を実現できる。
X1 X2 X1 NAND X2
0 0 1
0 1 1
1 0 1
1 1 0
X1
X2
X1 NAND X2
NANDゲート
![Page 27: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/27.jpg)
3.論理関数としてのUniversality 3-1.NANDゲート
X1 X2 X1 NAND
X2
0 0 1
0 1 1
1 0 1
1 1 0
例:Bitwise Sum X1 X2 BitwiseSum
0 0 00
0 1 01
1 0 01
1 1 10
X1
X2
X1 NAND X2
NANDゲート※任意の論理計算の実現性について、証明の記載まではなかったので、例の記載のみにとどめておきます。
NANDゲートを基本素子として、複数の基本素子を組み合わせれば、任意の論理計算を実現できる。
![Page 28: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/28.jpg)
つまり、
Neural Network の基本素子である「ニューロン」によって「NANDゲート」
を実現できれば、
Neural Networkは任意の論理計算を実現できる、
ということになります。
![Page 29: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/29.jpg)
3.論理関数としてのUniversality 3-2.NANDゲートニューロン
ニューロン(パーセプトロン)によってNANDゲートを実現できる。
X1 X2 X1 NAND X2
0 0 (-2)*0+(-2)*0 > -3 | 1
0 1 (-2)*0+(-2)*1 > -3 | 1
1 0 (-2)*1+(-2)*0 > -3 | 1
1 1 (-2)*1+(-2)*1 > -3 | 0(w1,w2,thershold) = (-2, -2, -3)
NANDゲートニューロン
![Page 30: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/30.jpg)
3.論理関数としてのUniversality 3-2.NANDゲートニューロン
ニューロン(パーセプトロン)によってNANDゲートを実現できる。つまり、Neural Network によって、任意の論理計算を実現できる。
X1 X2 X1 NAND X2
0 0 (-2)*0+(-2)*0 > -3 | 1
0 1 (-2)*0+(-2)*1 > -3 | 1
1 0 (-2)*1+(-2)*0 > -3 | 1
1 1 (-2)*1+(-2)*1 > -3 | 0
(w1,w2,thershold) = (-2, -2, -3)
NANDゲートニューロン
例:Bitwise Sum
X1 X2 BitwiseSum
0 0 00
0 1 01
1 0 01
1 1 10
※任意の論理計算の実現性について、証明の記載まではなかったので、例の記載のみにとどめておきます。
![Page 31: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/31.jpg)
Neural Network によって、任意の論理計算を実現できる
ことが分かりました。
![Page 32: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/32.jpg)
これは、
Neural Network が、他の計算デバイスと同等の計算能力を持つ
ことを意味します。
![Page 33: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/33.jpg)
これに加えて、
Neural Network は、他の計算デバイスによって実現が容易でない計算能力
を持っています。
![Page 34: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/34.jpg)
それが、先に紹介した
「大量データからコンピュータに学習させる」
という計算能力です。
![Page 35: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/35.jpg)
そして、その計算能力を保証するのが、
「連続関数としてのUniversality」
です。次章では、このことについてまとめました。
![Page 36: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/36.jpg)
アウトライン
1.本資料について
2.Neural Network とは?
3.論理関数としてのUniversality
4.連続関数としてのUniversality
![Page 37: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/37.jpg)
前章同様に、Neural Network の
「連続関数としてのUniversality」とは、
Neural Network によって、「任意の連続関数を実現できる」
ことを意味します。
![Page 38: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/38.jpg)
より具体的には、
「Neural Network によって、十分に正確な近似のもとで、
任意の多入力多出力連続関数Fm(X1,X2,X3,…,Xn)
(n=1,2,3, …; m=1,2,3, …;)を実現できる」
ことを意味します。
![Page 39: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/39.jpg)
図で表すと、以下のような感じです。(n=3,m=2)
![Page 40: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/40.jpg)
本章では、
どうやって、Neural Networkによって、任意の連続関数を実現できるのか?
についてまとめました。
![Page 41: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/41.jpg)
まずは、1入力1出力の場合を考えます。
S1 S2
![Page 42: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/42.jpg)
※1.パーセプトロンの不等式において、(右辺)=0と
するため、 として(左辺)に移項している。
4.連続関数としてのUniversality 4-1.1入力1出力関数
Sigmoidニューロンによって、任意のステップ関数を再現できる。
※2.隠れ層(中間層)に2つのニューロンがあるが、右図グラフが表すのは、上のニューロンの出力結果。 パーセプトロンの不等式
隠れ層
![Page 43: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/43.jpg)
4.連続関数としてのUniversality 4-1.1入力1出力関数
Sigmoidニューロンによって、任意のステップ関数を再現できる。
パーセプトロンの不等式
(b,w)が十分に大きい
も自由に変化可能
※2.隠れ層(中間層)に2つのニューロンがあるが、右図グラフが表すのは、上のニューロンの出力結果。
※1.パーセプトロンの不等式において、(右辺)=0と
するため、 として(左辺)に移項している。
![Page 44: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/44.jpg)
4.連続関数としてのUniversality 4-1.1入力1出力関数
Sigmoidニューロンによって、”bump”関数を実現できる。
3. ここでいう ”bump” 関数とは、右図グラフのような、S1で 0→ h となり、 S2で h→0 となる関数。 h = w1 = -w2 = 0.8 で”bump”の高さを表す。
1.S1 = - b1 / w1, S2 = - b2 / w2 とする。
S1 S2
2.右図グラフは、隠れ層(中間層)の出力の重み付き和の結果。
![Page 45: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/45.jpg)
4.連続関数としてのUniversality 4-1.1入力1出力関数
Sigmoidニューロンによって、複数の”bump”関数を実現できる。
2. hは、各 “bump”の高さを表す。
1.ニューロン内の数値は、各 ”bump” の変化点を表す。
0.4 0.6
0.9
0.7
![Page 46: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/46.jpg)
4.連続関数としてのUniversality 4-1.1入力1出力関数
無数の”bump”関数によって、任意の連続関数を近似できる。
![Page 47: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/47.jpg)
このように、
無数の隠れ層を用意し、無数の”bump” 関数を細かく用意すれば、十分に正確な近似のもとで、
隠れ層の出力の重み付き和によって、任意の連続関数を実現できる。
![Page 48: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/48.jpg)
問題は、Neural Network全体の出力によって、任意の連続関数を実現すること。
![Page 49: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/49.jpg)
これは、隠れ層の出力の重み付き和を、にすることによって達成できる。
![Page 50: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/50.jpg)
以上で、1入力1出力の場合に、
Neural Networkによって、任意の連続関数を実現できる
ことが分かりました。
![Page 51: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/51.jpg)
次に、2入力1出力の場合を考えます。
![Page 52: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/52.jpg)
4.連続関数としてのUniversality 4-2.2入力1出力関数
Sigmoidニューロンによって、任意のステップ関数を実現できる。( y の重みが0で、x に関して)
1.出力ニューロン内の数値は、ステップ関数の変化点を表す。
2.出力ニューロン内の変数は、変化する変数を表す。
![Page 53: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/53.jpg)
4.連続関数としてのUniversality 4-2.2入力1出力関数
Sigmoidニューロンによって、任意のステップ関数を実現できる。( xの重みが0で、yに関して)
1.出力ニューロン内の数値は、ステップ関数の変化点を表す。
2.出力ニューロン内の変数は、変化する変数を表す。
![Page 54: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/54.jpg)
4.連続関数としてのUniversality 4-2.2入力1出力関数
Sigmoidニューロンによって、”bump”関数を実現できる。( y の重みが0で、x に関して)
1.右図グラフは、隠れ層の出力の重み付き和を表す。
2.出力ニューロン内の数値は、”bump” の変化点を表す。
3.h は、“bump” の高さを表す。
![Page 55: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/55.jpg)
4.連続関数としてのUniversality 4-2.2入力1出力関数
1.右図グラフは、隠れ層の出力の重み付き和を表す。
3.h は、“bump” の高さを表す。
Sigmoidニューロンによって、”bump”関数を実現できる。( x の重みが0で、y に関して)
2.出力ニューロン内の数値は、”bump” の変化点を表す。
![Page 56: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/56.jpg)
4.連続関数としてのUniversality 4-2.2入力1出力関数
1.右図グラフは、隠れ層の出力の重み付き和を表す。
2.出力ニューロン内の変数は、変化する変数を表す。
3.h は、“bump” 関数の高さを表す。
”bump”関数を重ねあわせると、グラフのような関数となる。
![Page 57: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/57.jpg)
ここ(3h/2)で、Sigmoid 関数によって
区切ると、
![Page 58: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/58.jpg)
図のような“tower”
のような関数となる。
![Page 59: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/59.jpg)
4.連続関数としてのUniversality 4-2.2入力1出力関数
1.右図グラフは、Neural Network全体の出力を表す。(b= -3h/2)
2.”tower”関数とは、右図グラフのような、”bump” 関数の2次元版。
3.ニューロン内の数字は、各変数の変化点の位置を表す。
”bump”関数を重ねあわせることで、“tower” 関数を実現できる。
![Page 60: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/60.jpg)
4.連続関数としてのUniversality 4-2.2入力1出力関数
Sigmoidニューロンによって、複数の”tower”関数を実現できる。
1.右図グラフは、2層目の隠れ層の出力の重み付き和を表す。
![Page 61: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/61.jpg)
4.連続関数としてのUniversality 4-2.2入力1出力関数
無数の”tower” 関数によって、任意の連続関数を実現できる。
![Page 62: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/62.jpg)
このように
無数の“tower”関数を細かく用意すれば、
十分に正確な近似のもとで、
隠れ層の出力の重み付き和によって、任意の連続関数を実現できる。
![Page 63: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/63.jpg)
前節同様に、
隠れ層の出力の重み付き和を、にすることによって、
2入力1出力の場合でも、任意の連続関数を実現できる。
![Page 64: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/64.jpg)
n入力1出力の場合でも同様に、任意の連続関数を実現できる。
・Snとtnは、各変数の“bump” 関数の変化点を表す。
・n入力の場合、出力ニューロンにおいて、b = - (n + 1/2) h となる。
![Page 65: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/65.jpg)
1出力をm出力にするには、1出力のNeural Networkをm 個用意すればよいだけ。
![Page 66: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/66.jpg)
以上の議論から、
Neural Network によって、十分に正確な近似のもとで、
任意の多入力多出力連続関数Fm(X1,X2,X3,…,Xn)
(n=1,2,3, …; m=1,2,3, …;)を実現できる
ことがわかりました。
![Page 67: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/67.jpg)
つまり、
Neural Network によって、任意の連続関数を実現できる
ことが分かりました。
![Page 68: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/68.jpg)
しかし、任意の計算を
“理論”的に実現できることと、“実用”的に実現すること
には、大きな差があります。
![Page 69: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/69.jpg)
Neural network の中でも、Deep Learning は、
所望の計算を“実用”的に実現する方法
として、経験則的に良い方法と言われています。
![Page 70: Neural Network と Universality について](https://reader034.fdocuments.net/reader034/viewer/2022042608/55c54c88bb61eb667c8b46d3/html5/thumbnails/70.jpg)
本自体がまだアップロードされていませんが、
Deep Learning
についても、機会があればまとめてみたいと思います。