はじめに ニューラルネットワークの仕組みを理解するためには、やっぱり自分の手で実装することが最も良いと思っています。今回は3層(入力層、隠れ層、出力層)のニューラルネットワークを自作することを目的に記事を書きます。 事前知識 パーセプトロン 聞き飽きている方も多いでしょうが、「パーセプトロン(perceptron)」とは人間の脳にあるニューロンを模倣しています。 ニューロンは下図のような構造をしています。ニューロンは複数のニューロンから樹状突起で電気信号を入力として受け取り、ある一定以上の刺激を受けると、軸索の末端部分から電気刺激を出し、次のニューロンに刺激を与えます。 ニューロンに対して、パーセプトロンは下図のような構造をしています。ニューロンと同じように入力に重み(weight)を付けて複数から受け取り、その重み付け総和を活性化関数(activation function)を通すことで