Here是一个癌症检测的小项目,它已经有了数据集和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)
当我看评论的时候,其他人都有这个问题
Here是一个癌症检测的小项目,它已经有了数据集和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)
当我看评论的时候,其他人都有这个问题
3条答案
按热度按时间g52tjvyc1#
Tensorflow模型期望输入的第一个维度是批量大小,但在模型声明中,他们将输入形状设置为与输入相同的形状。要解决此问题,您可以将模型的输入形状更改为数据集中的要素数量。
csv文件中的行数将等于数据集中的样本数。由于您未使用批处理,因此模型将在每个时段对整个数据集进行一次评估
ljo96ir52#
我尝试了如上所述的解决方案:
第一个月
但同样的问题发生了,所以我尝试定义模型的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'))
iq0todco3#
参数input_shape Shape元组(不包括批处理轴)或TensorShape示例(不包括批处理轴)。根据keras文档,输入形状不包括批处理轴,因此尝试给定input_shape=(30,)而不是input_shape=(455,30)