Callbacks
best_model_callback
用于加载和保存最好效果模型参数的回调函数。
- class mindnlp.engine.callbacks.best_model_callback.BestModelCallback(save_path=None, larger_better=True, auto_load=False, save_on_exception=False)[源代码]
基类:
Callback保存具有最佳评测指标值的模型,并在训练结束时重新加载模型。最佳模型只在训练结束时加载。
- 参数
save_path (str) – 用于保存效果最好模型的参数文件路径。
larger_better (bool) – 评测指标值是否越大越好。默认值:是。
auto_load (bool) – 是否在训练结束时加载效果最好的模型参数。
save_on_exception (bool) – 在遇到异常时,是否保存当前的模型参数。
- evaluate_end(run_context)[源代码]
在评测结束后调用。
- 参数
run_context (RunContext) – 模型训练或评测过程中的相关信息。
- is_better_metric_value(metrics_values)[源代码]
将本次每个评测指标值和当前最好的结果进行比较。
- 参数
metrics_values (float) – 用于和当前最好评测指标值进行比较的结果。
- train_end(run_context)[源代码]
在模型训练结束后调用,并为模型加载效果最好的参数。
- 参数
run_context (RunContext) – 模型训练或评测过程中的相关信息。
callback_manager
回调函数管理器
checkpoint_callback
用于保存checkpoint的回调函数。
- class mindnlp.engine.callbacks.checkpoint_callback.CheckpointCallback(save_path=None, epochs=None, keep_checkpoint_max=5)[源代码]
基类:
Callback保存模型的checkpoint。在每个 epoch 结束时保存当前的 Trainer 状态,可用于恢复之前的操作。使用最近epoch继续训练示例代码。
- 参数
save_path (str) – 保存模型训练状态的路径。
epochs (int) – 每n个epoch存一个checkpoint。
keep_checkpoint_max (int) – 存checkpoint的最大数量。默认:5。
- train_begin(run_context)[源代码]
训练开始时checkpoint文件保存路径。
- 参数
run_context (RunContext) – 模型训练或评测过程中的相关信息。
- train_epoch_end(run_context)[源代码]
每n个epoch存一个checkpoint。
- 参数
run_context (RunContext) – 模型训练或评测过程中的相关信息。
earlystop_callback
用于早停的回调函数。
- class mindnlp.engine.callbacks.earlystop_callback.EarlyStopCallback(patience=10, larger_better=True)[源代码]
基类:
Callback如果n个epoch后评测指标的值都没有提升,则停止模型训练。
- 参数
patience (int) – 评估指标没有提升的限额数量。 默认值:10。
larger_better (bool) – 评价指标的值是否越大越好。默认值:是。
- evaluate_end(run_context)[源代码]
在评测结束后调用。
- 参数
run_context (RunContext) – 模型训练或评测过程中的相关信息。
timer_callback
用于计时的回调函数。
- class mindnlp.engine.callbacks.timer_callback.TimerCallback(print_steps=0, time_ndigit=3)[源代码]
基类:
Callback打印训练过程中的相关事件信息,如训练时长、评估时长、总时长。
- 参数
print_steps (int) – 何时打印时间信息。默认值:-1。 -1:在每个epoch结束时打印一次。 正数 n:打印一次 n 步。
time_ndigit (int) – 要保留的小数位数。 默认值:3。
- evaluate_begin(run_context)[源代码]
在每次模型评估前调用。
- 参数
run_context (RunContext) – 模型训练或评测过程中的相关信息。
- evaluate_end(run_context)[源代码]
在每次模型评估结束后调用。
- 参数
run_context (RunContext) – 模型训练或评测过程中的相关信息。
- format_timer(reset=True, train_end=False)[源代码]
格式化输出。
- 参数
run_context (RunContext) – 模型训练或评测过程中的相关信息。
- train_begin(run_context)[源代码]
在每次模型训练开始前调用。
- 参数
run_context (RunContext) – 模型训练或评测过程中的相关信息。
- train_end(run_context)[源代码]
在每次模型训练结束后调用。
- 参数
run_context (RunContext) – 模型训练或评测过程中的相关信息。
- train_epoch_begin(run_context)[源代码]
在每次模型训练一个epoch前调用。
- 参数
run_context (RunContext) – 模型训练或评测过程中的相关信息。
- train_epoch_end(run_context)[源代码]
在每次模型训练一个epoch结束后调用。
- 参数
run_context (RunContext) – 模型训练或评测过程中的相关信息。
- train_step_begin(run_context)[源代码]
在每次模型训练一个step前调用。
- 参数
run_context (RunContext) – 模型训练或评测过程中的相关信息。
- train_step_end(run_context)[源代码]
在每次模型训练一个step结束后调用。
- 参数
run_context (RunContext) – 模型训练或评测过程中的相关信息。
Callbacks.