1

因为“原因”,我们知道当我们使用azureml-sdk's时,HyperDriveStep我们预计会有很多HyperDrive次运行失败——通常在 20% 左右。我们如何在不失败整个HyperDriveStep(然后是所有下游步骤)的情况下处理这个问题?以下是管道的示例。

我认为会有一个HyperDriveRunConfig允许这样做的参数,但它似乎不存在。也许这是用参数在管道本身上控制的continue_on_step_failure

我们正在考虑的解决方法是在我们的train.py脚本中捕获失败的运行并手动将 primary_metric 记录为零。

在此处输入图像描述

4

1 回答 1

2

谢谢你的问题。

我假设 HyperDriveStep 是您的 Pipeline 中的步骤之一,并且您希望剩余的 Pipeline 步骤在 HyperDriveStep 失败时继续,对吗?当任何单个步骤失败时,启用 continue_on_step_failure 应该允许其余的管道步骤继续。

此外,HyperDrive 运行由多个子运行组成,由 HyperDriveConfig 控制。如果 HyperDrive 探索的前 3 个子运行失败(例如用户脚本错误),系统会自动取消整个 HyperDrive 运行,以避免进一步浪费资源。

当 HyperDriveStep 失败时,您是否希望继续其他流水线步骤?或者当前 3 个子运行失败时,您是否希望在 HyperDrive 运行中继续其他子运行?

谢谢!

于 2020-07-07T20:47:43.553 回答