编码器-解码器架构
编码器-解码器架构将模型分为两半:一半读取输入并将其压缩为丰富的内部表示,另一半生成输出。
概述
This design powers translation, summarization, and any task where the input and output are different sequences.
深入探讨
编码器-解码器模型分两个阶段处理问题。编码器读取整个输入序列(例如,英语句子)并将其转换为一组捕获含义的上下文向量。然后,解码器一次生成一个标记的输出序列(例如,法语),同时回顾其之前的输出和编码器的表示。最初的 2017 Transformer 是一个专为翻译而构建的编码器-解码器。 T5 和 BART 等模型使用这种形状并将每个任务框架为文本输入、文本输出。这种分割非常强大,因为编码器可以立即看到整个输入(双向上下文),而解码器则生成从左到右的输入。这使得该设计非常适合输出长度和内容与输入不同的序列到序列问题。
技术洞察
编码器使用双向自注意力,因此每个输入令牌都会同时关注所有其他令牌。解码器是自回归的,并使用屏蔽自注意力,这意味着每个位置只能看到较早的位置以保留因果生成。连接它们的是交叉注意力:解码器层查询编码器的最终隐藏状态。这种分离使编码器能够构建完整的、与顺序无关的理解,而解码器一次提交一个令牌。
战略影响
速度与规模
语言工作流程可以在不牺牲一致性的情况下更快地移动。
交通与覆盖范围
它扩展了跨语言和沟通方式的访问。
更清晰的判决
团队可以花更多时间进行判断,而自动化则可以处理重复。
编码器-解码器架构的未来
像 GPT 这样的纯解码器模型现在在通用聊天中占据主导地位,因为单个堆栈可以简单地扩展并通过提示处理许多任务。但编码器-解码器设计仍然存在于输入理解和输出生成真正不同的地方:语音识别(Whisper)、文档摘要以及将视觉编码器与文本解码器配对的多模态系统。期望混合架构借用编码器的双向理解来进行检索和基础,同时保持解码器的灵活性,特别是当模型融合文本、音频和图像时。
现实世界的实施
Google Translate 和 DeepL 使用编码器-解码器 Transformer 将一种语言的句子映射到另一种语言。
OpenAI 的 Whisper 对音频频谱图进行编码并将其解码为转录或翻译的文本。
T5 和 BART 提供抽象摘要功能,将长文章压缩为短摘要。
图像字幕系统将视觉编码器与文本解码器配对,以用文字描述照片。
风险与防护栏
幻觉的事实可以悄悄地进入报告、支持流程或研究成果。
及时的敏感性可能会在类似的请求中产生不一致的结果。
如果访问控制薄弱,敏感文本数据可能会暴露。
实施路线图
在推出之前定义输出格式、语气和质量标准。
当准确性很重要时,请使用可信来源进行地面响应。
为高风险输出保留人工审查检查点。
跟踪故障模式并定期重新训练提示或工作流程。
不断探索
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the Encoder-Decoder Architectures quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
常见问题
What is Encoder-Decoder Architectures?
编码器-解码器架构将模型分为两半:一半读取输入并将其压缩为丰富的内部表示,另一半生成输出。该设计支持翻译、摘要以及任何输入和输出为不同序列的任务。
编码器-解码器模型中编码器的主要工作是什么?
编码器消耗整个输入序列并生成捕获其含义的上下文向量,然后解码器使用这些向量。
为什么解码器使用屏蔽(因果)自注意力?
掩蔽确保每个输出位置仅关注较早的位置,从而保留从左到右的自回归生成顺序。
什么机制将解码器连接到编码器的表示?
交叉注意力让每个解码器层查询编码器的隐藏状态,将输入的理解与输出的生成联系起来。
以下哪个模型是编码器-解码器(序列到序列)架构?
T5(和 BART)是经典的编码器-解码器模型,将任务构建为文本到文本。 BERT 仅用于编码器,GPT-3 仅用于解码器。
为什么编码器-解码器设计非常适合翻译?
翻译将一个序列映射到另一个序列,因此读取整个源(编码器)并生成新的目标(解码器)非常适合。