# 一言日記 2019/07/20

6時間くらいかけてようやくLeNet-5を使った学習（MNISTデータセットの手書き文字認識）が上手くできた．

```Epoch 1 loss(train) = variable(230.29222106933594), accuracy(train) = 0.1032, accuracy(test) = 0.101
Epoch 2 loss(train) = variable(219.98751831054688), accuracy(train) = 0.3816, accuracy(test) = 0.3776
Epoch 3 loss(train) = variable(129.0580291748047), accuracy(train) = 0.6319, accuracy(test) = 0.6383
Epoch 4 loss(train) = variable(82.83393096923828), accuracy(train) = 0.7655, accuracy(test) = 0.7681
Epoch 5 loss(train) = variable(61.799598693847656), accuracy(train) = 0.8188, accuracy(test) = 0.8188
：：
Epoch 18 loss(train) = variable(14.283223152160645), accuracy(train) = 0.9605, accuracy(test) = 0.9506
Epoch 19 loss(train) = variable(13.457979202270508), accuracy(train) = 0.9619, accuracy(test) = 0.9533
Epoch 20 loss(train) = variable(12.705121994018555), accuracy(train) = 0.9629, accuracy(test) = 0.9547```

ただ，SGDでパラメータを最適化した場合だと，下のように精度が11％で止まってしまう．

```Epoch 1 loss(train) = variable(230.16461181640625), accuracy(train) = 0.1127, accuracy(test) = 0.1135
Epoch 2 loss(train) = variable(230.06752014160156), accuracy(train) = 0.1127, accuracy(test) = 0.1135
Epoch 3 loss(train) = variable(230.06521606445312), accuracy(train) = 0.1127, accuracy(test) = 0.1135
Epoch 4 loss(train) = variable(230.06492614746094), accuracy(train) = 0.1127, accuracy(test) = 0.1135
Epoch 5 loss(train) = variable(230.06471252441406), accuracy(train) = 0.1127, accuracy(test) = 0.1135
：：
Epoch 18 loss(train) = variable(230.0627899169922), accuracy(train) = 0.1127, accuracy(test) = 0.1135
Epoch 19 loss(train) = variable(230.06265258789062), accuracy(train) = 0.1127, accuracy(test) = 0.1135
Epoch 20 loss(train) = variable(230.06248474121094), accuracy(train) = 0.1127, accuracy(test) = 0.1135```

## 投稿者: 