首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

序列模型Sequence Model(7)

3.7 Attention model intuition 注意力模型直观理解

在之前的机器翻译模型中,将整个句子输入进encoder network中进行记忆,再统一输出。在句子过长的时候,表现会逐渐下降。

对于人类而言,都是先翻译一部分,再翻译一部分,而不是将整个一句话记忆下来再统一翻译的。

注意力模型就更类似于人类的翻译方法,可以让Bleu score在长句子时,也不会下降。

当你决定第一个输出的时候,哪一部分法语句子需要考虑进去。alpha表示了注意力大小。

α表示决定第一个输出时,第一个输入单词的注意力大小;

α表示决定第一个输出时,第二个输入单词的注意力大小。

α表示决定第三个输出时,第t个输入单词的注意力大小。它依赖于双向传播RNN在时间t的激活函数,正向和反向都要考虑;还依赖于前一个时间点的状态S2。

3.8 Attention model 注意力模型

a

然后单向传播RNN进行翻译后的输出。

对注意力权重α

context vector内容向量c则是注意力权重和激活函数相乘后求和。

α

使用softmax使得α

计算数值e,使用一个小型的神经网络,s是前一个时间点的隐藏状态。使用反向传播和梯度下降来学习这个function。

注意力参数的个数为Tx乘Ty。

在image captioning中,也会用到类似的结构。看一张图,当你输出一个caption时只关注图片的某些部分。

可视化注意力权重,可以看出这个词和哪个词最相关。

3.9 Speech recognition 语音识别

对于音频数据要进行预处理,将raw audio clip转成spectrogram。x轴是时间,y轴是频率,不同颜色的强度展示了能量的大小。

phonemes,hand-engineered basic units of cells。这些手工标注的特征,在深度学习中不再需要了。

在语音识别中,输入的时间点非常多,远大于输出的时间点。

比如有一个10秒的音频,100Hz,因此每秒都由100个sample,最后构成1000个输入。

但是输入可能不会有1000个字母。

CTC的损失函数让RNN生成这样的输出,ttt_h_eee___ ___qqq__

它的基本规则是通过blank,来collapse分解重复的字符。最后可将这个序列分解成t,h,e,space,q。

通过blank我们可以将19个字符的句子,用1000个输出来表示。

3.10 Trigger word detection 触发字检测

通过关键词唤醒设备。

假设蓝色竖线的位置是正好某人说完关键词的位置。

将音频数据输入RNN,观察输出的target。

训练集中,在说关键词的时候输出都设为0,在关键词结束的时候输出变为1。

但是这样0会远远多于1的个数,因此我们可以在1后面多增加几个1。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180228G02TFN00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券