前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >何恺明抛出重磅炸弹!ImageNet并非必要

何恺明抛出重磅炸弹!ImageNet并非必要

作者头像
新智元
发布2018-12-18 11:02:47
5540
发布2018-12-18 11:02:47
举报
文章被收录于专栏:新智元新智元


新智元报道

来源:arxiv

新智元编辑部

【新智元导读】何恺明、Ross Girshick等大神深夜扔出“炸弹”:ImageNet预训练并非必须。大神们使用随机初始化变得到了媲美COCO冠军的结果,无情颠覆“预训练+微调”思维定式——再看此前预训练与此后微调所付出的种种,呜呼哀哉,好不苦矣!

ImageNet 有用吗?

当然有用。

但 ImageNet 预训练却并非必须!

刚刚,何恺明等人在arxiv贴出一篇重磅论文,题为《重新思考“ImageNet预训练”》,让似乎本已经平静的ImageNet湖面,再掀波澜!

Facebook 人工智能研究所何恺明、Ross Cirshick 和 Piotr Dollar 三人在arxiv上贴出最新论文:重新思考ImageNet预训练

过去几年来,使用ImageNet这套大规模数据集进行预训练的视觉模型,对于执行计算机视觉任务而言都是必不可少的存在。虽然并没用多少时间,但人们似乎都默认,计算机视觉任务需要使用ImageNet预训练模型。

然而,何恺明等人却站出来说——

不!

ImageNet 预训练模型并非必须,ImageNet 能做的只是加速收敛,对最终物体检测的精度或实例分割的性能并无帮助

他们使用随机初始化的模型,不借助外部数据,取得了不逊于COCO 2017冠军的结果。

大神不愧为大神——此前我们预训练ImageNet模型再辛辛苦苦微调,都是为了什么?!

不用ImageNet预训练,随机初始化就能媲美COCO冠军!

何恺明等人研究表明,在COCO数据集上进行随机初始化训练,其效果能做到不次于在ImageNet上进行预训练。

而且,即使只用COCO中10%的训练数据进行训练,依然有可能实现上述结果。

他们还发现,可以在相当于ImageNet规模4倍大的数据集上,使用随机初始化训练,而结果不发生过拟合。

图1:我们在COCO train2017数据集上使用ResNet-50 FPN[26]和GroupNorm[48]训练Mask R-CNN[13],并在val2017数据集上评估边界框AP,通过随机权重或ImageNet预训练初始化模型。我们通过改变学习率降低(准确率提高)的迭代来探索不同的训练计划。从随机初始化训练出来的模型需要更多的迭代来收敛,但是只收敛到一个与finetuning相似的解决方案。

实验表明,ImageNet的预训练在训练的早期加速了收敛,但并不一定提供正则化或提高最终目标任务的精度

具体说,何恺明等人通过实验观察到以下情况:

1、ImageNet预训练方式加快了收敛速度,特别是在训练早期,但随机初始化训练可以在训练一段时间后赶上来。考虑到前者还要进行模型的微调,训练总时间二者大体相当。由于在研究目标任务时经常忽略ImageNet预训练的成本,因此采用短期训练进行的“对照”比较可能会掩盖随机初始化训练的真实表现。

2、ImageNet预训练不能自动提供性能更优的正则化。在使用较少的图像(不到COCO数据集的10%)进行训练时,我们发现必须选择新的超参数进行微调(来自预训练)以避免过度拟合。当用这些同样的超参数进行随机初始化训练时,该模型精度可以达到预训练模型的水平,无需任何额外的正则化处理。

3、当目标任务或指标对空间定位预测更敏感时,ImageNet预训练模型没有表现出任何优势。我们观察到,采用随机初始化训练时,预测性能出现明显改善。我们还发现,采用随机初始化训练的收敛速度也较预训练模型快。直观地说,基于分类任务的类ImageNet的预训练方式,与本地化的敏感目标任务之间的任务间存在鸿沟,这可能会限制预训练模型的优势。

有没有ImageNet预训练,区别真没那么大

作者在论文中写道,他们的结果挑战了ImageNet对依赖任务进行预训练的传统思想,他们的发现将鼓励人们重新思考当前计算机视觉中“预训练和微调”的“范式”。

那么,完全从零开始训练,与使用ImageNet预训练相比,最大的不同在哪里呢?

答案是“时间”。

使用ImageNet做预训练的模型已经具备了边缘、纹理等低级表征,而完全从零开始训练的模型需要迭代更久,因此需要更多的训练时间。

但是,从所需要的训练样本的像素(而非实例数)来看,随机初始化与使用ImageNet预训练,两者其实相差不太多

