网易首页 > 网易号 > 正文 申请入驻

RepVGG:极简架构,SOTA性能,让VGG式模型再次伟大!

0
分享至

  2020年B站年度弹幕是“爷青回”。 一定有很多瞬间,让你感觉“爷的青春回来了”。 在这个卷积网络各种超参精确到小数点后三位的时代,你是否还记得五六年前的田园时代,堆几个卷积层就能涨点的快乐?

  我们最近的工作RepVGG,用结构重参数化(structural re-parameterization)实现VGG式单路极简架构,一路3x3卷到底,在速度和性能上达到SOTA水平,在ImageNet上超过80%正确率。

  不用NAS,不用attention,不用各种新颖的激活函数,甚至不用分支结构,只用3x3卷积和ReLU,也能达到SOTA性能?

  论文:https://arxiv.org/abs/2101.03697

  开源预训练模型和代码(PyTorch版):

  https://github.com/DingXiaoH/RepVGG

  放出两天已有300 star,模型已被下载数百次,据同行反馈在真实业务上效果很好。

  (MegEngine版):

  https://github.com/megvii-model/RepVGG

  太长不看版

  方法有多简单呢?下午5点看完文章,晚饭前就能写完代码开始训练,第二天就能看到结果。如果没时间看完这篇文章,只要点开下面的代码,看完前100行就可以完全搞明白。

  https://github.com/DingXiaoH/RepVGG/blob/main/repvgg.py

  下面是详细介绍。

  1

  模型定义

  我们所说的“VGG式”指的是:

  1. 没有任何分支结构。即通常所说的plain或feed-forward架构。

  2. 仅使用3x3卷积。

  3. 仅使用ReLU作为激活函数。

  下面用一句话介绍RepVGG模型的基本架构:将20多层3x3卷积堆起来,分成5个stage,每个stage的第一层是stride=2的降采样,每个卷积层用ReLU作为激活函数。

  再用一句话介绍RepVGG模型的详细结构:RepVGG-A的5个stage分别有[1, 2, 4, 14, 1]层,RepVGG-B的5个stage分别有[1, 4, 6, 16, 1]层,宽度是[64, 128, 256, 512]的若干倍。这里的倍数是随意指定的诸如1.5,2.5这样的“工整”的数字,没有经过细调。

  再用一句话介绍训练设定:ImageNet上120 epochs,不用trick,甚至直接用PyTorch官方示例的训练代码就能训出来!

  为什么要设计这种极简模型,这么简单的纯手工设计模型又是如何在ImageNet上达到SOTA水平的呢?

  2

  为什么要用VGG模型?

  除了我们相信简单就是美以外,VGG式极简模型至少还有五大现实的优势(详见论文)。

  1. 3x3卷积非常快。在GPU上,3x3卷积的计算密度(理论运算量除以所用时间)可达1x1和5x5卷积的四倍。

  2. 单路架构非常快,因为并行度高。同样的计算量,“大而整”的运算效率远超“小而碎”的运算。

  3. 单路架构省内存。例如,ResNet的shortcut虽然不占计算量,却增加了一倍的显存占用。

  4. 单路架构灵活性更好,容易改变各层的宽度(如剪枝)。

  5. RepVGG主体部分只有一种算子:3x3卷积接ReLU。在设计专用芯片时,给定芯片尺寸或造价,我们可以集成海量的3x3卷积-ReLU计算单元来达到很高的效率。别忘了,单路架构省内存的特性也可以帮我们少做存储单元。

  3

  结构重参数化让VGG再次伟大

  相比于各种多分支架构(如ResNet,Inception,DenseNet,各种NAS架构),近年来VGG式模型鲜有关注,主要自然是因为性能差。例如,有研究[1]认为,ResNet性能好的一种解释是ResNet的分支结构(shortcut)产生了一个大量子模型的隐式ensemble(因为每遇到一次分支,总的路径就变成两倍),单路架构显然不具备这种特点。

  既然多分支架构是对训练有益的,而我们想要部署的模型是单路架构,我们提出解耦训练时和推理时架构。我们通常使用模型的方式是:

  1. 训练一个模型

  2. 部署这个模型

  但在这里,我们提出一个新的做法:

  1. 训练一个多分支模型

  2. 将多分支模型等价转换为单路模型

  3. 部署单路模型

  这样就可以同时利用多分支模型训练时的优势(性能高)和单路模型推理时的好处(速度快、省内存)。这里的关键显然在于这种多分支模型的构造形式和转换的方式。

  我们的实现方式是在训练时,为每一个3x3卷积层添加平行的1x1卷积分支和恒等映射分支,构成一个RepVGG Block。这种设计是借鉴ResNet的做法,区别在于ResNet是每隔两层或三层加一分支,而我们是每层都加。

  训练完成后,我们对模型做等价转换,得到部署模型。这一转换也非常简单,因为1x1卷积是一个特殊(卷积核中有很多0)的3x3卷积,而恒等映射是一个特殊(以单位矩阵为卷积核)的1x1卷积!根据卷积的线性(具体来说是可加性),每个RepVGG Block的三个分支可以合并为一个3x3卷积。

  下图描述了这一转换过程。在这一示例中,输入和输出通道都是2,故3x3卷积的参数是4个3x3矩阵,1x1卷积的参数是一个2x2矩阵。注意三个分支都有BN(batch normalization)层,其参数包括累积得到的均值及标准差和学得的缩放因子及bias。这并不会妨碍转换的可行性,因为推理时的卷积层和其后的BN层可以等价转换为一个带bias的卷积层(也就是通常所谓的“吸BN”)。

  对三分支分别“吸BN”之后(注意恒等映射可以看成一个“卷积层”,其参数是一个2x2单位矩阵!),将得到的1x1卷积核用0给pad成3x3。最后,三分支得到的卷积核和bias分别相加即可。这样,每个RepVGG Block转换前后的输出完全相同,因而训练好的模型可以等价转换为只有3x3卷积的单路模型。

  从这一转换过程中,我们看到了“结构重参数化”的实质:训练时的结构对应一组参数,推理时我们想要的结构对应另一组参数;只要能把前者的参数等价转换为后者,就可以将前者的结构等价转换为后者。

  4

  实验结果

  在1080Ti上测试,RepVGG模型的速度-精度相当出色。在公平的训练设定下,同精度的RepVGG速度是ResNet-50的183%,ResNet-101的201%,EfficientNet的259%,RegNet的131%。注意,RepVGG取得超过EfficientNet和RegNet并没有使用任何的NAS或繁重的人工迭代设计。

  这也说明,在不同的架构之间用FLOPs来衡量其真实速度是欠妥的。例如,RepVGG-B2的FLOPs是EfficientNet-B3的10倍,但1080Ti上的速度是后者的2倍,这说明前者的计算密度是后者的20余倍。

  在Cityscapes上的语义分割实验表明,在速度更快的情况下,RepVGG模型比ResNet系列高约1%到1.7%的mIoU,或在mIoU高0.37%的情况下速度快62%。

  另外一系列ablation studies和对比实验表明,结构重参数化是RepVGG模型性能出色的关键(详见论文)。

  最后需要注明的是,RepVGG是为GPU和专用硬件设计的高效模型,追求高速度、省内存,较少关注参数量和理论计算量。在低算力设备上,可能不如MobileNet和ShuffleNet系列适用。

  参考文献

  [1] Andreas Veit, Michael J Wilber, and Serge Belongie. Residual networks behave like ensembles of relatively shallow networks. In Advances in neural information processing systems, pages 550–558, 2016. 2, 4, 8

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
深夜,热门中概股集体下跌!SpaceX暴跌近8%,存储芯片股爆发,美光科技涨超5%!油价跌超3%,金银价上涨|美股开盘

