在深度学习领域,Transformer 模型凭借其卓越性能,在自然语言处理、语音识别等众多领域取得显著成果。本文将围绕 Transformer 展开,深入剖析序列到序列模型的应用、Transformer 的结构以及训练过程,助力读者全面理解这一重要模型。
一、序列到序列模型的多样应用
序列到序列模型的输入和输出均为序列,输入与输出序列长度关系灵活,可相同或由模型自主决定。这种特性使其在多个领域发挥关键作用。
在语音识别中,模型将声音信号转化为文字。由于声音信号长度与输出文字长度无固定关联,模型需依据内容确定输出。例如,YouTube 上的乡土剧,借助其闽南语语音和白话文字幕,可训练闽南语语音识别模型。机器翻译则是将一种语言的句子转换为另一种语言的句子,输入和输出句子长度由机器学习决定 。语音翻译直接把一种语言的声音信号翻译成另一种语言的文字,对于缺乏文字体系的语言,语音翻译至关重要,像闽南语的语音翻译,能将闽南语转化为通俗易懂的白话文。
聊天机器人基于大量对话数据训练,依据输入文字生成回应。语音合成把文字转换为声音信号,以闽南语语音合成为例,模型先将白话文转成闽南语拼音,再借助序列到序列模型将拼音转化为声音 。问答任务涵盖翻译、自动做摘要、情感分析等。翻译任务中,模型将一种语言句子翻译成指定语言;自动做摘要时,模型提炼文章重点;情感分析则判断句子的情感倾向 。句法分析中,模型将输入文字转化为句法树结构,以 “deep learning is very powerful” 为例,模型可分析出各词汇组合的句法成分 。多标签分类用于处理一篇文章属于多个类别的情况,看似与序列模型无关,实则也可借助序列到序列模型解决 。
二、Transformer 的精妙结构
(一)编码器:高效的特征提取
Transformer 的编码器负责处理输入序列。它以自注意力机制为核心,输入一排向量,经多头自注意力、残差连接、层归一化及全连接前馈神经网络等操作,输出相同长度的向量序列。每个块重复执行这些操作,通过自注意力机制,编码器能够综合考虑整个输入序列的信息,有效捕捉长距离依赖关系 。位置编码的加入为模型提供了输入序列的位置信息,确保模型在处理序列时不会忽略位置特征。
(二)解码器:逐字生成输出
解码器采用自回归方式生成输出。以语音识别为例,解码器先接收编码器输出和起始符号<BOS>,经一系列操作后,通过 softmax 输出概率分布,选取概率最高的词作为当前输出 。之后,将该输出作为新输入,继续生成下一个词。为防止解码器在生成过程中参考未来信息,采用掩蔽自注意力机制,通过掩码阻止每个位置获取后面的输入信息 。当解码器输出结束符号<EOS>时,生成过程终止。
(三)编码器 - 解码器注意力:信息交互的桥梁
编码器和解码器通过编码器 - 解码器注意力进行信息传递。解码器中该注意力的键和值来自编码器输出,查询则来自解码器前一层输出。通过计算注意力分数并进行加权求和,解码器能够从编码器输出中抽取关键信息,为后续全连接网络提供输入,从而更好地生成准确输出 。
三、Transformer 的训练奥秘
Transformer 的训练目标是使模型输出尽可能接近标准答案。以 “机器学习” 的语音识别为例,模型期望解码器输出的概率分布与 “机”“器”“学”“习” 及<EOS>的独热向量尽可能接近 。训练过程中,通过计算解码器输出与标准答案之间的交叉熵来衡量差异,目标是最小化这些交叉熵的总和 。
为帮助解码器学习,采用教师强制策略,即在训练时将正确答案作为解码器的输入,引导其学习正确的输出模式。这种方式让解码器在已知正确信息的基础上进行训练,加快学习速度,提高模型收敛效率 。
1万+

被折叠的 条评论
为什么被折叠?



