数据预处理器 DataPreprocessor 本文来自社区投稿,作者 @奔跑的日月 近期OpenMMLab 开源了一个新的库 MMEngine,根据官方描述,新版MMCV保留了部分之前的算子(operators),并新增了一些变换(transforms)功能,其余与训练相关的大部分功能(比如runner、fileio等)均已迁移至MMEngine,新版训练测试脚本,功能更为强大,在接口、封...
print(batch_inputs[0].mydata.device) # 实例化DataPreprocessor,在gpu上 basedatapreprocessor = BaseDataPreprocessor().to('cuda:0') batch_inputs_converted = basedatapreprocessor(batch_inputs) print(batch_inputs_converted[0].mydata.device) ImgDataPreprocessor def ImgDataPreprocessor_learn(): """...
def train_step(self, data, optim_wrapper): data = self.data_preprocessor(data, training=True) # 按下不表,详见数据与处理器一节 loss = self(**data, mode='loss') # loss 模式,返回损失字典,假设 data 是字典,使用 ** 进行解析。事实上 train_step 兼容 tuple 和 dict 类型的输入。 parsed_los...
data_preprocessor=dict( type='DetDataPreprocessor', mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], bgr_to_rgb=True, pad_size_divisor=1), backbone=dict( type='ResNet', depth=50, num_stages=4, out_indices=(3, ), ...
('val_evaluator'),test_evaluator=cfg.get('test_evaluator'),default_hooks=cfg.get('default_hooks'),custom_hooks=cfg.get('custom_hooks'),data_preprocessor=cfg.get('data_preprocessor'),load_from=cfg.get('load_from'),resume=cfg.get('resume',False),launcher=cfg.get('launcher','none'),env...
Fix BaseModel.to and BaseDataPreprocessor.to to make them consistent with torch.nn.Module by @C1rN09 in https://github.com/open-mmlab/mmengine/pull/783 Fix creating a new logger at PretrainedInit by @xiexinch in https://github.com/open-mmlab/mmengine/pull/791 Fix ZeroRedundancyOptimizer ...
mmengine/model/base_model: ['BaseDataPreprocessor', 'ImgDataPreprocessor'] MODEL_WRAPPERS count result: num_modules: 4 scope: mmengine torch/nn/parallel: ['DistributedDataParallel', 'DataParallel'] mmengine/model/wrappers: ['MMDistributedDataParallel', 'MMSeparateDistributedDataParallel'] ...
.. currentmodule:: mmengine.model Module .. autosummary:: :toctree: generated :nosignatures: :template: classtemplate.rst BaseModule ModuleDict ModuleList Sequential Model .. autosummary:: :toctree: generated :nosignatures: :template: classtemplate.rst BaseModel BaseDataPreprocessor ImgDataPreproce...
data_preprocessor=dict(...), backbone=dict( type='mmcls.ConvNeXt', # 添加mmcls 前缀完成跨库调用 type='mmpretrain.ConvNeXt', # 添加mmpretrain 前缀完成跨库调用 arch='tiny', out_indices=[0, 1, 2, 3], drop_path_rate=0.4, 9 changes: 4 additions & 5 deletions 9 docs/zh_cn/advanced...
process(data_samples=outputs, data_batch=data_batch) metrics = evaluator.evaluate(len(val_dataloader.dataset)) 上述伪代码的关键点在于: data_preprocessor 的输出需要经过解包后传递给 model evaluator 的 data_samples 参数接收模型的预测结果,而 data_batch 参数接收 dataloader 的原始数据 什么是 data_...