NN学習の試行回数による変化

NN学習の試行回数による変化

概要

  • NNの学習について、試行回数を重ねていくと、結果がどの程度変動するかを調べる
    • 簡単なネットワーク、畳み込みネットワークでやってみる
    • 乱数シードを固定した場合もやってみる
    • 異常データを含む場合にどうなるかもやってみる(ラベルをランダム値に変更することで模擬)
  • 結果
    • 10回繰り返しの結果として、単純なMNISTではほとんど差異がなかった
    • また、CNNでも同様の結果となった
    • 乱数シードを固定することで、ばらつきはなくなる
    • また、3つに1つの割合で、ラベルをランダム値に変更した場合、試行ごとのばらつきが、正常データのみの場合に比べて大きい結果となった

環境

  • Python : ver3.8.5
  • TensorFlow : ver2.3.1

結果詳細

単純なニューラルネットワークの場合

[試行ごとの学習の精度変化] f:id:storikai:20201031215947p:plain [試行ごとの学習の損失関数変化] f:id:storikai:20201031220006p:plain

[試行ごとの評価の精度変化] f:id:storikai:20201031220023p:plain [試行ごとの評価の損失関数変化] f:id:storikai:20201031220037p:plain

CNNの場合

[試行ごとの学習の精度変化] f:id:storikai:20201031220054p:plain [試行ごとの学習の損失関数変化] f:id:storikai:20201031220108p:plain

[試行ごとの評価の精度変化] f:id:storikai:20201031220124p:plain [試行ごとの評価の損失関数変化] f:id:storikai:20201031220137p:plain

乱数シード値を固定した場合

[試行ごとの学習の精度変化] f:id:storikai:20201031220153p:plain [試行ごとの学習の損失関数変化] f:id:storikai:20201031220205p:plain

[試行ごとの評価の精度変化] f:id:storikai:20201031220221p:plain [試行ごとの評価の損失関数変化] f:id:storikai:20201031220233p:plain

1/3のラベルをランダム値にした場合

[試行ごとの学習の精度変化] f:id:storikai:20201031220249p:plain [試行ごとの学習の損失関数変化] f:id:storikai:20201031220305p:plain

[試行ごとの評価の精度変化] f:id:storikai:20201031220326p:plain [試行ごとの評価の損失関数変化] f:id:storikai:20201031220611p:plain