【发布时间】:2021-03-30 08:04:28
【问题描述】:
我有回归问题,大约有 20 个特征,预期输出是价格(浮动)。 我可以在这里使用卷积神经网络来预测价格吗?我同时使用了 1D、2D 卷积。
但我得到以下错误,
对于 2D,误差是
ValueError:layersequential_4 的输入 0 与 layer 不兼容::预期 min_ndim=4,发现 ndim=2。收到的完整形状:(无,18)
对于一维,误差是
ValueError:layersequential_4 的输入 0 与 layer 不兼容::预期 min_ndim=3,发现 ndim=2。收到的完整形状:(无,18)
我可以将 CNN 用于图像以外的数据吗?我在这里缺少什么。请在这里帮忙。
下面是代码,
model2 = tf.keras.Sequential()
model2.add(tf.keras.layers.Conv1D(32,kernel_size=(3),strides=1, activation='relu'))
model2.add(tf.keras.layers.BatchNormalization())
model2.add(tf.keras.layers.Conv1D(64, kernel_size=(3), strides=(2)))
model2.add(tf.keras.layers.ReLU())
model2.add(tf.keras.layers.BatchNormalization())
model2.add(tf.keras.layers.Dense(1, activation='linear'))
model2.compile(optimizer='adam',loss='mean_absolute_error',metrics['mean_absolute_error'])
【问题讨论】:
-
我发现了问题。 model.fit 中存在问题。而不是调用 model.fit(X_train,y_train,val=(X_test,y_test))。我以这种方式调用了model.fit((X_train,y_train),val =(X_test,y_Test))。由于额外的括号,模型试图将其称为 fit_generator 而不是 fit。
标签: tensorflow regression conv-neural-network