我使用 KerasTuner 实现了超参数调整。我希望可以选择跳过超参数调整并改用默认值。
现在看起来像这样(搜索后用最好的参数构建模型)
MyHyperModel(HyperModel)
def build(self, hp)
...hp.choice('hyperparameter', [1,2,3], default=3)
return model
tuner = HyperBand(
MyHyperModel(),
...
)
tuner.search(
train_inputs,
train_targets,
...
)
best_hp = tuner.get_best_hyperparameters()[0]
model = tuner.hypermodel.build(best_hp)
我想要一个类似的东西
default_model = tuner.hypermodel.build(use_default_parameter=True)
它返回具有超参数默认值的 Keras 模型,然后可以进行训练。 但我想不通。
最佳答案
使用空的 HyperParameters 容器作为参数调用构建函数会返回具有默认参数的模型:
hypermodel = MyHyperModel()
hp = kt.HyperParameters()
model = hypermodel.build(hp)
关于Keras Hypermodel - 使用默认参数构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69088545/