gluonts.mx.trainer.callback 模块#
- class gluonts.mx.trainer.callback.Callback[源代码]#
- 基类: - object- 抽象回调基类。 - 回调控制 GluonTS 训练器的训练。要编写自定义回调,可以继承 Callback 并覆盖一个或多个钩子方法。如果返回 False,布尔型返回值的钩子方法将停止训练。 - on_epoch_end(epoch_no: int, epoch_loss: float, training_network: mxnet.gluon.block.HybridBlock, trainer: mxnet.gluon.trainer.Trainer, best_epoch_info: Dict[str, Any], ctx: mxnet.context.Context) bool[源代码]#
- 在每个 epoch 结束后调用的钩子。与 on_train_epoch_end 和 on_validation_epoch_end 一样,它返回一个布尔值,表示训练是否应继续。此钩子总是在 on_train_epoch_end 和 on_validation_epoch_end 之后调用。无论这些钩子的返回值如何,它都会被调用。 - 参数
- epoch_no – 当前 epoch (第一个 epoch 为 epoch_no = 0)。 
- epoch_loss – 如果提供了验证数据,则为上一个 epoch 中记录的验证损失。否则为训练损失。 
- training_network – 正在训练的网络。 
- trainer – 正在运行训练的训练器。 
- best_epoch_info – 关于最佳 epoch 的聚合信息。包含键 params_path、epoch_no 和 score。如果提供了验证数据,则 score 为最佳验证损失,否则为最佳训练损失。 
- ctx – 使用的 MXNet 上下文。 
 
- 返回
- 一个布尔值,表示训练是否应继续。默认为 True。 
- 返回类型
- bool 
 
 - on_network_initializing_end(training_network: mxnet.gluon.block.HybridBlock) None[源代码]#
- 在训练之前,训练网络初始化完成后调用的钩子。这是网络传入的第一个钩子。 - 参数
- training_network – 正在训练的网络。 
 
 - on_train_batch_end(training_network: mxnet.gluon.block.HybridBlock) bool[源代码]#
- 在每个训练 batch 结束后调用的钩子。 - 参数
- training_network – 正在训练的网络。 
- 返回
- 一个布尔值,表示训练是否应继续。默认为 True。 
- 返回类型
- bool 
 
 - on_train_end(training_network: mxnet.gluon.block.HybridBlock, temporary_dir: str, ctx: Optional[mxnet.context.Context] = None) None[源代码]#
- 在训练结束后调用的钩子。这是最后调用的钩子。 - 参数
- training_network – 已训练的网络。 
- temporary_dir – 在训练过程中记录模型参数的目录。 
- ctx – 使用的 MXNet 上下文。 
 
 
 - on_train_epoch_end(epoch_no: int, epoch_loss: float, training_network: mxnet.gluon.block.HybridBlock, trainer: mxnet.gluon.trainer.Trainer) bool[源代码]#
- 在每个训练 epoch 结束后调用的钩子。此方法返回一个布尔值,表示训练是否应继续。 - 参数
- epoch_no – 当前 epoch (第一个 epoch 为 epoch_no = 0)。 
- epoch_loss – 在上一个 epoch 中记录的损失。 
- training_network – 正在训练的网络。 
- trainer – 正在运行训练的训练器。 
 
- 返回
- 一个布尔值,表示训练是否应继续。默认为 True。 
- 返回类型
- bool 
 
 - on_train_epoch_start(training_network: mxnet.gluon.block.HybridBlock) None[源代码]#
- 在每个训练 epoch 开始之前调用的钩子。 - 参数
- training_network – 正在训练的网络。 
 
 - on_train_start(max_epochs: int) None[源代码]#
- 在训练开始之前调用的钩子。这是第一个调用的钩子。 - 参数
- max_epochs – 训练运行的最大 epoch 数。如果其他回调钩子提前停止训练,实际的 epoch 数可能会更少。 
 
 - on_validation_batch_end(training_network: mxnet.gluon.block.HybridBlock) bool[源代码]#
- 在每个验证 batch 结束后调用的钩子。如果在训练期间没有可用的验证数据,则永远不会调用此钩子。 - 参数
- training_network – 正在训练的网络。 
- 返回
- 一个布尔值,表示训练是否应继续。默认为 True。 
- 返回类型
- bool 
 
 - on_validation_epoch_end(epoch_no: int, epoch_loss: float, training_network: mxnet.gluon.block.HybridBlock, trainer: mxnet.gluon.trainer.Trainer) bool[源代码]#
- 在每个验证 epoch 结束后调用的钩子。类似于 on_train_epoch_end,此方法返回一个布尔值,表示训练是否应继续。请注意,在单个 epoch 中,它总是在 on_train_epoch_end 之后调用。如果 on_train_epoch_end 返回 False,则不会调用此方法。 - 参数
- epoch_no – 当前 epoch (第一个 epoch 为 epoch_no = 0)。 
- epoch_loss – 在上一个 epoch 中记录的验证损失。 
- training_network – 正在训练的网络。 
- trainer – 正在运行训练的训练器。 
 
