Why do deep convolutional networks generalize so poorly to small image transformations?

论文:Why do deep convolutional networks generalize so poorly to small image transformations? 

 

CNN深度神经网络虽然在IMAGENET上刷新了记录,甚至超越了人类的识别能力。但是由于神经网络固有的缺陷,只能通过stride=2的conv和pooling实现平移不变性,使得其对尺度不变形没有很好的鲁棒。有时甚至只是图片中一个像素的变化,都会使得识别结果产生巨大的变化。

如上图所示,第一行表示对图片做了平移操作(shift),第二行表示对图片进行了缩放操作(scale),第三行表示姿态变化操作,截取了连续视频中的不同几帧。

从右面的曲线可以看出,神经网络并没有表现出很好的鲁棒性,变化非相关性。

 

实验验证:

实验中论文使用了3个经典的网络结构,分别为VGG16 ,ResNet50 ,InceptionResNetV2

为了验证网络结构对图片的变化的敏感,随机从ImageNet数据集中进行采样,并且对预测结果进行降序排序。

A图表示了图片对于垂直变换的敏感,B图表示了三种经典网络的锯齿状预测,y轴越低表示网络越鲁棒。可以得出,网络越深,预测结果的锯齿性越大,鲁棒性越差。

A图表示原始的输入图像,B图表示了3种网络不同层的输出特征图。可以从特征图上看出,VGG16对3个输入图片最终都有很好的特征激活点,Resnet50表现出2个特征激活点,InceptionResNetV2 只变现出1个特征激活点。

最终可以得出,随着网络采样深度的增加,网络的平移不变性也越来越差。

 

原因分析:

上图为ImageNet的“Tibetan terrier”类别,作者对该类别的所有图片进行了标注。绿色的点表示2个眼睛的中心位置,红色的线表示瞳距。第二个图表示了绿色的点的分布。第三个图表示了不同的瞳距和预测结果的关系,表现出了高斯分布,可见并不具备鲁棒性。

数据增强是训练神经网络常用的方法。像InceptionResNetV2 这样下采样45倍的网络将会需要452 = 2025 张图片来覆盖所有的平移变化。如果再考虑旋转和缩放变化,需要的图片量将会呈指数增加。

 

结论:

  1. 可以使用sift这种具有尺度不变性的特征
  2. 在卷积之前,使用pooling操作来增加尺度不变性,而不是stride=2的conv
  3. 通过集成学习,投票方式来改变这种尺度不变性表现出的差异
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值