データセット構成と過剰継ぎ手


かどつぎて


3つの訓練セットを用いて過剰な訓練を行うと、3つの訓練セットに対して誤差の小さい訓練を行うが、試験の3つまたは他のデータセットに対して誤差が増大する.

継ぎ手の解決


3つの検証があれば、自分で評価し、適切な学習方法を見つけることができます.
3つの検証は訓練せず、自分で検証する.
最も理想的な学習量を見つけなければならない.

トラブルシューティング方法

  • の過剰量を確認し,過剰量以前の過剰量のようにモデルを学習した.→短所)2回学習
  • コールバック関数を使用して、オーバーパイプコネクタが検出されると、事前に中断されます.→短所)より良い重みが生まれます.
  • コールバック関数を使用して、各forkで検証セットの損失値をチェックし、以前の損失値を下回る場合にモデルをファイルに保存します.すなわち、学習が終了すると、ファイルに格納されているモデルに損失値が最も低い場合の重み付け値があります.
  • 3つ目の方法


    save_best_only = True損失値の最小値を格納するモデルのコールバック関数を指定します.
    checkpoint_callback = ModelCheckpoint("best_model.h5",
                                          save_best_only=True,
                                          monitor="val_loss") 
    hist = model.fit(x_train, y_train,
                     validation_split=0.2,
                     batch_size=32,
                     epochs=100,
                     callbacks=[checkpoint_callback])