- 返回
- 一个布尔值,表示训练是否应继续。默认为 True。 
- 返回类型
- bool 
 
 
- class gluonts.mx.trainer.callback.CallbackList(callbacks: List[gluonts.mx.trainer.callback.Callback])[源代码]#
- 基类: - gluonts.mx.trainer.callback.Callback- 用于将回调列表链接到一个 Callback。布尔型钩子方法使用 AND 进行逻辑连接,这意味着如果至少有一个回调方法返回 False,则训练将停止。 - callbacks#
- 一个 gluonts.mx.trainer.callback.Callback 列表。 
 - on_epoch_end(*args: Any, **kwargs: Any) bool[源代码]#
- 在每个 epoch 结束后调用的钩子。与 on_train_epoch_end 和 on_validation_epoch_end 一样,它返回一个布尔值,表示训练是否应继续。此钩子总是在 on_train_epoch_end 和 on_validation_epoch_end 之后调用。无论这些钩子的返回值如何,它都会被调用。 - 参数
- epoch_no – 当前 epoch (第一个 epoch 为 epoch_no = 0)。 
- epoch_loss – 如果提供了验证数据,则为上一个 epoch 中记录的验证损失。否则为训练损失。 
- training_network – 正在训练的网络。 
- trainer – 正在运行训练的训练器。 
- best_epoch_info – 关于最佳 epoch 的聚合信息。包含键 params_path、epoch_no 和 score。如果提供了验证数据,则 score 为最佳验证损失,否则为最佳训练损失。 
- ctx – 使用的 MXNet 上下文。 
 
- 返回
- 一个布尔值,表示训练是否应继续。默认为 True。 
- 返回类型
- bool 
 
 - on_network_initializing_end(*args: Any, **kwargs: Any) None[源代码]#
- 在训练之前,训练网络初始化完成后调用的钩子。这是网络传入的第一个钩子。 - 参数
- training_network – 正在训练的网络。 
 
 - on_train_batch_end(*args: Any, **kwargs: Any) bool[源代码]#
- 在每个训练 batch 结束后调用的钩子。 - 参数
- training_network – 正在训练的网络。 
- 返回
- 一个布尔值,表示训练是否应继续。默认为 True。 
- 返回类型
- bool 
 
 - on_train_end(*args: Any, **kwargs: Any) None[源代码]#
- 在训练结束后调用的钩子。这是最后调用的钩子。 - 参数
- training_network – 已训练的网络。 
- temporary_dir – 在训练过程中记录模型参数的目录。 
- ctx – 使用的 MXNet 上下文。 
 
 
 - on_train_epoch_end(*args: Any, **kwargs: Any) bool[源代码]#
- 在每个训练 epoch 结束后调用的钩子。此方法返回一个布尔值,表示训练是否应继续。 - 参数
- epoch_no – 当前 epoch (第一个 epoch 为 epoch_no = 0)。 
- epoch_loss – 在上一个 epoch 中记录的损失。 
- training_network – 正在训练的网络。 
- trainer – 正在运行训练的训练器。 
 
- 返回
- 一个布尔值,表示训练是否应继续。默认为 True。 
- 返回类型
- bool 
 
 - on_train_epoch_start(*args: Any, **kwargs: Any) None[源代码]#
- 在每个训练 epoch 开始之前调用的钩子。 - 参数
- training_network – 正在训练的网络。 
 
 - on_train_start(*args: Any, **kwargs: Any) None[源代码]#
- 在训练开始之前调用的钩子。这是第一个调用的钩子。 - 参数
- max_epochs – 训练运行的最大 epoch 数。如果其他回调钩子提前停止训练,实际的 epoch 数可能会更少。 
 
 - on_validation_batch_end(*args: Any, **kwargs: Any) bool[源代码]#
- 在每个验证 batch 结束后调用的钩子。如果在训练期间没有可用的验证数据,则永远不会调用此钩子。 - 参数
- training_network – 正在训练的网络。 
- 返回
- 一个布尔值,表示训练是否应继续。默认为 True。 
- 返回类型
- bool 
 
 - on_validation_epoch_end(*args: Any, **kwargs: Any) bool[源代码]#
- 在每个验证 epoch 结束后调用的钩子。类似于 on_train_epoch_end,此方法返回一个布尔值,表示训练是否应继续。请注意,在单个 epoch 中,它总是在 on_train_epoch_end 之后调用。如果 on_train_epoch_end 返回 False,则不会调用此方法。 - 参数
- epoch_no – 当前 epoch (第一个 epoch 为 epoch_no = 0)。 
- epoch_loss – 在上一个 epoch 中记录的验证损失。 
- training_network – 正在训练的网络。 
- trainer – 正在运行训练的训练器。 
 
