前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Detectron2学习二:目录结构、超参数配置、Trainer类

Detectron2学习二:目录结构、超参数配置、Trainer类

原创
作者头像
CV_Learner
修改2019-12-09 15:14:08
2.8K0
修改2019-12-09 15:14:08
举报
文章被收录于专栏:CV_LearnCV_Learn

一、目录结构

参考链接:https://www.cnblogs.com/marsggbo/p/11677086.html

detectron2的主要目录结构及核心组件中的配置信息
detectron2的主要目录结构及核心组件中的配置信息

二、参数配置

参数加载及设置流程
参数加载及设置流程

三、训练器类(Trainer)的继承关系

训练器类之间继承流程
训练器类之间继承流程

逻辑图按照文件调用、继承从左到右进行的。

四、代码示例

def main(args):
    cfg = setup(args)  ##设置参数配置信息

    if args.eval_only:
        model = Trainer.build_model(cfg)
        DetectionCheckpointer(model, save_dir=cfg.OUTPUT_DIR).resume_or_load(
            cfg.MODEL.WEIGHTS, resume=args.resume
        )
        res = Trainer.test(cfg, model)
        if comm.is_main_process():
            verify_results(cfg, res)
        if cfg.TEST.AUG.ENABLED:
            res.update(Trainer.test_with_TTA(cfg, model))
        return res

    """
    If you'd like to do anything fancier than the standard training logic,
    consider writing your own training loop or subclassing the trainer.
    """
    trainer = Trainer(cfg) ##构建训练器
    trainer.resume_or_load(resume=args.resume)
    if cfg.TEST.AUG.ENABLED:
        trainer.register_hooks(
            [hooks.EvalHook(0, lambda: trainer.test_with_TTA(cfg, trainer.model))]
        )
    return trainer.train() ##开始进行训练

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档