無限不可能性ドライブ

『ニューラルネットワーク自作入門』に刺激されてExcelVBAでニューラルネットワークを作ってみたものの、やっぱり数学やらなきゃと思い少しずつやってきたのもあって、自分の知識の整理とかそういった感じです。

【数式編】(順伝播)隠れ層2層めのユニットの出力を求める

f:id:celaeno42:20180924000931p:plain

出力値の求め方

隠れ層2層めのユニットの出力値の求め方は、1層めのユニットとほぼ同じです。
ただし、入力値は1層めの該当するユニットの出力値( z_1^2, z_2^2, z_3^2)となります。
例として ユニットh21 の出力を求めてみます。

 z_1^3 を求める

ユニットh21 の出力値  z_1^3 を求めるには、その前に  u_1^3 を求める必要があります。


\displaystyle u_1^3 = w_{11}^3 z_1^2 + w_{12}^3 z_2^2 + w_{13}^3 z_3^2 + b_1^3


これに  ReLU を適用して  z_1^3 を求めます。


\displaystyle z_1^3 = ReLU(u_1^3)


出力を求める式

他のユニットも同様です。

ユニットh21

\displaystyle u_1^3 = w_{11}^3 z_1^2 + w_{12}^3 z_2^2 + w_{13}^3 z_3^2 + b_1^3

\displaystyle z_1^3 = ReLU(u_1^3)


ユニットh22

\displaystyle u_2^3 = w_{21}^3 z_1^2 + w_{22}^3 z_2^2 + w_{23}^3 z_3^2 + b_2^3

\displaystyle z_2^3 = ReLU(u_2^3)


ユニットh23

\displaystyle u_3^3 = w_{31}^3 z_1^2 + w_{32}^3 z_2^2 + w_{33}^3 z_3^2 + b_3^3

\displaystyle z_3^3 = ReLU(u_3^3)


ユニットh24

\displaystyle u_4^3 = w_{41}^3 z_1^2 + w_{42}^3 z_2^2 + w_{43}^3 z_3^2 + b_4^3

\displaystyle z_4^3 = ReLU(u_4^3)




f:id:celaeno42:20180924233724p:plain