【问题标题】:Will Trains automagically log Tensorboard HParams?Trains 会自动记录 Tensorboard HParams 吗?
【发布时间】:2020-12-14 13:58:08
【问题描述】:

我知道可以将超参数作为字典发送到 Trains。

但它也可以自动记录使用 TF2 HParams 模块记录的超参数吗?

编辑:这是在HParams tutorial 中使用hp.hparams(hparams) 完成的。

【问题讨论】:

    标签: trains clearml


    【解决方案1】:

    免责声明:我是 allegro.ai 火车团队的一员

    从抓屏来看,似乎多次运行不同的超参数,并显示一个平行坐标图。 这相当于使用不同的超参数多次运行相同的基础实验,并将结果与​​ Trains Web UI 进行比较,到目前为止一切都很好:)

    基于HParam interface,必须使用 TensorFlow 才能从 HP 采样,通常在代码中。您如何将这种方法扩展到多个实验? (它不仅会自动记录 hparams,还需要创建多个实验,每个参数集一个)

    使用外部优化器进行优化不是更有意义吗?这样你就可以扩展到多台机器,并且有更复杂的优化策略(比如 Optuna),你可以在 trainsexamples/optimization 找到一些例子。

    【讨论】:

    • 谢谢,我编辑了这个问题以强调我指的是在您执行 hp.hparams(hparams) 时自动记录写入 TB HParam 的内容。
    • 所以你的意思是调用hp.hparams(hparams) 自动登录火车?假设hparams是一个dict,就省去了调用task.connect(hparams)的麻烦,这样对吗?还有一个后续问题,如果您有多个测试(如屏幕截图中所示)会发生什么情况,您将如何将一个与另一个分开?
    • 是的,我不想打电话给task.connect(hparams)——因为我不是打电话给hp.hparams(hparams)的人,它是由RayTune(类似于Optuna)完成的。关于分离多个测试的好问题......我不知道。
    • 我认为解决 RayTune 是关键。我们对 Trains 和 Optuna 所做的是,我们使用 Optuna 进行贝叶斯优化,使用 Trains 进行多节点执行/运行/参数接口。您如何使用 RayTune?您是否看到多个实验(即Task.init 被多次调用)?
    • 我还没有把 Trains 和 RayTune 放在一起。直到现在都单独使用。接下来的步骤之一可能是开始一起使用它们。
    猜你喜欢
    • 2021-12-30
    • 1970-01-01
    • 2022-01-23
    • 2013-05-27
    • 1970-01-01
    • 2019-07-24
    • 2021-04-25
    • 2010-11-10
    • 1970-01-01
    相关资源
    最近更新 更多