变换器在神经网络中是如何被使用的?
变换器是一种神经网络(NN)架构或模型,通过权衡输入序列不同部分的重要性,在处理顺序数据方面表现出色。这使得它们能够比以往架构更有效地捕捉长距离依赖关系和上下文,从而在自然语言处理(NLP)任务(如翻译和计算机视觉系统)中实现更优的性能。
自注意是变换器与以往神经网络架构之间的区别。这是一种计算“注意力评分”的方法,用以识别词语之间的关系,比如句子中的单词或图像中的像素,即使它们之间并不直接相邻。它使每个词能够“关注”其他所有词,从而识别和理解相互关系。
考虑句子:“狗挖了一个洞直到足够深,然后他拿出自己的骨头埋了。”单词“it”根据句子中的位置有两种含义。第一种情况下,“it”指的是洞,第二种指的是骨头。变压器模型可以高效捕捉这些上下文中的细微差别。
该技术被称为变换器 NN,因为它使用带有矩阵乘法的变换层将输入序列转换为输出序列。它通过变换学习数据集中的关系,产生更有意义的表示。
实施自我关注
自注意力的进步在于能够混合来自非直接相邻像素或单词的信息,识别更远距离的关系和依赖关系。例如,3×3卷积神经网络(CNN)将九个数据点或标记的信息直接围绕中心数据点混合。这限制了识别更远距离关系的能力。
变换器神经网络中的自注意机制基于学习到的属性分析标记,而不仅仅是基于位置。这使得变换器神经网络能够学习和使用更复杂的关系(见图1)。
图1。CNN学习(左)与变换器学习(右)比较。(图片来源:半导体工程)
变压器神经网络是如何学习的?
变换器神经网络中的学习有时被称为关系学习,因为它通过“查询”、“键”和“值”向量来学习令牌之间的关系,这些向量增强了令牌的位置编码。
一个标记的查询向量用于确定其与其他所有标记键向量的对齐情况。查询向量本质上是令牌向序列其余部分提出的“问题”,使模型能够动态识别并整合其他令牌的相关上下文信息。
密钥向量作为标记,用于比较标记以确定相互关系。例如,在句子“The dog buried a bone, she was very happy”中,“dog”的关键向量会与“she”的查询向量进行比较。高度相似度会导致高注意力评分,确保“dog”的值向量影响“she”的处理,从而确定代词的指称。
正在处理信息的价值向量被组合起来,形成序列中每个代币更具上下文的表示。与顺序模型不同,变换器NN的结构本质上支持并行处理整个序列,因为所有标记的注意力分数可以同时计算。这不仅加快了训练速度,也能加快推断速度。
图2中的查询、键和值向量Q、K和V通过使用W、K和V权重矩阵乘以初始符号嵌入矩阵X生成。该前馈神经网络中的权重矩阵是通过自监督的预训练学习的。Q、K和V向量合起来称为注意力层。

图2。变压器注意力机制的基本结构。(图片来源:IBM)
多磁头比一个更好
多头注意力结构使用不同的查询、键和值向量来聚焦数据集的不同方面。每个头脑独立执行注意力过程。例如,一个头脑可能专注于语义关系,另一个头脑则专注于句法。
各个注意力头的输出被串接在一起,合并后的输出通过线性变换得到合并多注意力层的最终输出。
总结
变压器神经网络优化用于理解数据中的长距离依赖关系并并行处理信息。多头注意力结构通过同时考虑多视角,支持对数据集更细致和全面的表述。这能显著提升自然语言处理翻译、信息摘要和图像识别等任务的性能。









评论