• 2015 经典的ImageCaptioning论文


    1.Show and Tell: A Neural Image Caption Generator

    Google团队的成果

    整体处理流程:

    1)通过CNN提取到图片的特征,简称feature。

    2)而后将feature输入到LSTM中,生成第一个词S0

    3)而后每个词Si的生成只需要上一个生成的词Si-1的对应的embedding,直到生成最后一个特殊符号

    框架:

    生成词的方法

    Sampling:softmax取最大值

    BeamSearch:每次生成一个单词,保存到目前为止生成的概率最大的K个句子。

    实验

    作者做了实验在每个时刻生成单词时均喂入image,但是效果较差,是因为网络会利用图片中的噪声,而且很容易过拟合

    2.Show, Attend and Tell: Neural Image Caption Generation with Visual Attention

    Bengio团队的成果

    整体处理流程: 

    1)通过CNN提取的特征,得到a={a1,a2.....an},a1表示不同位置的特征,a1一个D维的特征,D可以理解为channel的个数

    2)而后把a和h(t-1)合并,做一个权重化处理,得到z,

    3)把z作为lstm的输入,这样在每个词生成的时候,可以关注图像的不同地方。

     解码器框架

     编码器框架和show and tell的框架一样。

    两种attention方法

    1.Deterministic “Soft” Attention
    对CNN生成的整个feature做权重化处理,就是对每个位置ai,softmax(exp(ai)),因此是可以直接求导的,故而这种方法利用的较多。

    2.Stochastic “Hard” Attention
    随机选择CNN生成的feature的一部分处理,反向传播时需要采用蒙特卡洛方法计算。

  • 相关阅读:
    类特性:多态
    类特性:继承
    类,对象入门
    cf round599 CDE
    cf round#598 CDEF
    高精度小数BigDecimal+二分——java
    点分治
    java——IO(普通文件,二进制文件,压缩文件 )
    JCF——Map
    JCF——set
  • 原文地址:https://www.cnblogs.com/AntonioSu/p/12012223.html
Copyright © 2020-2023  润新知