图2:在所有训练迭代中看到的图像、实例和像素的总数,分别表示预训练+微调(绿色条)vs.随机初始化(紫色条)。我们考虑到ImageNet预训练需要100 epochs,fine-tuning采用2× schedule (∼24 epochs over COCO),随机初始化采用6× schedule (∼72 epochs over COCO)。我们计算ImageNet实例为1 per image (COCO是∼7),和ImageNet像素为224×224,COCO为800×1333。

下图展示了另一个例子,使用随机初始化(深红和深绿)和ImageNet预训练(浅红和浅绿),在多种情况下,两者的结果都是可比的。

区别大吗?

真的没有那么大!

图5:使用Mask R-CNN对不同系统进行随机初始化与预训练的比较,包括:(i)使用FPN和GN的baseline,(ii)使用训练时间多尺度增强的baseline,(iii)使用Cascade RCNN[3]和训练时间增强的baseline,以及(iv)加上测试时间多尺度增强的baseline。上图:R50;下图R101。

此论文实验部分写得非常漂亮,了解详情推荐阅读原文(地址见文末)。

“ImageNet时代完结”,从零开始训练完全可行

何恺明等人在这篇论文中,探讨了以下几点:

  • 无需更改架构,就能对目标任务进行从头开始的训练。
  • 从头开始训练需要更多的迭代,以充分收敛。
  • 在许多情况下,从头开始的训练并不比ImageNet预训练的同个模型差,甚至在只有10k COCO图像的情况下也是如此。
  • ImageNet预训练加速了目标任务的收敛。
  • ImageNet预训练不一定有助于减少过拟合,除非数据量真的非常小。
  • 如果目标任务对定位比对分类更敏感,那么ImageNet预训练的帮助较小。

从目前的文献来看,这些结果是令人惊讶的,并对当前凡是计算机视觉任务就先拿ImageNet来预训练的做法不啻一记当头棒喝。

这些结果表明,当没有足够的目标数据或计算资源来对目标任务进行训练时,ImageNet预训练方式是一种基于“历史”的解决方法(并且可能会持续一段时间)

现在看,ImageNet标注方便、应用广泛,似乎是“免费”资源,拿来用即可。

但不是的,抛开构建ImageNet花费了多少人力物力和时间不说,对于某些任务而言,如果目标数据与ImageNet相差太大,用在微调ImageNet预训练模型上的时间和精力,还不如直接从头开始训练。

这项工作也并非要我们彻底抛弃预训练模型,而是表明(至少视觉检测任务)除了用 ImageNet 预训练之外,还存在另一种训练方式,从零开始训练也完全可以。

这篇论文贴出来没多久,知乎上便出现了讨论“如何评价何恺明等 arxiv 新作 Rethinking ImageNet Pre-training?”

截止发稿前,点赞最高的回答来自中科院计算所博士“王晋东不在家”:

我不是排斥使用ImageNet pretrained network,我只是觉得,应该找一些领域,让ImageNet真正有用。不妨试试用这些预训练好的网络去进行医学图像分类、极端图像(低分辨率、逆光、精细图像、卫星)分类,这才是ImageNet的正确价值。 不过,欣喜的是,也有一批采用了浅层网络,或者是加入对抗机制的浅层网络,在最近的顶会上有所突破。 不能一直随大流,是时候重新思考了。

另一位计算机视觉从业者mileistone也表示:

深度学习领域理论发展慢于应用,像“train from scratch”类似的common practice很多,这些common practice很多没有理论支撑,我们也没法判断有没有道理,我们只知道大家都这么用。因为可质疑的地方太多了,我们很容易失去独立思考的能力。 希望更多的“rethink”文章出来,这些文章像鲶鱼一样,持续激发深度学习领域的活力。

何恺明等人认为,他们的论文和实验表明,随机初始化也有可能生成媲美COCO冠军的结果,正因如此,计算机视觉从业者才更应该慎待预训练特征。

计算机视觉的通用表征,仍然值得我们去追求。

论文地址:https://arxiv.org/pdf/1811.08883.pdf

知乎讨论:https://www.zhihu.com/question/303234604/answer/536820942

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-11-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 新智元 微信公众号,前往查看

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

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 【新智元导读】何恺明、Ross Girshick等大神深夜扔出“炸弹”:ImageNet预训练并非必须。大神们使用随机初始化变得到了媲美COCO冠军的结果,无情颠覆“预训练+微调”思维定式——再看此前预训练与此后微调所付出的种种,呜呼哀哉,好不苦矣!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档