つづき
6.損失関数の変更
binary_crossentropy(交差エントロピー)が基準であるが、他の関数に変えた時の
正解率を調べることにする。なお、CNNの構造は、前回の5.2.1とした。
やはり、基準の binary_crossentropyが良い。以降はこれを使う事にする。
損失関数 | binary_crossentropy | mean_squared_error | hinge |
正解率 | 0.8157 | 0.7243 | 無限ループ(*) |
(*)損失が変わらないために、同じ計算を最大数回繰り返した。
7.最適化関数の変更
Adamが基準であるが、他の関数に変えた時の
正解率を調べることにする。なお、CNNの構造は、前回の5.2.1とした。
基準のAdamよりもRMSpropの方が良い。以降はこれを使う事にする。
最適化関数 | Adam | RMSprop | Nadam |
正解率 | 0.8157 | 0.8253 | 0.7548 |
8.CNN構造の変更を再試行
追加した層が2つの場合に正解率が下がった事に納得がいかなかったので、最適化関数を
RMSpropに変えて調べてみた。正解率が上がり、ドロップアウト率は0.25が良い。
ドロップアウト率 | 追加なし | 0.2 | 0.25 | 0.33 |
正解率 | 0.8253 | 0.673 | 0.8525 | 0.8493 |
次回へつづく
<個人的な感想>
層が多いほうが正解率が上がる事に納得した。それにしても、最適化関数の選び方でCNNの
構造が変わる事は予想外であった(Adamは基準関数なのに・・・)。