web-dev-qa-db-ja.com

ケラスで複数の検証セットを使用する

model.fit()メソッドを使用してkerasでモデルをトレーニングしています。トレーニングエポックごとに個別に検証する必要がある複数の検証セットを使用して、検証セットごとに1つの損失値を取得したいと思います。可能であれば、トレーニング中に表示し、keras.callbacks.History()コールバックによって返される必要があります。

私はこのようなことを考えています:

history = model.fit(train_data, train_targets,
                    epochs=epochs,
                    batch_size=batch_size,
                    validation_data=[
                        (validation_data1, validation_targets1), 
                        (validation_data2, validation_targets2)],
                    shuffle=True)

私は現在、これを実装する方法がわかりません。私自身のCallbackを書くことによってこれを達成することは可能ですか?または、他にどのようにこの問題に取り組みますか?

14
Eror

現在の keras docs を考慮すると、コールバックをevaluateevaluate_generatorに渡すことができます。したがって、異なるデータセットを使用してevaluateを複数回呼び出すことができます。

私はそれをテストしていませんので、以下であなたの経験をコメントしていただければ幸いです。

0
mss