深夜,热门中概股集体下跌!SpaceX暴跌近8%,存储芯片股爆发,美光科技涨超5%!油价跌超3%,金银价上涨|美股开盘

每日经济新闻
2026-06-22 22:38:17
杨德龙:证监会主席吴清强调主动拥抱新一轮科技革命和产业变革

杨德龙:证监会主席吴清强调主动拥抱新一轮科技革命和产业变革

德龙财经
2026-06-22 20:48:58
活久见!800元讨薪聊天登上热搜,以“抹一脸屎”施压,老板转账

活久见!800元讨薪聊天登上热搜,以“抹一脸屎”施压,老板转账

火山詩话
2026-04-30 06:45:15
CBA三消息:王少杰正式签约,范子铭自讨苦吃,深圳队外援抬价

CBA三消息:王少杰正式签约,范子铭自讨苦吃,深圳队外援抬价

隐于山海
2026-06-23 00:40:04
小蜘蛛逼宫!公开施压高层:让我离队 马竞回应:绝不会让巴萨得逞

小蜘蛛逼宫!公开施压高层:让我离队 马竞回应:绝不会让巴萨得逞

风过乡
2026-06-23 06:59:14
刚刚 | 姆巴佩,左脚世界波!

刚刚 | 姆巴佩,左脚世界波!

