LearningSequences: image caption with region-based attention and scene factorization

来源:互联网 发布:2017年建筑业发展数据 编辑:程序博客网 时间:2024/06/03 14:59

这是清华张长水老师实验室的一篇文章,关于image caption

小编自己感觉,本文主要的工作就是在于:让视觉转移信息引导单词序列,加入场景信息保证句子的丰富性。

具体流程:首先将图像做分割,分成尺度不同的patch,然后从中挑选出好的patch作为备选,然后将每个patch送入CNN中,学习得到patch的特征,将特征送入LSTM。此时再将场景信息加入,共同生成一个句子。接下来,我们将一步一步的分析流程。

1)分割。 者利用一个selective search技术,现根据颜色和纹理进行分割,然后通过融合邻域信息进行分层分割,最后选择好的区域留下。选择时有三个原则:语义信息要比较强、区域要比较原始、上下文信息要比较丰富。于是可以训练一个分类器来学习区域的好坏,并对其进行分类,选出最好的30个,将其resize为224*224,放进一个16层的VGG-Net去得到图像特征。

2)ht是叫做“abstract  meaning”,掌握着概念的转移。当在生成单词序列的时候,它以单词的标准编码。当在生成视觉信息时,会以视觉信息的标准编码。

wt是生成的单词,vt是输入的视觉元素。首先计算一下下一个视觉的Focus元素:


从公式中可以看出是先根据前一个时刻t-1的单词wt-1,前一时刻的状态ht-1和前一时刻的视觉元素vt-1来计算当前时刻t focus在ri(是指第i个patch的特征)区域上的概率pit,然后加权求和得到vt。得到vt后,再根据下面的公式求出w


3)加入场景信息。比如同样是人牵着小狗走,若走在湖边上,则标题为人牵着小狗在锻炼;若在宠物店,则可能标题变为主人在宠物店为小狗美容,所以场景信息非常重要。

第一步先对场景库里的场景进行无监督聚类,然后利用LDA(潜在的狄利克雷分布)对输入场景归类。得到场景信息S,对其进行矩阵分解:

将得到的W矩阵加入到ht-1中,然后一起输入LSTM,最后就得到了一个语义信息比较多结构又简单的图像描述。

0 0
原创粉丝点击