定义了一个模型,部分代码如下:
运行时报错
额外粘贴一下报错信息,以便别人可以搜到
ValueError: Input 0 is incompatible with layer batch_normalization_1: expected ndim=3, found ndim=2
一开始以为时shape不对,那就reshape试试,
加上reshape之后又报错
把中间的两层网络去掉,运行又正常
看来可能是中间两层代码的问题,可是看起来又正常。无意间看到Lambda层的output_shape
而其他层的input_shape写法都是
二者形式不一致,修改为(32,)试试,再运行,不再报错。看来这两种写法本质上是不同的,虽然打印出来的shape看起来一样。