天津广播
2026-06-23 06:18:23
A股分红派息转增一览:61股今日股权登记

A股分红派息转增一览:61股今日股权登记

每日经济新闻
2026-06-23 07:58:27
研究表明:糖尿病不用过度治疗,注意三点即可,别吓唬自己

研究表明:糖尿病不用过度治疗,注意三点即可,别吓唬自己

垚垚分享健康
2026-06-22 18:09:46
湖人别犹豫了,队内这4人该交易了,别浪费了东契奇巅峰

湖人别犹豫了,队内这4人该交易了,别浪费了东契奇巅峰

兵哥篮球故事
2026-06-23 08:32:25
医生发现:每天早起后先排便的人,用不了半年,身体或迎来5改变

医生发现:每天早起后先排便的人,用不了半年,身体或迎来5改变

任医生聊健康
2026-06-08 20:00:48
中国男篮vs荷兰前瞻:荷兰准二队背靠背出战,杨瀚森出场备受期待

中国男篮vs荷兰前瞻:荷兰准二队背靠背出战,杨瀚森出场备受期待

新杀猪的秀才
2026-06-23 07:30:40
山东37人刑事大案:“恶势力”升格“黑社会”系为弥补办案亏空?

山东37人刑事大案:“恶势力”升格“黑社会”系为弥补办案亏空?

青沙文史
2026-06-22 23:39:09
大龄剩女可以破防到什么程度?发朋友圈且通知媒人,还向家人告状

大龄剩女可以破防到什么程度?发朋友圈且通知媒人,还向家人告状

丫头舫
2026-04-24 20:40:08
贝索斯盯上70万亿市场,比电商大10倍,这次他要造什么?

贝索斯盯上70万亿市场,比电商大10倍,这次他要造什么?

薛定谔的BUG
2026-06-22 00:14:37
91-81拿下澳大利,全场最佳不是王俊杰,这人才是中国男篮的功臣

91-81拿下澳大利,全场最佳不是王俊杰,这人才是中国男篮的功臣

不写散文诗
2026-06-22 13:26:38
32岁女子万人相亲大会发言惹争议,网友直言:口是心非!

32岁女子万人相亲大会发言惹争议,网友直言:口是心非!

丫头舫
2026-05-23 20:49:14
郑丽文发表声明!

郑丽文发表声明!

经点星娱
2026-06-22 10:24:02
成年球员围殴U15希望之星,中国足球已经下作成这样

成年球员围殴U15希望之星,中国足球已经下作成这样

晓看说
2026-06-22 23:06:01
人均200多块的上海自助餐,怎么成了最新北京排队王?

人均200多块的上海自助餐,怎么成了最新北京排队王?

每日人物
2026-06-22 10:03:32
梅西帽子戏法梅开二度,高情商赛后发言感动球迷

梅西帽子戏法梅开二度,高情商赛后发言感动球迷

老淸医学科普
2026-06-23 04:18:18
2026-06-23 09:04:49
AI科技评论 incentive-icons
AI科技评论
点评学术,服务AI
7384文章数 20758关注度
往期回顾 全部

科技要闻

SpaceX、谷歌重挫,市值蒸发超5000亿美元

头条要闻

要40万彩礼116克黄金和80万婚房后 女子不结婚不退钱

头条要闻

要40万彩礼116克黄金和80万婚房后 女子不结婚不退钱

体育要闻

法国球星祝中国队下届世界杯取得好成绩

娱乐要闻

陪睡陪玩是皮毛,向佐揭内娱暗规则

财经要闻

智谱万亿市值,国产Anthropic真来了?

汽车要闻

华为智驾ADS限时优惠月底结束 7月1日前下订立省3000元

态度原创

本地
游戏
艺术
家居
军事航空

本地新闻

吃一次广东龙舟饭,才懂什么是豪华盛宴

Steam Machine 1049美元起 6月30日发货

艺术要闻

田卫平 2026静物油画选

家居要闻

绿意盎然 自然之境

军事要闻

东风-17发射状态首次公开 多车齐射场面硬核

无障碍浏览 进入关怀版