前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >不看全图看局部,CNN性能竟然更强了

不看全图看局部,CNN性能竟然更强了

作者头像
OpenCV学堂
发布2022-06-09 13:10:25
3040
发布2022-06-09 13:10:25
举报
文章被收录于专栏:贾志刚-OpenCV学堂
代码语言:javascript
复制
点击上方↑↑↑“OpenCV学堂”关注我来源:公众号 量子位  授权

不给全图,只投喂CNN一些看上去毫无信息量的图像碎片,就能让模型学会图像分类。

更重要的是,性能完全不差,甚至还能反超用完整图像训练的模型

这么一项来自加州大学圣塔芭芭拉分校的新研究,这两天引发不少讨论。

咋地,这就是说,CNN根本无需理解图像全局结构,一样也能SOTA?

具体是怎么一回事,咱们还是直接上论文。

实验证据

研究人员设计了这样一个实验:

他们在CIFAR-10、CIFAR-100、STL-10、Tiny-ImageNet-200以及Imagenet-1K等数据集上训练ResNet。

特别的是,用于训练的图像是通过随机裁剪得到的。

这个“随机裁剪”,可不是往常我们会在数据增强方法中见到的那一种,而是完全不做任何填充。

举个例子,就是对图片做PyTorch的RandomCrop变换时,padding的参数填0。

得到的训练图像就是下面这个样式的。即使你是阅图无数的老司机,恐怕也分辨不出到底是个啥玩意儿。

训练图像如此碎片化,模型的识图能力又能达到几成?

来看实验结果:

好家伙,在CIFAR-10上,用16×16的图像碎片训练出来的模型,测试准确率能达到91%,而用完整的32×32尺寸图像训练出来的模型,测试准确率也不过90%

这一波,“残缺版”CNN竟然完全不落下风,甚至还反超了“完整版”CNN。

要知道,被喂了碎片的CNN模型,看到的图像甚至可能跟标签显示的物体毫无关系,只是原图中背景的部分……

在STL-10、Tiny-Imagenet-200等数据集上,研究人员也得到了类似的结果。

不过,在CIFAR-100上,还是完整图像训练出来的模型略胜一筹。16×16图像碎片训练出的模型测试准确率为61%,而32×32完整图像训练出的模型准确率为68%。

所以,CNN为何会有如此表现?莫非它本来就是个“近视眼”?

研究人员推测,CNN能有如此优秀的泛化表现,是因为在这个实验中,维度诅咒的影响被削弱了。

所谓维度诅咒(curse of dimensionality),是指当维数提高时,空间体积提高太快,导致可用数据变得稀疏。

而在这项研究中,由于CNN学习到的不是整个图像的标签,而是图像碎片的标签,这就在两个方面降低了维度诅咒的影响:

  • 图像碎片的像素比完整图像小得多,这减少了输入维度
  • 训练期间可用的样本数量增加了

生成热图

基于以上实验观察结果,研究人员还提出以热图的形式,来理解CNN的预测行为,由此进一步对模型的错误做出“诊断”。

就像这样:

这些图像来自于STL-10数据集。热图显示,对于CNN而言,飞机图像中最能“刺激”到模型的,不是飞机本身,而是天空。

同样,在汽车图像中,车轮才是CNN用来识别图像的主要属性。

研究团队

最后,介绍一下论文作者。

论文一作Vamshi Madala小哥,目前是加州大学圣塔芭芭拉分校的一年级博士生。主要研究兴趣是深度学习理论框架,以及用计算机视觉来对理论研究进行测试。

论文的另一位作者是小哥的导师Shivkumar Chandrasekaran,他是加州大学圣塔芭芭拉分校电气与计算机工程教授,博士毕业于耶鲁大学数值分析专业。

论文地址: https://arxiv.org/abs/2205.10760

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

本文分享自 OpenCV学堂 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 实验证据
  • 生成热图
  • 研究团队
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档