我正在尝试使用tf.keras的fit()方法训练我的模型,因为输入数据来自hdf5文件,我将参数shuffle ='batch'传递给fit()方法。但在第一个纪元结束后,出现以下错误:
TypeError: TypeError while preparing batch. If using HDF5 input data, pass shuffle="batch".
这是我的fit()方法:
model.fit(
x=features_train,
y=topics_train,
batch_size=16384,
epochs=35,
callbacks=create_callbacks(),
validation_data=(features_val, topics_val),
shuffle='batch'
)
变量features_train
和features_val
取自hdf5文件。
通过将features_val
转换为numpy数组解决了这个问题。
features_val_arr = np.array(features_val)
model.fit(
x=features_train,
y=topics_train,
batch_size=16384,
epochs=35,
callbacks=create_callbacks(),
validation_data=(features_val_arr, topics_val),
shuffle='batch'
)