我很难高效地将数据加载到model.fit中。我的代码创建
training_data
对象与
samples
和
values
.Samples是一个标准的python对象列表
tf.Tensor
类。值是一个整数列表。
跑步时
model.fit(training_data.samples, training_data.values, epochs=10)
我遇到了一个错误
ValueError: Failed to find data adapter that can handle input: (<class 'list'> containing values of types {"<class 'tensorflow.python.framework.ops.EagerTensor'>"}), (<class 'list'> containing values of types {"<class 'int'>"})
我可以通过将其全部预转换为numpy数组来完成这两项工作,如下所示:
s, v = np.asarray(training_data.samples), np.asarray(training_data.values)
model.fit(s, v, epochs=10)
然而,这太慢了。加载数据和非常繁重的预处理(信号分块、fft等)大约需要一分钟,然后只有1800个样本的数据转换——这部分会挂起一个小时,在实际学习开始之前,我会失去耐心。张量的形状是(94257),所以没什么大不了的。
既然我已经在内存中保存了数据,那么将数据传递给model.fit的有效方法是什么。