0

我找到了 7 个超参数的最佳结果,即:

  1. 层数,
  2. 节点大小,
  3. 激活函数,
  4. 学习率,
  5. 势头,
  6. 批量大小,
  7. 优化器

使用 Optuna 多目标优化。我将培训和验证损失最小化作为我的目标。由于调整参数的数量更多,我将每个跟踪的 epoch 数量减少为 50。然后我得到了最好的参数,进行了 Optuna 优化。我增加了 epoch 大小并使用torch.manual_seed. 但是在相同的第 50 个 epoch 之后获得的结果与我在 Optuna 结果中获得的结果不同。

我错过任何东西的原因是什么?我想在相同的条件下重现相同的结果!

4

1 回答 1

0

最后,我能够找到再现性不当的原因。在我的代码中,我使用了两个不同的目标函数;def train(试用)和 def layer(试用)。我将第二个目标函数转入训练(试验)。此外,指定手动种子也很重要。无论如何都会有0.0001%的微小偏差。

于 2022-01-03T02:49:21.853 回答