Wednesday, February 25, 2015

Step by Step Neural Network: Classic Momentum

Using the update rule described in Momentum, I modified the prototype as follow.
モーメンタムの記述に従って実装1を以下のように修正する。

Code: Parameter Update Part

# Update Weights
dW1 = - lr * dEdW1 + mc * dW1
dB1 = - lr * dEdB1 + mc * dB1
dW2 = - lr * dEdW2 + mc * dW2
dB2 = - lr * dEdB2 + mc * dB2
W1, B1, W2, B2 = W1+dW1, B1+dB1, W2+dW2, B2+dB2

Result

The following figures show the change of cross-entropy and accuracy of the network over the iteration. Momentum coefficient $\eta=0.3, 0.6, 0.9$ were used and the other hyper parameters were set same as the configuration in Prototyping1 (Result). We can see that the network gets optimised faster by introducing momentum. Also, when $\eta=0.9$, both cross-entropy and accuracy is oscillating.

以下の図は試作1(結果)での実験と同じパラメーター設定でモーメンタム $\eta=0.3, 0.6, 0.9$ と変化させたときのクロスエントロピーと正解率の推移である。モーメンタムを導入したことで、最適化が促進されたことが分かる。また $\eta=0.9$ では、エントロピー及び正答率の変化に、振動が見られる。

No comments:

Post a Comment