【发布时间】:2020-08-16 22:22:32
【问题描述】:
我正在使用超棒的 scikit-optimize 工具箱进行超参数优化。 我的目标是比较 keras 和 scikit-learn 模型。
根据示例https://scikit-optimize.github.io/stable/auto_examples/sklearn-gridsearchcv-replacement.html#sphx-glr-auto-examples-sklearn-gridsearchcv-replacement-py,仅使用了 scikit 学习模型。尝试类似下面的代码不允许在 BayesSearchCV 中集成 keras 模式。
# Function to create model, required for KerasRegressor
def create_model(optimizer='rmsprop', init='glorot_uniform'):
# create model
model = Sequential()
model.add(Dense(12, input_dim=8, kernel_initializer=init, activation='relu'))
model.add(Dense(8, kernel_initializer=init, activation='relu'))
model.add(Dense(1, kernel_initializer=init, activation='linear'))
# Compile model
model.compile(loss='mse', optimizer=optimizer, metrics=['r2'])
return model
model = KerasRegressor(build_fn=create_model, verbose=0)
NN_search = {
'model': [model()],
'model__optimizers': optimizers,
'model__epochs' : epochs,
'model__batch_size' : batches,
'model__init' : init
}
有没有人设法将 KerasClassifier/Regressor 合并到 BayesSearch CV 中?
【问题讨论】:
标签: python tensorflow gridsearchcv scikit-optimize bayessearchcv