当我们人类在看东西时,一般会将注意力集中注视着某个地方,而不会关注全部所有信息。例如当我们一看到下面这张猫的图片时,主要会将目光停留在猫的脸部,以及留意猫的躯干,而后面的草地则会被当成背景忽略掉,也就是说我们在每一处空间位置上的注意力分布是不一样的。
通过这种方式,人类在需要重点关注的目标区域,会投入更多的注意力资源,以获取更多的细节信息,而抑制其它区域信息,这样使人类能够利用有限的注意力资源从大量信息中快速获取到高价值的信息,极大地提升了大脑处理信息的效率。
那么人类的这种“注意力机制”是否可用在AI中呢?
我们来看一下,图片描述(Image Caption)中引入了“注意力机制”后的效果。“图片描述”是深度学习的一个典型应用,即输入一张图片,AI系统根据图片上的内容输出一句描述文字出来。下面看一下“图片描述”的效果,左边是输入原图,下边的句子是AI系统自动生成的描述文字,右边是当AI系统生成划横线单词的时候,对应图片中聚焦的位置区域,如下图:
可以看到,当输出frisbee(飞碟)、dog(狗)等单词时,AI系统会将注意力更多地分配给图片中飞碟、狗的对应位置,以获得更加准确地输出,是不是很神奇呢,这又是如何实现的呢?
1、什么是“注意力机制”
深度学习中的注意力机制(Attention Mechanism)和人类视觉的注意力机制类似,就是在众多信息中把注意力集中放在重要的点上,选出关键信息,而忽略其他不重要的信息。
2、Encoder-Decoder框架(编码-解码框架)
目前大多数的注意力模型附着在Encoder-Decoder框架下,所以我们先来了解下这个框架。Encoder-Decoder框架可以看作是一种文本处理领域的研究模式,该框架的抽象表示如下图:
给