ITPub博客

首页 > 数据库 > 数据库开发技术 > 注意力机制三:多标签分类之CNN-RNN浅析

注意力机制三:多标签分类之CNN-RNN浅析

原创 数据库开发技术 作者:Agent的潜意识 时间:2018-06-01 23:14:41 0 删除 编辑

这一次,我们分享又一篇注意力机制的经典论文。

 

论文名字:

CNN-RNN: A Unified Framework for Multi-label Image Classification

下载地址:

https://arxiv.org/abs/1604.04573


文章的切入点:多标签分类可以这样来做,比如说一张图片里有香车和美女,我做一个单标签分类的网络1,专门识别香车;然后做另一个单标签分类网络2,专门识别美女。这样做有一个问题,如果是人物摄像师,专拍美女大白腿,美女身后的车在整张图片中被虚化得很小,这个时候在美女大白腿里找隐藏的小车,车这个类别对整个图片的响应是很低的,因而分类的精度会很差,因为你没有告诉机器应该关注哪里,机器关注整张图片,他得到的相应就是一个美女。你可以做一个测试,一个单分类网络,就分两个类别,美女和香车。100张训练图片,每张图片只有一个类别,当然图片中也只有一个东西,非香车就是美女。然后测试图片就是美女占满整个屏幕,香车只是一小撮的,你会发现,这张图片softmax得到的概率中车的概率不超过0.1。如果你的训练集里面,有图片既有香车又有美女,你给他的标签呢,是看图片中的主体图像是什么就给什么的,那么学出来的网络就有可能直接忽略了车这个类别;如果你给的标签是两个都给,相当于一张图片既有车的标签,又有美女的标签,那么,网络很有可能不收敛。

想来想去,要做一个分类还有那么多事。看来多标签分类还是很有用的。


CNN-RNN的注意力机制:CNN提取图片的特征后,RNN首先找到一个注意点,输出一个标签,随后,在特征和这个标签的基础下再找下一个注意力点,输出下一个标签。整篇文章就是做这件事情。这有一个什么好处呢?就是一张图片输出完美女后,美女的这一个区域就过滤掉了,然后在过滤之后的区域再找下一个注意力点。但是,RNN会学习一些关联点,学习的时候香车跟美女在一起出现的多,那么测试的时候,如果识别到了美女,那么再过滤后的区域中再预测出香车的概率就大。




形象化说明的图在这里:初始注意力在整张图上,然后找到大的点是大象,输出完大象这个标签后,大象在图上的相应就抹去了。剩下的就是斑马的响应点了。

 

网络架构图:


疑难点解析:

Image embedding:就是图片的特征向量。比如说你最后一层的卷积层为128,那就是128个embedding。

Label embedding:跟Image embedding类似的。详情可以看这篇文章:

https://www.researchgate.net/publication/274319657_Label-Embedding_for_Image_Classification。

流程梳理:

CNN提特征,RNN获取之前已经预测出来的标签信息,两个结合在一起,输出下一个标签。

 

文章的基本点都讲完了。还有一个边边角角的东西是预测标签的路径先后问题的搜索。文章中也有很好的处理。详细自己去看吧。


原文作者:Agent的潜意识;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2017-03-21

  • 博文量
    187
  • 访问量
    82256