OpnAI推出深度神经网络模型 拥有自我注意力机制

OpnAI近日开发了一套深度神经网络模型Sparse Transformer,透过改良过的注意力(attention)机制算法,来萃取出更多序列中的模式,进而预测出序列中下一段文字、图像或是语音,OpenAI指出,在AI研究领域现存的一项挑战就是,训练并预测长范围、不易察觉相互关系的复杂数据,像是图像、影片或是语音等数据,Sparse Transformer模型加入了自我注意力机制,再加上一些改良,试着解决这项挑战。算法

过去,用于预测这些数据的模型,都会特定为一个领域所设计,或是模型也很难扩展到多个不一样的序列上,相反地,OpenAI此次开发的深度神经网络模型,能够利用好几百层神经网络,为数万个数据元素创建序列,用于跨多个领域的应用中,OpenAI将用这套模型,来协助打造出更了解世界的AI系统。网络

在Transformer模型中,每一个输出元素都与输入元素都息息相关,且在每一个输入和输出数据之间的权重,都是动态改变的,权重会依据各类状况来计算,这个过程称之为注意力(attention)机制,虽然这项机制被认为可以使Transformer比固定链接模式的模型,更加有弹性,可是实行上来讲,每一层网络都要生成N x N的注意力矩阵,所以,用于数据类型含有多个元素的数据时,会须要耗费庞大的内存计算资源,像是影像或是原始语音文件。架构

其中一项下降内存资源的方式,就是在反向传播算法(backpropagation)中,从checkpoints从新计算注意力矩阵,反向传播算法是在深度学习中,被普遍应用于下降内存用量的sbf胜博技术,该技术用于Transformer注意力矩阵运算后,内存成本和层数就会无关,所以,相比以往,OpenAI如今可以训练更深的神经网络,在OpenAI的实验中,Transformer最多可以到128层,为了训练这些越深的模型,OpenAI还针对Transformer模型的操做顺序,以及scheme初始化作了一些调整,OpenAI也将详细的研究内容发表成论文。学习

可是,即便只计算单一个注意力矩阵,也会由于庞大的输入数据变得不切实际,所以,OpenAI改用稀疏(sparse)注意力模式,也就是只针对每一个输出位置,从输入位置的子集合中计算权重,当子集合比整个输入集相对小时,就算是很是大的序列,注意力计算结果也会变得较容易处理。spa

为了实现该方法,OpenAI首先将用于预测影像的Transformer模型中的学习注意力模式可视化,找出许多可解释和结构化的稀疏模式,当输入部分聚焦于小的子集上,且出现高度的规则性时,该层就属于易稀疏化,不过,虽然有许多层都显现出稀疏的架构,有些层在整张图上仍是会清楚地出现动态的注意力,为了保留模型学习这类型模式的能力,OpenAI对注意力矩阵进行二维分解,所以,模型就能够透过稀疏注意力,来检视图像中的全部位置。设计