Deep learning 模型不';与网格搜索一起使用时无法学习

Deep learning 模型不';与网格搜索一起使用时无法学习,deep-learning,neural-network,gridsearchcv,Deep Learning,Neural Network,Gridsearchcv,我建立了两个模型,第一个很好,代码是 model = Sequential() model.add(Dense(25, input_dim=8, activation='relu', kernel_initializer='he_uniform')) model.add(Dense(25, activation='relu', kernel_initializer='he_uniform')) model.add(Dense(25, activation='relu', kernel_initi

我建立了两个模型,第一个很好,代码是

model = Sequential()
model.add(Dense(25, input_dim=8, activation='relu', kernel_initializer='he_uniform'))
model.add(Dense(25, activation='relu', kernel_initializer='he_uniform'))
model.add(Dense(25, activation='relu', kernel_initializer='he_uniform'))
model.add(Dense(1, activation='tanh'))
opt = SGD(lr=0.01, momentum=0.9)
model.compile(loss='mean_squared_error', optimizer=opt)

history = model.fit(X_train, y_train, validation_data=(X_test, y_test), epochs=1000, verbose=1)
train_mse = model.evaluate(X_train, y_train, verbose=0)
test_mse = model.evaluate(X_test, y_test, verbose=0)
我相信下面使用网格搜索实现的下一个模型是相同的。除了它似乎没有学习,损失从天文数字开始,几乎没有减少。代码是:

def build_classifier():
  classifier = Sequential()
  classifier.add(Dense(25, input_dim=8, activation='relu', kernel_initializer='he_uniform'))
  classifier.add(Dense(25, activation='relu', kernel_initializer='he_uniform'))
  classifier.add(Dense(25, activation='relu', kernel_initializer='he_uniform'))
  classifier.add(Dense(1, activation='tanh'))
  opt = SGD(lr=0.01, momentum=0.9)
  classifier.compile(loss='mean_squared_error', optimizer=opt, metrics=["accuracy"])
  return classifier

classifier = KerasClassifier(build_fn = build_classifier)
parameters = {'epochs':[1000]}
grid_search = GridSearchCV(estimator = classifier,
                          param_grid = parameters,
                          cv = 5)
grid_search = grid_search.fit(X_train, y_train)
best_parameters = grid_search.best_params_
best_accuracy = grid_search.best_score_
^我知道我实际上没有在这里调整任何超参数。我一直在减少和删除我正在调整的超参数,希望我能发现问题

我有使用相同数据的跨类别模型,但没有这个问题(通过测试序列拆分确保我的模型是合理的,然后通过网格搜索重新制作以调整超参数)

我看不出这两种模式之间有什么区别,第一种模式可以合理地学习,而第二种模式则根本不起作用