深度学习中的Transformer神经网络
Transformer神经网络是一种深度学习架构,它可以很好地处理长距离依赖关系,这最早在 Vaswani 等人在 2017 年发表的论文“你只需要注意力”中进行了描述。
Transformer网络的自注意力机制使其能够识别输入序列的相关部分。
什么是循环神经网络?
循环神经网络是一种具有记忆或反馈回路的人工神经网络。它们旨在处理和分类顺序数据,其中数据点的顺序很重要。
该网络的工作原理是将输入数据馈送到隐藏层,使网络能够在一段时间内保留来自先前输入的信息。
TNN 是否是为了解决 RNN 训练问题而引入的?
是的,Transformer神经网络是为了解决循环神经网络的训练问题而引入的。
具体来说,循环神经网络存在训练时间慢、梯度消失以及难以捕获长距离依赖关系等问题。
Transformer神经网络通过其基于注意力的机制和可并行化的设计解决了这些问题,从而实现了更快的训练和更好的结果。
Transformer神经网络的工作原理
TNN 包含两个部分——编码器和解码器。编码器一次读取一个标记的输入序列,并将每个标记转换为向量表示。
然后,解码器读取向量表示并生成输出序列。
为了使解码器生成正确的输出序列,它使用一组注意力层来连接编码器和解码器。
Transformer网络的关键创新是自注意力机制。通过这种机制,模型可以同时关注输入序列中的所有位置,并根据其重要性为每个位置分配权重。
解码器和编码器分别使用自注意力机制来调节输入和输出序列。
自注意力机制在整个输入序列中计算查询、键和值。
然后根据查询、键和值计算注意力权重。通过对权重求和,我们得到一个加权和。
最后,根据它们的注意力权重,确定当前位置的重要性。
让我们以流媒体平台(如 Netflix 和 Spotify)使用的推荐引擎为例,更好地理解上图。
这些平台使用您的观看和收听历史记录以及您的搜索和评分数据来识别您偏好的模式。
相应地,它们会推荐您可能喜欢观看或收听的电影和歌曲。
现在让我们看看上面的例子是如何相关的,推荐引擎将您的偏好(查询)与电影、电视剧或歌曲(键)的数据库进行匹配,这些数据库与各种特征(如类型、语言、演员或艺术家(值))相关联,以找到最适合您的推荐。
此外,Transformer网络使用称为位置编码的技术来保留输入序列的顺序。
位置嵌入通过为每个嵌入添加一个固定向量来编码标记在序列中的位置。
编码器和解码器由多层自注意力和前馈神经网络组成。编码器和解码器中的每一层都通过残差连接和层归一化连接到下一层。
结论
Transformer神经网络是一种强大的深度学习架构,它改变了自然语言处理和处理顺序数据的现状。它被引入是为了解决 RNN 模型的训练问题,并且凭借其自注意力机制,TNN 成功地解决了 RNN 的问题。
总的来说,TNN 具有广泛的应用,例如机器翻译、语音识别、文本摘要、文本分类等等。