深度学习模型参数计算:深度学习之Attention模型详解
深度学习模型参数计算:深度学习之Attention模型详解问题如何生成 在本文中,将视为隐变量,为参数是的多元伯努利分布(伯努利是两点分布)帮助我们在t时刻选出了第i个向量是我们最后选中的的向量,引入一个变量 当区域i被选中时取值为1,否则为0.则有:f实际上是对齐函数,用于计算对齐的分数,常见的对齐函数有:dot product,general,multilayer perceptron。1,Soft attention:直接使用attention的权重对L个向量加权相加,这么做的好处是整个问题是可微的,可以利用BP end to end。2,Hard attention:Hard attention很粗暴,挑出最大权重的向量,剔除其余向量(置0)。显然这种形式的模型是不可微的,为了实现BP,这里采用蒙特卡洛采样的方法来估计模块的梯度。
这里编码器是VGG,解码器是LSTM。LTSM输入是不同时刻的图片的关注点信息,然后生成当前时刻的单词。
Attention的计算
如上所属,attention的值不仅与annotation vector 有关,还与上一时刻解码器的隐状态有关。因此有:
其中t表示时刻t,i表示第i个区域,a是我们得到的attention weight分布。
f实际上是对齐函数,用于计算对齐的分数,常见的对齐函数有:dot product,general,multilayer perceptron。
1,Soft attention:直接使用attention的权重对L个向量加权相加,这么做的好处是整个问题是可微的,可以利用BP end to end。
2,Hard attention:Hard attention很粗暴,挑出最大权重的向量,剔除其余向量(置0)。显然这种形式的模型是不可微的,为了实现BP,这里采用蒙特卡洛采样的方法来估计模块的梯度。
帮助我们在t时刻选出了第i个向量是我们最后选中的的向量,引入一个变量 当区域i被选中时取值为1,否则为0.则有:
问题如何生成 在本文中,将视为隐变量,为参数是的多元伯努利分布(伯努利是两点分布)
$$P(s_{t i}=1|s_{t<j} a)=\alpha_{t i} $$=""
这个可以认为是我们的带隐变量的目标函数。
对目标函数求梯度: