我知道所有这些参数都在文档中,但是术语很混乱。我不确定“execution”和“epoch”之间的区别是什么。我目前的理解是
- max_trials:要搜索的超参数组合的数量
- 每次审判执行次数:更新每个超参数组合的权重的次数
- epochs:经历以下过程的次数:更新每个max_trials试验的权重execution_per_trial时间
以下面的代码为例
tuner = RandomSearch(
hypermodel = build_model,
max_trials = 5,
executions_per_trial = 6,
hyperparameters = hp,
objective = 'mse',
...
)
tuner %>% fit_tuner(x = x, y = y,
epochs = 100,
validation_data = list(x_val, y_val))
我希望这样做能对5种参数组合的模型权重进行6次更新,这样做100次,但是,就像我说的,我真的不确定。
1条答案
按热度按时间fkaflof61#
基本思想是下面的伪代码:
对于一个超参数组合,如果要评估的模型不具有确定性,则可能需要构建多个模型。(以及它们接收训练数据的顺序),并且具有相同体系结构的两个网络将不会导致完全相同的模型,即使它们用相同的数据训练。如果使用相同的超参数组合训练多个模型,则不太可能观察到好的组合导致坏的分数,或坏的组合导致好的分数的情况。