打开网易新闻 查看更多图片

作者 | 琰琰

编辑 | 青暮

如果输入一张“猪在天上飞”的图像,VGG会把它归为哪一类?

VGG是一款经典图像分类算法。图像分类是计算机视觉技术的基础任务,比如给定一张图像,判断它是猫、狗、飞机,还是建筑。

自深度神经网络成为主流算法后,计算机视觉领域衍生出了一批类似的经典算法,包括2016年牛津大学和DeepMind联合推出的VGGNet;2015年微软开发的ResNet,以及谷歌的GoogleNet和InceptionNet。其中,VGGNet还获得过ILSVRC 2014的图像分类亚军和目标检测项目冠军,它在ImageNet数据集上Top5的错误率为7.5%。

以上这些神经网络已被广泛用作图像特征提取架构。

不过,这些经典算法真的靠谱吗?

如果我们对图像进行一些非常规操作,比如把猪放在它“不熟悉”的天空环境中,或者把局部目标异常放大,它们还能准确分类吗?

最近一位Twitter用户就进行了这样一项测试,他选择了VGG16、InceptionV3以及ResNet-50三种算法,以及下面两张经过异常处理的图像:

左图:把书包置入“不相关”的带有食物的餐盘中;

右图:把椅子放入“不相关”的汽车周围,并放大至占据整个图像空间。

打开网易新闻 查看更多图片

结果,三个经典算法全部翻车了。

图中检测结果显示:左图“书包”全部被算法识别成了“土豆泥”——InceptionV3(55%),VGGNet16(60%)、ResNet-50(68%),右图“椅子”分别被识别成了“断头台、叉车、旋转栅门”——InceptionV3(74.4%),VGGNet16(9.7%)、ResNet-50(53.6%).

也就是说,算法不仅出现了错误,而且还是依赖背景信息作出的判断(显然,土豆泥与食物更相关,叉车与汽车更相关)。

这个结果引起了网友们的广泛讨论。有网友认为,除了考虑训练任务缺乏广度和精细度之外,没有必要对这种出错进行过多解读,这本身就很难克服。

还有网友认为,这说明模型的思考方式与人类完全不同,人类基于先验经验作出正确判断,但AI要想捕获客观性的“先验”,必须在交互式3D环境中进行算法训练,但事实上,它们大多上数是在2D图像上训练的。

那么算法为什么会出现预测错误,它反映了图像分类模型的哪些固有局限?有什么解决方法?针对这一系列问题,AI科技评论请教了来自清华大学和香港中文大学的两位博士生。他们给出了如下的解答:

1、从示例来看,三种算法的预测结果更偏向于根据背景信息作出预测,而不是目标物体。为什么会出现这种情况?

港中文博士:如果是分类网络的话,其实这并不算错误,因为示例中的 ground truth 本身就不是单标签的。ImageNet数据集以中心主体物体为标签的做法,由于不合理标注过多已导致准确度陷入瓶颈。

在讨论目标物体和背景之前,先要明确为什么书包和椅子是目标,尺寸大或者不被遮挡都不是绝对判断的理由。网络的判别的确会存在空间上的attention,但当“目标”与“背景”特征都显著时,网络关注点并不确定。

清华博士:从示例来看,这三种算法确实由于背景的影响而做出了错误的预测,这反映出目标物体与背景的相对关系会在很大程度上影响深度模型预测。当背景与标签出现强耦合时(例如训练集中叉车总与小汽车同时出现)背景或可成为模型预测的主导因素。

此外,两个示例中目标物体与背景物体的相对大小被人为调整到与实际情况相悖的状态,而由于利用相关性特征进行预测的现有神经网络(如Inception,ResNet,VGG等)并无法显式区分本质特征(与目标物体本身相关的特征)与环境相关特征,所以容易受到这类干扰的影响而做出错误预测。这反映了基于相关性特征的网络容易被环境相关信息所干扰,不足以充分区分及利用目标物体的本质特征。

相比之下,基于本质特征(因果特征)而设计的神经网络可以更好地应对环境及背景信息的干扰。

2、除了背景干扰和相关性特征的局限外,单目标识别以及显著性目标识别等问题是否会是影响因素之一?

清华博士:图像识别问题特别是单目标识别设置确实有一定的局限性,例如当一张图片中同时出现两个或多个显著目标时易导致模型预测失败。但单目标识别具有极大的现实意义,在很多应用场景中我们仅需要识别单一显著目标即可,例如人脸识别或商品识别等等。

