2

Keras で 1 つの入力と 2 つの出力を使用してモデルをトレーニングしたいのですが、検証のセットアップに関していくつかの問題があります。

1) Keras関数型 API のドキュメントによると、複数の出力がある場合、model.fit は numpy 配列のリストを出力として取り込むことができます。ただし、model.fit の validation_data 引数については、モデルが (x_val, y_val) または (x_val, y_val, val_sample_weights) の形式のタプルを受け取ることができることを示しています。次に、2 番目の出力の y_val をどのように渡すことができますか? validation_split を使用してそれを行うことができますか、それとも検証分割も私の出力の 1 つにのみ適用されますか?

2) また、EarlyStopping コールバックに渡される検証損失はどうなりますか? model.evaluate などの関数によって返される損失については、2 つの損失値が返されます。トレーニングでは、損失の合計に重みを掛けたものが最小化されます。これは EarlyStopping でどのように機能しますか? 損失の合計に重みを掛けた最小化にも基づいて早期停止を望んでいますが、これが実際に起こるかどうかはわかりません。

4

1 に答える 1

1
  1. y_trainとの両方y_valが のリストである可能性があることが指定されていますnumpy.arrays。私の経験から、val_splitうまくいくはずです。

  2. 最終的な損失は、すべてのモデルの損失の合計であり、EarlyStopping基準をチェックする目的で使用されます。

于 2017-08-03T19:38:29.207 に答える