如何修复预期密集模型中的值错误?

How to fix a value error in the model expected dense?

我正在尝试使用 Keras 进行深度学习 (noob)。我试图在加载数据集(训练和测试)后创建模型。我的代码:

scaler = StandardScaler().fit(train)

train=scaler.transform(train)
test=scaler.transform(test)

# Creating Deep Model


model = Sequential()

# Add an input layer
model.add(Dense(12, activation='relu', input_shape=(11,)))

# Add one hidden layer
model.add(Dense(8, activation='relu'))

# Add an output layer
model.add(Dense(1, activation='sigmoid'))

#add improvements 
model.add(BatchNormalization())
model.add(Dropout(0.5))
#Train the model

model.compile(loss='binary_crossentropy',optimizer='adam',metrics= 
['accuracy'])

model.fit(train,train_targets,epochs=20, batch_size=1, verbose=1)

但是,我在最后一行收到错误消息:

ValueError: Error when checking input: expected dense_1_input to have shape (11,) but got array with shape (211,)

错误是什么意思?是什么原因造成的?

这意味着您通过将超参数设置为 input_shape = (11,) 来将第一层设置为期望输入形状 (11,),然后您为模型提供了等于 train 的形状。尝试使用:train.shape 并检查形状以确保模型可以使用它。您可能需要查看此答案 以确保您了解神经网络超参数的核心概念。