mindspore.train.LossMonitor

class mindspore.train.LossMonitor(per_print_times=1)[源代码]

训练场景下,监控训练的loss;边训练边推理场景下,监控训练的loss和推理的metrics。

如果loss是NAN或INF,则终止训练。

说明

如果 per_print_times 为0,则不打印loss。

参数:
  • per_print_times (int) - 表示每隔多少个step打印一次loss。默认值:1。

异常:
  • ValueError - 当 per_print_times 不是整数或小于零。

样例:

说明

运行以下样例之前,需自定义网络LeNet5和数据集准备函数create_dataset。详见 网络构建数据集 Dataset

>>> from mindspore import nn
>>> from mindspore.train import Model, LossMonitor
>>>
>>> net = LeNet5()
>>> loss = nn.SoftmaxCrossEntropyWithLogits(sparse=True, reduction='mean')
>>> optim = nn.Momentum(net.trainable_params(), 0.01, 0.9)
>>> model = Model(net, loss_fn=loss, optimizer=optim)
>>> data_path = './MNIST_Data'
>>> dataset = create_dataset(data_path)
>>> loss_monitor = LossMonitor()
>>> model.train(10, dataset, callbacks=loss_monitor)
on_train_epoch_end(run_context)[源代码]

LossMoniter用于 model.fit,即边训练边推理场景时,打印训练的loss和当前epoch推理的metrics。

参数:
step_end(run_context)[源代码]

step结束时打印训练loss。

参数: