From d09af9ead4b1871d2105e3fd03dc88287325c859 Mon Sep 17 00:00:00 2001 From: Zaida Zhou <58739961+zhouzaida@users.noreply.github.com> Date: Tue, 21 Jun 2022 15:12:49 +0800 Subject: [PATCH] [Doc]: update root registries in docs (#316) --- docs/zh_cn/tutorials/registry.md | 14 ++++++++------ mmengine/registry/root.py | 13 ++++++------- 2 files changed, 14 insertions(+), 13 deletions(-) diff --git a/docs/zh_cn/tutorials/registry.md b/docs/zh_cn/tutorials/registry.md index b59541b8..71152f05 100644 --- a/docs/zh_cn/tutorials/registry.md +++ b/docs/zh_cn/tutorials/registry.md @@ -224,7 +224,7 @@ conv = MODELS.build(cfg) MMEngine 的注册器支持跨项目调用,即可以在一个项目中使用另一个项目的模块。虽然跨项目调用也有其他方法的可以实现,但 MMEngine 注册器提供了更为简便的方法。 -为了方便跨库调用,MMEngine 提供了 18 个根注册器: +为了方便跨库调用,MMEngine 提供了 20 个根注册器: - RUNNERS: Runner 的注册器 - RUNNER_CONSTRUCTORS: Runner 的构造器 @@ -232,17 +232,19 @@ MMEngine 的注册器支持跨项目调用,即可以在一个项目中使用 - HOOKS: 钩子,如 `CheckpointHook`, `ProfilerHook` - DATASETS: 数据集 - DATA_SAMPLERS: `Dataloader` 的 `sampler`,用于采样数据 -- PIPELINES: 各种数据预处理,如 `Resize`, `Reshape` +- TRANSFORMS: 各种数据预处理,如 `Resize`, `Reshape` - MODELS: 模型的各种模块 - MODEL_WRAPPERS: 模型的包装器,如 `MMDistributedDataParallel`,用于对分布式数据并行 - WEIGHT_INITIALIZERS: 权重初始化的工具 - OPTIMIZERS: 注册了 PyTorch 中所有的 `optimizer` 以及自定义的 `optimizer` -- OPTIMIZER_CONSTRUCTORS: optimizer 的构造器 -- PARAM_SCHEDULERS: 各种参数调度器, 如 `MultiStepLR` -- METRICS: 用于验证模型精度的评估指标 +- OPTIM_WRAPPER: 对 Optimizer 相关操作的封装,如 `OptimWrapper`,`AmpOptimWrapper` +- OPTIM_WRAPPER_CONSTRUCTORS: optimizer wrapper 的构造器 +- PARAM_SCHEDULERS: 各种参数调度器,如 `MultiStepLR` +- METRICS: 用于计算模型精度的评估指标,如 `Accuracy` +- EVALUATOR: 用于计算模型精度的一个或多个评估指标 - TASK_UTILS: 任务强相关的一些组件,如 `AnchorGenerator`, `BboxCoder` - VISUALIZERS: 管理绘制模块,如 `DetVisualizer` 可在图片上绘制预测框 -- WRITERS: 存储训练日志的后端,如 `LocalWriter`, `TensorboardWriter` +- VISBACKENDS: 存储训练日志的后端,如 `LocalVisBackend`, `TensorboardVisBackend` - LOG_PROCESSORS: 控制日志的统计窗口和统计方法,默认使用 `LogProcessor`,如有特殊需求可自定义 `LogProcessor` 下面我们以 OpenMMLab 开源项目为例介绍如何跨项目调用模块。 diff --git a/mmengine/registry/root.py b/mmengine/registry/root.py index 2bdfe5ca..9f0fc058 100644 --- a/mmengine/registry/root.py +++ b/mmengine/registry/root.py @@ -1,5 +1,5 @@ # Copyright (c) OpenMMLab. All rights reserved. -"""MMEngine provides 11 root registries to support using modules across +"""MMEngine provides 20 root registries to support using modules across projects. More datails can be found at @@ -31,12 +31,17 @@ WEIGHT_INITIALIZERS = Registry('weight initializer') # mangage all kinds of optimizers like `SGD` and `Adam` OPTIMIZERS = Registry('optimizer') +# manage optimizer wrapper +OPTIM_WRAPPERS = Registry('optim_wrapper') # manage constructors that customize the optimization hyperparameters. OPTIM_WRAPPER_CONSTRUCTORS = Registry('optimizer wrapper constructor') # mangage all kinds of parameter schedulers like `MultiStepLR` PARAM_SCHEDULERS = Registry('parameter scheduler') + # manage all kinds of metrics METRICS = Registry('metric') +# manage evaluator +EVALUATOR = Registry('evaluator') # manage task-specific modules like anchor generators and box coders TASK_UTILS = Registry('task util') @@ -48,9 +53,3 @@ VISBACKENDS = Registry('vis_backend') # manage logprocessor LOG_PROCESSORS = Registry('log_processor') - -# manage optimizer wrapper -OPTIM_WRAPPERS = Registry('optim_wrapper') - -# manage evaluator -EVALUATOR = Registry('evaluator')