我的訓練集有 10 列,包括我試圖預測的目標列,而我的測驗集 ( dataframe_test) 有 9 列。當我運行代碼時,我收到此錯誤:
Input 0 of layer "Hidden1" is incompatible with the layer: expected axis -1 of input shape to have value 10, but received input with shape (None, 9)
Call arguments received:
? inputs=tf.Tensor(shape=(None, 9), dtype=float64)
? training=False
? mask=None**
我的模型看起來像這樣:
model = tf.keras.models.Sequential()
model.add(tf.keras.layers.Dense(units=10,
activation='relu',
kernel_regularizer=tf.keras.regularizers.l2(l=0.01),
name='Hidden1'))
model.add(tf.keras.layers.Dense(units=6,
activation='relu',
kernel_regularizer=tf.keras.regularizers.l2(l=0.01),
name='Hidden2'))
model.add(tf.keras.layers.Dense(units=1,
name='Output'))
my_learning_rate = 0.3
model.compile(optimizer=tf.keras.optimizers.Adam(learning_rate=my_learning_rate),
loss="categorical_crossentropy",
metrics='accuracy')
epochs = 10
batch_size = 32
history = model.fit(train, y_train, epochs = epochs, batch_size = batch_size)
epochs = history.epoch
print(epochs)
score = model.predict(dataframe_test)
uj5u.com熱心網友回復:
嘗試使用 sigmoid
input_size=len(X.columns)
model.add(Dense(10,activation='sigmoid', input_shape=(input_size,)))
model.add(Dense(10,activation='relu'))
model.add(Dense(10,activation='relu'))
model.add(Dense(1))
uj5u.com熱心網友回復:
您必須將訓練集拆分為 9 列輸入矩陣x_train = train[:, :10]和單列訓練目標矩陣y_train = train[:, 10].reshape((-1, 1))。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/392860.html
上一篇:Keras預處理:樣本數量
