はじめに ニューラルネットワークの仕組みを理解するためには、やっぱり自分の手で実装することが最も良いと思っています。今回は3層(入力層、隠れ層、出力層)のニューラルネットワークを自作することを目的に記事を書きます。 事前知識 パーセプトロン 聞き飽きている方も多いでしょうが、「パーセプトロン(perceptron)」とは人間の脳にあるニューロンを模倣しています。 ニューロンは下図のような構造をしています。ニューロンは複数のニューロンから樹状突起で電気信号を入力として受け取り、ある一定以上の刺激を受けると、軸索の末端部分から電気刺激を出し、次のニューロンに刺激を与えます。 ニューロンに対して、パーセプトロンは下図のような構造をしています。ニューロンと同じように入力に重み(weight)を付けて複数から受け取り、その重み付け総和を活性化関数(activation function)を通すことで
![自分でニューラルネットワークを作ろう - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/1a8a5acaacf2b5bf1637eb541e8b209e2a996b84/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZ0eHQ9JUU4JTg3JUFBJUU1JTg4JTg2JUUzJTgxJUE3JUUzJTgzJThCJUUzJTgzJUE1JUUzJTgzJUJDJUUzJTgzJUE5JUUzJTgzJUFCJUUzJTgzJThEJUUzJTgzJTgzJUUzJTgzJTg4JUUzJTgzJUFGJUUzJTgzJUJDJUUzJTgyJUFGJUUzJTgyJTkyJUU0JUJEJTlDJUUzJTgyJThEJUUzJTgxJTg2JnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz01M2RiNDM5ZmVhNjJiYzUyMTFmZTU2NDJmY2E4YWJlOA%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwdGFrYWhpcm9faXRhenVyaSZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9ZWYzMTJjNTllZTY4MTAzNDE5MGQ2MGI5MDM5ZGUzMDE%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3Dcbab062638656bd43d8e74a704d4df72)