在分配了不同的权重之后,-框架中间的予以编码C换成根据当前翻译单词基于注意力模型来调整得到的变化的Ci变量[7] 。
公式中,针对不同的待翻译元素,Ci取到不同的值,同时,语义编码的过程中还要考虑到其他元素对于翻译产生的影响 。在不同权重比的影响下,机器对单词的翻译的准确度得到提高,短句对齐效果更好 。
基于上面对于-框架的解释,我们下面介绍机制的本质思想 。我们可以将源语言中的词汇想象成是由一系列键值对 Value>构成,譬如在英语中,dance这样的实义动词和yeah这样的语气词会具有不同的Value,然后我们给定目标语言中某个元素Query,然后进行如下三步操作 。
第一步是要先计算Q和K的相似程度,公式如下:
第二步是将得到的相似度进行操作,实现归一化 。
最后一步是需要将得到的归一化权重,同键值对中的Value计算加权和,得到我们需要的向量 。
由向量的计算过程,我们可以体会到注意力机制的核心思想,即将有限的注意力放到少量重要信息上,忽略大部分不重要的信息,而重要性的判断则是依靠Value值,Value值越大代表其带给我们的信息越重要 。
这种类型称之为Soft [6],软性注意力机制的关注相对发散,实际应用中将元素归一化为0~1之间的元素 。与之相对性的Hard
在实际应用中只输出一个0或1二元变量 。
举一个简单的NLP例子,我们将一句“我爱中国 。”,翻译的结果应该是“I love
China.”如果采用硬性注意力机制,翻译“我”,归一化结果为[1,0,…],即在当前时刻,模型只关注于当前单词的翻译,而完全忽略其他单词 。按照语言的一般化规律,我们无法对这样的强模型进行优化 。
而使用Soft,便不会忽略其他元素对翻译的影响,在翻译“我”的时候,归一化得到的权重可能为[0.6,0,1,0.3],当前时刻,对“我”的翻译,它便占了大权重,而下一时刻模型翻译“爱”时,权重可能更新为[0.2,0.7,0.1],这样的一个变化,使得我们在关注到当前翻译元素的同时,也不会完全忽略其他词带来的信息影响 。
【【NLP】注意力机制在神经网络中的应用】3. 算法的应用领域和效果
注意力机制的应用主要是NLP自然语言处理和CV计算机视觉两个领域 。
3.1 注意力机制在NLP领域的应用
机制在NLP领域的典型代表是在《byto Align and 》[1]论文中,这篇论文是第一次在NLP领域使用机制 。
论文中以NLP中机器翻译来举例子,图4中是经典的神经网络机器翻译-模型[5] 。
传统的NMT模型使用两个RNN神经网络,第一个RNN模型对源语言进行编码,将源语言编码到一个固定的维度的中间向量,然后使用另一个RNN模型进行解码翻译,翻译成目标语言 。而图5中添加了机制的NMT模型,它把源语言端的每个词的表达都学到,然后和预测翻译的词建立联系,这种联系的可靠性就是依靠机制提供保证,训练完毕后,根据得到的矩阵,我们就可以实现源语言和目标语言的对齐 。
《to -based》[2]中,类型的同上一篇论文中的机器翻译模型思路相差不多,都是对源语言所有词进行处理,只不过在这篇论文中,作者提出了几种计算矩阵的简单扩展版本 。
在NLP领域具有重要意义的是作者在这篇论文中提到的local类型的模型,这个类型的主要思路是为减少计算耗费,在计算矩阵时,并不是考虑到源语言端的所有元素,而是根据一个预测函数,确定一个大致的范围,论文中提出local-m和local-p两种方式 。
这篇论文启示了大家如何在自然语言处理领域应用机制,如何进行相对应的扩展,还有就是引入了局部方法 。
- NLP:预训练+转移学习
- nlp是什么 nlp是什么意思
- 机械师是什么电影
- 南昌滕王阁简介
- 小狗吃油渣会死掉吗
- 博弈论+DP 洛谷2599 【ZJOI2009】取石子游戏
- 2 【原创】k8s源码分析-----kubectlFactory
- how you like thatmp3百度网盘(how you like th
- 【VOLTE案例分析】Server Internal Error 500导致的未
- 平野美由纪 平野美由纪韩剧