[英]ValueError: Input 0 of layer "sequential" is incompatible with the layer: expected shape=(None, 223461, 5), found shape=(None, 5)
[英]ValueError: Input 0 of layer "sequential" is incompatible with the layer: expected shape=(None, 455, 30), found shape=(None, 30)
这里是Cancer detection的小项目,里面已经有了数据集和colab代码,但是我执行的时候报错
model.fit(x_train, y_train, epochs=1000)
错误是:
ValueError: Input 0 of layer "sequential" is incompatible with the layer: expected shape=(None, 455, 30), found shape=(None, 30)
看评论其他人也有这个问题
Tensorflow model 期望输入的第一个维度是批量大小,在 model 声明中,它们将输入形状设置为与输入相同的形状。 要解决此问题,您可以将 model 的输入形状更改为数据集中的特征数。
model.add(tf.keras.layers.Dense(256, input_shape=(x_train.shape[1],), activation='sigmoid'))
.csv 文件中的行数将是数据集中的样本数。 由于您不使用批处理,因此 model 将在每个时期一次评估整个数据集
我尝试了上面的解决方案:
model.add(tf.keras.layers.Dense(256,input_shape(x_train.shape[1],), activation='sigmoid'))
但同样的问题发生了,所以我尝试按照下面的代码分别定义 model 的 inpute_shape 并且它有效希望这对你有帮助:
model.add(tf.keras.Input(shape=(x_train.shape[1],))) model.add(tf.keras.layers.Dense(128, activation='sigmoid')) model.add(tf.keras.layers.Dense(256, activation='sigmoid')) model.add(tf.keras.layers.Dense(1, activation='sigmoid'))
Args input_shape 形状元组(不包括批轴),或 TensorShape 实例(不包括批轴)。 根据 keras 的文档,输入形状确实包括批处理轴,因此请尝试提供 input_shape=(30,) 而不是 input_shape=(455,30)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.