另外,这两个失败的示例并不代表单一目标识别问题的局限,因为在图片中书包与椅子都是显著目标,尺寸较大且几乎位于图片的正中心,预测失败是因为模型使用的是相关性特征所以容易受到环境因素的影响。

3、作为视觉技术的基础结构,以上三种主流算法会对目标检测、图像分割、图像检索、OCR等高阶视觉任务带来什么影响?

清华博士:如果用做提取特征的神经网络容易受到环境因素的影响,那么对下游任务如目标检测、图像分割、图像检索等都会造成一定的影响。如目标检测回归的检测框可能对应于“土豆泥”而非“书包”,图像分割可能会将环境的一部分当作目标物体等等。

4、有相关研究表明利用上下文信息可以提高图像识别模型的鲁棒性(论文:“Putting visual object recognition in context)。但在本例中,上下文背景显然也可能作为一种误导因素。在什么样的条件下,模型可以平衡背景与目标之间影响而尽可能达到准确预测?另外,仅仅对图像本身提取上下文是否足够?知识可以作为额外引入的上下文信息吗?

清华博士:利用“上下文关系”的学习实际上就是利用相关性特征学习的一种,很多现有的神经网络都容易学习到图片的“上下文关系“。在训练数据和测试数据满足独立同分布的前提下,利用”上下文关系“进行预测或许可以取得很好的效果,因为在训练集中学习到的这种关系在测试集中依然适用且可以帮助模型进行更好的预测。

而一旦数据不满足独立同分布假设或测试数据分布未知时,利用”上下文关系“的学习(或利用相关性特征的学习)倾向于根据训练集上学到的环境、目标物体与类别标签的关系进行预测(例如叉车常与小汽车同时出现,且叉车在尺寸上大于小汽车),而由于测试数据不再满足这种特定的关系(例如示例中因为观测角度的改变椅子的尺寸大于小汽车),所以模型极易受到环境干扰而做出错误的预测。所以针对图像提取上下文不足够,因为无法保证数据满足独立同分布假设。

知识作为额外引入上下文信息的途径也不充分,因为很多场景中我们无法预知关于测试集分布的知识,当先验知识无法覆盖测试集全部数据时,这种知识的引入就容易造成模型失效。

总的来说,对于确切了解测试数据分布且与训练数据独立同分布的应用场景,模型利用”上下文关系“进行学习或许可以取得较好的效果,而对于更广泛、更普适的深度学习算法而言,区分目标本质特征与环境相关特征并本质特征进行预测应该是一个更加稳定且有效的解决方案。

5、除了上下文背景,还有哪些影响模型识别目标物体的因素?目前的研究趋势和目标是什么?

港中大博士:上下文(前景背景,不同概念共同出现的频率等)、物体形状、物体纹理等都是常见的影响因素,相关网络可解释性的研究已有很多,其中被熟知的包括attention系列和CAM,形状与纹理是近半年来的一个研究热点。总体趋势是,我们希望把这些因素的作用解耦开,可以借助更加精细标注的数据集和更复杂的任务,引入逻辑推理因果推断以及借助其它模态的知识等等,让即使是简单的分类问题也更加鲁棒和可控,而不仅仅是去猜测网络的关注点。

6、刚才您提到基于本质特征(因果特征)而设计的神经网络可以更好地应对环境及背景信息的干扰。您可以介绍一款相关模型吗?

清华博士:清华大学崔鹏教授团队提出了一个基于目标本质特征进行稳定预测的深度学习框架:StableNet,其基本思路是利用随机傅立叶特征(RFF)将深度网络提取的视觉特征映射到高维空间,之后通过干扰变量平衡学习一组样本权重消除RFF空间中特征的线性相关性,从而保证在原空间中本质特征与环境相关特征严格独立,帮助分类器区分与使用本质特征。另外,由于深度模型所需的训练数据量通常较大,所以StableNet采用动态存储、重加载样本特征与样本权重的方法,利用全局先验知识优化每一轮的样本权重。

总的来说,StableNet可以消除环境特征与样本标签间的虚假关联,以实现在不同未知目标环境中的稳定预测。在上述例子中,StableNet主要关注于书包和椅子本身,而非背景或“上下文关系”,从而不受环境因素干扰而做出稳定、准确的预测。

https://arxiv.org/abs/1911.07349

http://arxiv.org/abs/2104.02215

https://arxiv.org/abs/2104.07876

https://www.reddit.com/r/MachineLearning/comments/mtev6w/r_putting_visual_recognition_in_context_link_to/