拟合生成器函数中的数据扩充错误

时间:2019-04-25 16:00:08

标签: tensorflow machine-learning keras data-augmentation

我正在尝试训练一个cnn模型以检测面部表情并减少输入类中的不平衡,我使用了来自keras的ImageDataGenerator 扩大我的数据集。

这是我的代码:

xs >> input 

ys >> output

data_gen = ImageDataGenerator(horizontal_flip =True, featurewise_center=True, featurewise_std_normalization=True)

data_gen.fit(xs)

history = self.model.fit_generator((data_gen.flow(xs,ys batch_size=self.batch_size)), steps_per_epoch=len(xs) / self.batch_size, epochs=epochs_num)

我生成了很多图像,并将其输入到模型中进行训练,但这给了我这个错误: 无法将形状(28709,128)的输入数组广播到形状(28709)

如何确定此错误的原因?

1 个答案:

答案 0 :(得分:0)

  

如果您共享一个正在运行的代码示例,那就太好了,因此   可以重现该错误。

我的第一个猜测是,某个变量(可能是batch_size)为128,会弄乱输入的形状。

也许可以用reshape中的numpy来解决。