基于Visual attention的图片主题生成
来源:互联网 发布:网页自动生成软件 编辑:程序博客网 时间:2024/04/28 05:15
引言
Attention model 在序列end to end问题上广泛应用,结合RNN、LSTM、GRU等常用递归神经网络可以取得很好的效果;在计算机视觉领域也有非常广泛的利用,因为序列因素的存在,所以通常在图文转换或者视频描述等应用中出现。
Visual attention model的意义
- 在引入Attention(注意力)之前,图像识别或语言翻译都是直接把完整的图像或语句直接塞到一个输入,然后给出输出。
- 而且图像还经常缩放成固定大小,引起信息丢失。
- 而人在看东西的时候,目光沿感兴趣的地方移动,甚至仔细盯着部分细节看,然后再得到结论。
- Attention就是在网络中加入关注区域的移动、缩放、旋转机制,连续部分信息的序列化输入。
- 关注区域的移动、缩放、旋转采用强化学习来实现。
Recurrent model of visual attention
Recurrent Models of Visual Attention
基于Attention的图片主题生成
参考Show, Attend and Tell: Neural Image Caption Generation with Visual Attention(2015)
模型
之前Encoder过程中的输入是一个个词向量,而在visual attention model中便是通过CNN抽取的各个图像特征之后展平的一维特征向量,如下图所示:
Encoder
特征图均匀切割成若干个区域,表示为
L表示特征数,D表示特征的维数,在论文中为
输出的主题
其中K是字典的单词个数,C输出的句子长度。
Decoder
论文中利用LSTM来进行解码,LSTM的结构如下图所示
计算公式为
其中
其中i表示第i个区域,共有L个,t为第t时刻。
LSTM网络的初始状态利用表达向量的均值分别输入到两个分开的多层网络(init.c和init.h)得到
Stochastic “Hard” Attention
定义一个以边际似然函数
以上部分看起来很巧妙,其实求解思路来源于著名的EM算法,推导过程中利用的不等式是也是著名的Jensen不等式
对其进行求导可得
整个以上的变化的目的就是为了使得偏导可以通过Monte Carlo方法采样实现计算,可以尝试,如果直接用之前的目标函数是无法计算偏导的:
仿造Weaver&Tao(2001),采用滑动平均(moving average)来减小方差,第k个mini-batch的时候
为了进一步减小方差,加入多项式分布的熵
Deterministic “Soft” Attention
hard模式是每次选择一个区域,soft模式直接利用加权信息得到
以上模型都是平滑和可微的,所以可以用标准的BP算法来进行端到端的学习。在计算
这个正则化的加入,可以使得生成的主题更加,结果更好。另外再计算
最终,端到端的目标函数可以写为
hard模式和soft模式的结果如下图所示,上一排为soft模式,下一排为hard模式:
可以软注意力模型相对来说更加平滑一点
- 基于Visual attention的图片主题生成
- Visual Attention
- visual attention
- 基于attention的video描述
- Recurrent visual attention
- Tensorflow 自动文摘: 基于Seq2Seq+Attention模型的Textsum模型
- Tensorflow 自动文摘: 基于Seq2Seq+Attention模型的Textsum模型
- Tensorflow 自动文摘: 基于Seq2Seq+Attention模型的Textsum模型
- 更改Visual Studio 2010的主题设置
- 更改Visual Studio 2010的主题设置
- 更改Visual Studio 2010的主题设置
- 更改Visual Studio 2010的主题设置
- 更改Visual Studio 的主题设置
- 基于HTML5的Drag and Drop生成图片Base64信息
- 基于google zxing二维码的生成,直接返回页面图片
- 基于GAN的mnist训练集图片生成神经网络实现
- 基于对偶学习的跨领域图片描述生成
- 【翻译】Itti的论文1998 A Model of Saliency-Based Visual Attention
- An Experimental Study on Speech Enhancement Based on Deep Neural Networks学习摘要
- Windows下PhpEd将php升级到最新版本5.6.27,并支持Redis步骤
- 231. Power of Two
- 解决Activity嵌套碎片在fragment中操作Activity控制无效问题
- python5(字符串)
- 基于Visual attention的图片主题生成
- HDU 5961 传递(竞赛图+判断有环)
- wwWFrank2的Android学习之路adb环境变量配置(Mac)
- 两种排序方法(插入排序和选择排序)
- 子网划分的两个例子
- 在调试MFC程序中查看变量的方法(包含控制台)
- Test and study the pose optimisation module
- 短文本分类工具 TextGrocery
- CUDA程序配置备忘