Sequence to Sequence Models
输入为一个序列,输出为另一个序列
比如语言翻译

根据图片内容生成对其语言描述

机器翻译过程可以看做是一个有条件的语言模型
找到最合适的翻译结果Y 的过程,就是计算在 x 输入情况下得到Y的概率P,使P达到最大值的过程

相关练习
上述过程更适合直接获取到整个句子Y后,对整个句子的适配度进行概率计算,而不是用贪心算法,
依次根据上一个词的内容找到最匹配的下一个词之后,再最终对整个句子进行概率运算,
因为单个词语查找最合适下一个词语的概率,是计算量非常大的,另外词语的高频性可能会影响句子整体的适配性
比如下面句1 比句2 翻译的效果更好
但是句1和句2 在用贪心算法获取过程中更可能得到句2,因为得到相同的前两个词语之后,going 出现的频率大于visiting

贪心算法的缺点是,在获取到当前词语之后,会根据当前词语,获取下一个词语,然后获取下一个词语,直到获取到整个句子.
集束搜索算法
集束搜索算法(beam search algorithm): 在获取当前词语之后,会获取当前词语的概率最大的k个词语,然后获取下一个词语,直到获取到整个句子
相当于同时进行集束宽度(eg. B=3)个贪心算法,然后再每一步的n*3 个结果中寻找概率最大前B 个结果,然后进行下一步.n 是当前词汇库中的词汇数
这样就比贪心算法可能得到更多的可能性



优化
当前的概率计算存在以下问题
- 概率值都是小于1的值,多项相乘时,项数越多,值越小,对于计算来说,能存储的极小值有限,容易出现数据下溢
- 基于问题1,项越多概率越小,导致模型为使概率值最大,尽可能生成短句子,从而天然倾向生成较短的句子,不倾向生成长句子
- 对于长句生成本身不友好

对于集束宽度的选择
实际生产为10个左右,大于100的基本就可以算做太多了
large B 可以得到更好的结果,但是训练时间会变长
small B 会得到差的结果,但是训练时间会变短
虽然集束搜索算法不如深度或者广度优先搜索算法的准确性高,不能保证找到最准确的值,但是计算速度会比二者快
问题分析
通常增加测试数据集或者增加集束搜索宽度,一般都会是效果更好
但判别是RNN过程有错误,还是集束搜索算法搜索过程有错误可以更根本的解决训练异常问题
如果人工翻译结果概率大于算法得出的句子的概率,即集束算法没有找到使概率最大的正确的句子,问题出在解码查找过程
相反,在本身人工翻译结果好于算法结果的情况下,如果人工翻译结果概率还是小于算法得出的句子的概率,说明RNN过程有错误

bleu 算法
类似图像识别可以用对错一个确定的数值判断推测结果,这里用bleu 算法得到的指数来评估翻译结果好坏
用来计算评估机器翻译结果的指数,从而评估翻译好坏
翻译越接近人类翻译,指数分数越高
具备双语评估,且具有人类评估结果替补性


短翻译容易获得高精度的评判结果,为了降低这种误差,引入BP 惩罚参数进行更精准效果计算
注意力机制
之前涉及的机器翻译是使用两个rnn 结构,先编码后解码(编码后将信息存在激活函数中),一次性读取整个句子会之后再整体翻译
这样对于特别长的句子来说不太现实,即需要处理的入参特别长,随着句子长度增加,bleu 指数会有明显下降
且不符合人类翻译习惯,人类翻译更倾向于,读一段翻译一段,这样只关注一整段文字里面的一小段句子
注意力机制在编码阶段会生成一系列输入单词的特征信息(单词本身和它周围词的特征),
在生成翻译结果时,根据输入句子中每个单词对该翻译结果单词的影响权重(注意力权重)和已经翻译出的单词两个信息共同计算出当前单词的翻译结果
具体计算过程

更多应用,日期格式转换

应用
语音识别,输入变成每一帧的语音音频, 1秒有1000帧的话,输入就会是1000个数据,相当于上面1000个单词

触发词识别
transformer
对于循环神经网络来说,rnn, Lstm 处理连续输入信息会要求神经网络越来越复杂
将注意力机制中RNN 过程用CNN 卷积 同时处理多个单词的过程就是transformer 架构
transformer 架构的模型两个关键点
- 自注意力机制 — 带着句子上下文情况下特征计算
- 多头注意机制 — 自注意力机制循环过程,产生多种可能性

自注意力机制
计算输入单词的注意力值


多头注意力机制
在自注意力机制基础上,同时并计算其他多个问题的注意力值
通过并行同时获取多个单词之间的不同维度的含义关系
transform 网络

有时候使用mask multi-head attention 进行训练
在有准确输入输出情况下,
在解码阶段,将输入值从正确输出结果里一次掩盖后几个单词,假设还没有推理出来,仅推理出了前几个单词
查看能否正确预测出序列中的下一个单词








































































































































)

























































