01
什么是Attention
面对食物时,我们会先辨认食物的颜色、形状,还会闻闻它的气味,再用嘴巴尝一尝,确认它是一盘红烧肉。红烧肉一直摆在那,在认出红烧肉的过程中,每个阶段我们关注的内容不同,在自然语言处理的语句翻译中,也是如此。
例如,我爱吃苹果,写出每个英文单词的时,我们会格外注意其中部分的字母。我们希望机器也能学会这种处理信息的方式,于是注意力机制,Attention就出来了。
02
Attention的三个部分
简单来说,Atention是一种简化的方法,它可以从复杂的信息中找出对当前输出最重要的部分。一个典型的Attention包括三个部分---Q\K\V;Q是query,输入的信息,Key和value成组出现,通常为源语言、原始文本等已有的信息,通过计算Q与K之间的相关性,得出不同的key对输出的重要程度,在和对应的v相乘求和,就得到了Q的输出。
以阅读理解为例,Q是问题,K和v是原始文本,计算与k的相关性,让我们找到文本中最需要注意的部分,利用v得到了答案。
03
Attention进化形式
Attention有许多进化形式,例如self--attention,自注意力机制,它只关注输入序列元素之间的关系,通过将输入序列,直接转化为Q\K\V,再内部进行Attention计算,就能很好的捕捉文本的内在联系,对其做出再表示。
另一种进化形式就是Multi-Head Attention,多头注意力机制,是在自注意力的基础上,使用多种变换,生成Q、k、v进行计算,再将它们对相关性的结论综合起来,进一步增强self--attention的效果,借助transformer、bert等形式,attention在自然语言处理领域大放异彩。
事实上,Attention最开始诞生于机器视觉领域,无论是图片分类、图片描述还是视频描述,它都能在输出结论时指出它所注意到的图像,可解释性好。
欢迎加博主微信(13142159848)与博主一起来探讨人工智能!!!