7

私の理解では、エポックはデータセット全体に対して任意に頻繁に繰り返される実行であり、それは部分的に処理され、いわゆるバッチです。損失が計算されるたびtrain_on_batchに重みが更新され、次のバッチでより良い結果が得られます。これらの損失は、my to NN の品質と学習状態の指標です。

いくつかのソースでは、エポックごとに損失が計算 (および出力) されています。したがって、これを正しく行っているかどうかはわかりません。

現時点で、私のGANは次のようになっています。

for epoch:
  for batch:

    fakes = generator.predict_on_batch(batch)

    dlc = discriminator.train_on_batch(batch, ..)
    dlf = discriminator.train_on_batch(fakes, ..)
    dis_loss_total = 0.5 *  np.add(dlc, dlf)

    g_loss = gan.train_on_batch(batch,..)

    # save losses to array to work with later

これらの損失は、バッチごとです。エポックのためにそれらを取得するにはどうすればよいですか? 余談ですが、エポックの損失は何のために必要ですか?

4

2 に答える 2