mindspore.train.TimeMonitor
- class mindspore.train.TimeMonitor(data_size=None)[源代码]
监控训练或推理的时间。
- 参数:
data_size (int) - 表示每隔多少个step打印一次信息。如果程序在训练期间获取到Model的 batch_num ,则将把 data_size 设为 batch_num ,否则将使用 data_size 。默认值:None。
- 异常:
ValueError - data_size 不是正整数。
样例:
说明
运行以下样例之前,需自定义网络LeNet5和数据集准备函数create_dataset。详见 网络构建 和 数据集 Dataset 。
>>> from mindspore import nn >>> from mindspore.train import Model, TimeMonitor >>> >>> 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) >>> time_monitor = TimeMonitor() >>> model.train(10, dataset, callbacks=time_monitor)
- epoch_begin(run_context)[源代码]
在epoch开始时记录时间。
- 参数:
run_context (RunContext) - 包含模型的相关信息。详情请参考
mindspore.train.RunContext
。
- epoch_end(run_context)[源代码]
在epoch结束时打印epoch的耗时。
- 参数:
run_context (RunContext) - 包含模型的相关信息。详情请参考
mindspore.train.RunContext
。