- 返回
- 一个布尔值,表示训练是否应继续。默认为 True。 
- 返回类型
- bool 
 
 
- class gluonts.mx.trainer.callback.TerminateOnNaN[源代码]#
- 基类: - gluonts.mx.trainer.callback.Callback- on_train_epoch_end(epoch_no: int, epoch_loss: float, training_network: mxnet.gluon.block.HybridBlock, trainer: mxnet.gluon.trainer.Trainer) bool[源代码]#
- 在每个训练 epoch 结束后调用的钩子。此方法返回一个布尔值,表示训练是否应继续。 - 参数
- epoch_no – 当前 epoch (第一个 epoch 为 epoch_no = 0)。 
- epoch_loss – 在上一个 epoch 中记录的损失。 
- training_network – 正在训练的网络。 
- trainer – 正在运行训练的训练器。 
 
- 返回
- 一个布尔值,表示训练是否应继续。默认为 True。 
- 返回类型
- bool 
 
 
- class gluonts.mx.trainer.callback.TrainingHistory[源代码]#
- 基类: - gluonts.mx.trainer.callback.Callback- on_train_epoch_end(epoch_no: int, epoch_loss: float, training_network: mxnet.gluon.block.HybridBlock, trainer: mxnet.gluon.trainer.Trainer) bool[源代码]#
- 在每个训练 epoch 结束后调用的钩子。此方法返回一个布尔值,表示训练是否应继续。 - 参数
- epoch_no – 当前 epoch (第一个 epoch 为 epoch_no = 0)。 
- epoch_loss – 在上一个 epoch 中记录的损失。 
- training_network – 正在训练的网络。 
- trainer – 正在运行训练的训练器。 
 
- 返回
- 一个布尔值,表示训练是否应继续。默认为 True。 
- 返回类型
- bool 
 
 - on_validation_epoch_end(epoch_no: int, epoch_loss: float, training_network: mxnet.gluon.block.HybridBlock, trainer: mxnet.gluon.trainer.Trainer) bool[源代码]#
- 在每个验证 epoch 结束后调用的钩子。类似于 on_train_epoch_end,此方法返回一个布尔值,表示训练是否应继续。请注意,在单个 epoch 中,它总是在 on_train_epoch_end 之后调用。如果 on_train_epoch_end 返回 False,则不会调用此方法。 - 参数
- epoch_no – 当前 epoch (第一个 epoch 为 epoch_no = 0)。 
- epoch_loss – 在上一个 epoch 中记录的验证损失。 
- training_network – 正在训练的网络。 
- trainer – 正在运行训练的训练器。 
 
- 返回
- 一个布尔值,表示训练是否应继续。默认为 True。 
- 返回类型
- bool 
 
 
- class gluonts.mx.trainer.callback.TrainingTimeLimit(*, time_limit: float, stop_within_epoch: bool = False)[源代码]#
- 基类: - pydantic.v1.main.BaseModel,- gluonts.mx.trainer.callback.Callback- 限制训练所花费的时间。 - 这对于确保给定模型的训练不超过预算非常有用,例如在进行 AutoML 时。 - 如果 stop_within_epoch 设置为 True,训练可以在每个 batch 后停止,否则在 epoch 结束后停止。 - on_epoch_end(epoch_no: int, epoch_loss: float, training_network: mxnet.gluon.block.HybridBlock, trainer: mxnet.gluon.trainer.Trainer, best_epoch_info: Dict[str, Any], ctx: mxnet.context.Context) bool[源代码]#
- 在每个 epoch 结束后调用的钩子。与 on_train_epoch_end 和 on_validation_epoch_end 一样,它返回一个布尔值,表示训练是否应继续。此钩子总是在 on_train_epoch_end 和 on_validation_epoch_end 之后调用。无论这些钩子的返回值如何,它都会被调用。 - 参数
- epoch_no – 当前 epoch (第一个 epoch 为 epoch_no = 0)。 
- epoch_loss – 如果提供了验证数据,则为上一个 epoch 中记录的验证损失。否则为训练损失。 
- training_network – 正在训练的网络。 
- trainer – 正在运行训练的训练器。 
- best_epoch_info – 关于最佳 epoch 的聚合信息。包含键 params_path、epoch_no 和 score。如果提供了验证数据,则 score 为最佳验证损失,否则为最佳训练损失。 
- ctx – 使用的 MXNet 上下文。 
 
- 返回
- 一个布尔值,表示训练是否应继续。默认为 True。 
- 返回类型
- bool 
 
 - on_train_batch_end(training_network: mxnet.gluon.block.HybridBlock) bool[源代码]#
- 在每个训练 batch 结束后调用的钩子。 - 参数
- training_network – 正在训练的网络。 
- 返回
- 一个布尔值,表示训练是否应继续。默认为 True。 
- 返回类型
- bool 
 
 - on_train_start(max_epochs: int) None[源代码]#
- 在训练开始之前调用的钩子。这是第一个调用的钩子。 - 参数
- max_epochs – 训练运行的最大 epoch 数。如果其他回调钩子提前停止训练,实际的 epoch 数可能会更少。 
 
 - stop_within_epoch: bool#
 - time_limit: float#