tensorflow2.0 ValueError: Empty training data.誤報
4645 ワード
tensorflow 2を使用する.0トレーニングデータの場合、
私のコードを確認します.
テストセットのsample sizeが100でbatch_sizeは128に設定されているので、batchが1つ足りないので、batchsizeを100以下の
Empty training data
エラーが発生しました.File "gru_layer2.py", line 74, in
network.fit(db_train, epochs=epochs, validation_data=db_val,steps_per_epoch=x_train.shape[0]//batchsz)
File "/homes/xiaohuizou/.conda/envs/tf2/lib/python3.7/site-packages/tensorflow_core/python/keras/engine/training.py", line 728, in fit
use_multiprocessing=use_multiprocessing)
File "/homes/xiaohuizou/.conda/envs/tf2/lib/python3.7/site-packages/tensorflow_core/python/keras/engine/training_v2.py", line 370, in fit
total_epochs=1)
File "/homes/xiaohuizou/.conda/envs/tf2/lib/python3.7/site-packages/tensorflow_core/python/keras/engine/training_v2.py", line 180, in run_one_epoch
aggregator.finalize()
File "/homes/xiaohuizou/.conda/envs/tf2/lib/python3.7/site-packages/tensorflow_core/python/keras/engine/training_utils.py", line 140, in finalize
raise ValueError('Empty training data.')
ValueError: Empty training data.
私のコードを確認します.
batch_size=128
db_train = tf.data.Dataset.from_tensor_slices((x_train, y_train))
db_train = db_train.shuffle(6000).batch(batchsz, drop_remainder=True).repeat ()
db_val = tf.data.Dataset.from_tensor_slices((x_val, y_val))
db_val = db_val.batch(batchsz, drop_remainder=True)
db_test = tf.data.Dataset.from_tensor_slices((x_test, y_test))
db_test = db_test.batch(batchsz, drop_remainder=True)
> x_train.shape, x_test.shape,x_val.shape
(700, 100) (100, 100) (200, 100)
テストセットのsample sizeが100でbatch_sizeは128に設定されているので、batchが1つ足りないので、batchsizeを100以下の
batch_size=64
に変更すればいいです.