基于递归注意力模型的卷积神经网络:让精细化物体分类成为现实

2017-07-27 | 作者:傅建龙

​​如今,计算机视觉领域常见物体的图像识别和图像分类对大家来说已不再陌生,但提及精细化物体分类,或许不少人还不太了解。我们先放点图来一起感受一下精细化物体分类的“威力”~

大家先看看这两张图是同一种鸟吗?

先别急说答案,看了下面两张局部高清图再做决定。

类似的例子还有很多,它们看起来整体外观十分相似,但细节特征反映了它们的差别。

就在前几日,最后一届ImageNet 榜单刚刚公布,最新的模型在图像分类任务上已经达到了top-5 结果预测错误率2.3%的水平。然而尽管分类精度如此之高,但由于类别不够精细化(注:ImageNet竞赛包含常见的1000个物体类别),使得这些模型在实际应用中往往无法满足用户的实际需求。

在日常生活中,我们可以很容易地识别出常见物体的类别(比如:计算机、手机、水杯等),但如果进一步去判断更为精细化的物体分类名称,比如去公园游览所见的各种花卉、树木,在湖中划船时遇到的各种鸟类,恐怕是专家也很难做到无所不晓。不过,也可见精细化物体分类所存在的巨大需求和潜在市场。

虽然精细化物体分类拥有广阔的应用前景,但同时也面临着艰巨的挑战。如下图所示,每一行的三种动物都属于不同种类,但其视觉差异却非常微小。要分辨他们,对于普通人来说绝非易事。

通过观察我们不难发现,对于精细化物体分类问题,其实形态、轮廓特征显得不那么重要,而细节纹理特征则起到了主导作用。目前,精细化分类的方法主要有以下两类:

基于图像重要区域定位的方法。该方法集中探讨如何利用弱监督的信息自动找到图像中有判别力的区域,从而达到精细化分类的目的。

基于图像精细化特征表达的方法。该方法提出使用高维度的图像特征(如:bilinear vector)对图像信息进行高阶编码,以达到准确分类的目的。

然而,这两种方法都有其各自的局限性。最近,微软亚洲研究院多媒体搜索与挖掘组的研究员们通过大量的实验观察以及与相关领域专家的讨论,创造性地提出了“将判别力区域的定位和精细化特征的学习联合进行优化”的构想,从而让两者在学习的过程中相互强化,也由此诞生了“Recurrent Attention Convolutional Neural Network”(RA-CNN,基于递归注意力模型的卷积神经网络)网络结构。这种网络可以更精准地找到图像中有判别力的子区域,然后采用高分辨率、精细化特征描述这些区域,进而大大提高精细化物体分类的精度。该项工作已经被CVPR 2017(计算机视觉与模式识别)大会接收,并应邀做了报告分享。

从开篇的几张局部高清图中,我们已经可以感受到有判别力的区域对精细化物体分类的巨大帮助。

其实,这样的情况在精细化物体分类问题中非常普遍。看似相似的两张图片,当我们把有判别力的区域放大后却发现大相径庭。而“RA-CNN”网络则有效地利用了这一特点,通过将不同尺度图像的重要区域特征融合,以确保重要信息充分发挥作用:有用的信息不丢失,同时噪声得到抑制。

只需输入一张图片,“RA-CNN”便可自动找到不同尺度下的有判别力区域:上图中蓝色部分是分类子网络,它们将多个尺度的图片用相应的卷积层提取出特征后送入softmax 分类器,再以类别标签作为监督对卷积层和分类器参数进行优化,当最终分类时,将各个尺度的特征拼接起来,用全连接层将信息充分融合后进行分类。

上图中的红色部分则是定位子网络,其输入是一张图片的卷积层特征,而输出的是这张图片有判别力区域的中心坐标值和边长。定位子网络以层间的排序损失函数作为监督,优化下一尺度的图片子区域在正确类别上的预测概率大于本尺度的预测概率,这样可以促使网络自动找到最有判别力的区域。有了重要区域的坐标,再对原图进行裁剪和放大操作便可得到下一尺度的输入图片,而为了使网络可以进行端到端的训练,研究员们设计了一种对裁剪操作进行近似的可导函数来实现。以下是“RA-CNN”在三个公开数据集上找到的有判别力区域的例子及对应的分类精度:

看到这里或许你对“RA-CNN”精细化物体分类问题的解决原理及其效果有了一定的了解。若想了解更多技术细节,请点击查看该CVPR 2017论文~ 同时你也可以下载微软亚洲研究院推出的智能识别应用——微软识花,亲自体验精细化物体分类技术的独特魅力哦~

扫描二维码下载“微软识花”一键体验扫描二维码下载“微软识花”一键体验