CheckpointHook should check whether file exists before removing it by @zhouzaida in https://github.com/open-mmlab/mmengine/pull/1198 Fix undefined variable error in Runner by @HAOCHENYE in https://github.com/open-mmlab/mmengine/pull/1219 Docs Add a document to introduce how to debug with ...
执行器(Runner) 欢迎来到 MMEngine 用户界面的核心——执行器! 作为MMEngine 中的“集大成者”,执行器涵盖了整个框架的方方面面,肩负着串联所有组件的重要责任;因此,其中的代码和实现逻辑需要兼顾各种情景,相对庞大复杂。但是不用担心!在这篇教程中,我们将隐去繁杂的细节,速览执行器常用的接口、功能、示例,为你呈...
fromtorch.utils.dataimportDataLoader,default_collatefromtorch.optimimportAdamfrommmengine.runnerimportRunnerrunner=Runner(# 你的模型model=MyAwesomeModel(layers=2,activation='relu'),# 模型检查点、日志等都将存储在工作路径中work_dir='exp/my_awesome_model',# 训练所用数据train_dataloader=DataLoader(dataset...
default_hooks.checkpoint.save_best='coco/AP' This works normally in non-quantized training. However when inheriting the_base_in the QAT config,mmrazor.engine.runner.quantization_loops.QATValLoopcallsafter_val_epochhook twice with different keys as seenhere ...
CheckpointHook 的更多用法可查看CheckpointHook 教程。 设置打印日志的间隔 默认情况下,每迭代 10 次往终端打印 1 次日志,可以通过设置LoggerHook的 interval 参数进行设置。 # 设置每 20 次打印一次default_hooks=dict(logger=dict(type='LoggerHook',interval=20))runner=Runner(model=MMResNet50(),work_dir='....
在 torch.utils.checkpoint 包中已经实现了对应功能。简要实现过程是:在前向阶段传递到 checkpoint 中的 forward 函数会以torch.no_grad模式运行,并且仅仅保存 forward 函数的输入和输出,然后在反向阶段重新计算中间层的激活值 (intermediate activations)。 大模型训练技术...
用户可以设置 Runner 的 resume 参数开启自动恢复训练的功能。在启动训练时,设置 Runner 的 resume 等于 True,Runner 会从 work_dir 中加载最新的 checkpoint。如果 work_dir 中有最新的 checkpoint(例如该训练在上一次训练时被中断),则会从该 checkpoint 恢复训练,否则(例如上一次训练还没来得及保存 checkpoint 或者...
本部分内容学习mmengine中的runner目录 runner目录下的方法列表如下: 'BaseLoop', 'load_state_dict', 'get_torchvision_models', 'get_external_models', 'get_mmcls_models', 'get_deprecated_model_names', 'CheckpointLoader', 'load_checkpoint', 'weights_to_cpu', 'get_state_dict', 'save_checkpoint'...
本部分内容用于学习mmengine中的registry目录 作为openmmlab中最基础的部分,mmengine框架下包含多个目录和两个文件(init.py、version.py) 其中,init.py用于将各个目录组成的包集成;version.py用于记录表示当前mmengine的版本号 registry目录共包含以下几个类和方法 'Registry', 'RUNNERS', 'RUNNER_CONSTRUCTORS', 'HOOK...
checkpoint=None, ) # 只保留自定义的hook epoch_train_cfg.default_hooks = default_hooks_empty runner = pseudo_runner.build_runner(epoch_train_cfg) # 注册自定义hook runner.register_custom_hooks([MyHook(), ]) # 运行runner runner.train() ...