MedianStoppingPolicy 类

基于所有运行的主要指标的移动平均定义提前终止策略。

初始化 MedianStoppingPolicy。

继承
azureml.train.hyperdrive.policy.EarlyTerminationPolicy
MedianStoppingPolicy

构造函数

MedianStoppingPolicy(evaluation_interval=1, delay_evaluation=0)

参数

名称 说明
evaluation_interval
int

应用策略的频率。

默认值: 1
delay_evaluation
int

延迟第一个策略评估的间隔数。 如果指定,则策略将按照大于或等于 delay_evaluationevaluation_interval 倍数应用。

默认值: 0
evaluation_interval
必需
int

应用策略的频率。

delay_evaluation
必需
int

延迟第一个策略评估的间隔数。 如果指定,则策略将按照大于或等于 delay_evaluationevaluation_interval 倍数应用。

注解

中值停止策略计算所有运行的移动平均,取消其最佳性能比移动平均的中值更差的运行。 具体而言,如果某个运行在间隔 N 之前报告的最佳主要指标比所有运行中间隔 1:N 的移动平均的中间值更差,则会在间隔 N 处取消该运行。

中值停止策略采用以下可选配置参数:

  • evaluation_interval:应用策略的频率。 每次训练脚本都会将主要指标计数记录为一个间隔。

  • delay_evaluation:延迟策略评估的间隔数。 使用此参数可避免过早终止训练运行。 如果指定,则策略将按照大于或等于 delay_evaluationevaluation_interval 倍数应用。

此策略的灵感源自此研究论文:Google Vizier:一种用于黑盒优化的服务

如果你正在寻找既可以节省成本又不会终止有前景的作业的保守策略,则可以使用 evaluation_interval 为 1 且 delay_evaluation 5 的中值停止策略。 这属于保守的设置,可以提供大约 25%-35% 的节省,且不会造成主要指标损失(基于我们的评估数据)。

属性

delay_evaluation

返回第一个评估延迟的序列数的值。

返回

类型 说明
int

延迟评估。

evaluation_interval

返回评估间隔值。

返回

类型 说明
int

评估间隔。

POLICY_NAME

POLICY_NAME = 'MedianStopping'