概述
MMPretrain是一个升级版的预训练开源算法框架,旨在提供多种强大的预训练主干网络,并支持不同的预训练策略。它源自于备受赞誉的开源项目MMClassification和MMSelfSup,并增加了许多令人兴奋的新功能。在当前视觉识别中,预训练阶段至关重要,MMPretrain提供了丰富而强大的预训练模型,能够帮助我们提升各种下游视觉任务的表现。
架构
之前一直以为PreTrain是和MMCV一样是基础设施之一,为mmdet / mmcls提供支持的,但是没想到mmpretrain也属于应用之一
解决的问题
我认为预训练模型的构建难在训练策略的调优,其会影响最后的性能和泛化能力,训练策略主要包括初始随机化、对比学习、数据增强、深度监督和学习率调度等。在训练过程中,还需要解决过拟合、梯度消失、梯度爆炸等常见问题。mmpretrain的config的模式很好的解决了实验记录的问题,除了方便管理环境,也方便做消融实验
易用的功能
提供了model analysis函数,能够简易的计算模型的参数量及计算量,同时还有大量的可视化工具及可解释性分析套件,方便直观的认识模型,从而调优
残留的问题
mmengine的封装太深了,比如简单的hook会调起数层wrapper,debug实在费力,register解决组件化的问题,但是也太抽象了