# 从头开始解释AI Agent(二)之Transformer 架构 **Published by:** [WEIWEI](https://paragraph.com/@hiweiwei/) **Published on:** 2024-12-30 **URL:** https://paragraph.com/@hiweiwei/ai-agent-transformer ## Content 要说这一波世界的AI浪潮崛起的最根本的技术,我认为最重要的就是Transformer架构了,但是现在架构这个词被滥用了,什么电子垃圾都可以称之为架构,我听到的AI Agent架构(或者叫框架)就包括:Swarms,Eliza,Zerebro,ARC等等,这些简单的软件设计被称为架构,就像之前的DEFI项目,跨链桥项目,一言不合就叫协议,还类比TCP/IP,真是恬不知耻。说实话这种软件设计就是web2最简单的软件设计,没有一毛钱创新,和当年DEFI智能合约相比啥也没有。当然这不妨碍我们炒币。 回归主题,我们今天来解释一下AI Agent是怎么理解人类语言的核心技术--Transformer 架构,GPT 系列(Generative Pre-trained Transformer)就是基于Transformer 架构的生成式语言模型,能够理解并生成自然语言。当然其他的主流大模型都是基于此来理解人类语言的。Transformer 的主要特点完全基于注意力机制:与传统的循环神经网络(RNN)或卷积神经网络(CNN)不同,Transformer 不依赖序列计算,而是通过注意力机制全局建模输入和输出之间的关系。并行计算能力:由于移除了序列依赖性,Transformer 支持更高效的训练和推理。高度可扩展性:通过堆叠多层自注意力和前馈网络实现更深的模型。Transformer 的简要过程(这里偏技术,不想看的不用看)(一) 输入处理 嵌入层:将输入序列(如句子中的单词)转化为固定维度的向量表示。 位置编码(Positional Encoding): 为向量添加位置信息,帮助模型区分序列中单词的顺序。 (二) 编码器(Encoder)处理 • 输入:处理后的词向量序列。 主要操作: 1. 自注意力机制(Self-Attention): • 计算序列中每个词与其他词之间的相关性,捕获全局上下文。 • 结果是每个词的加权表示,权重由注意力分数决定。 2. 前馈网络(Feed-Forward Network, FFN): • 对自注意力的输出进行非线性变换,进一步抽象特征。 3. 残差连接与归一化(Residual + Layer Normalization): • 稳定训练,防止梯度消失或爆炸。 堆叠多层:编码器由多个相同的层组成,每层提取更高阶特征。 (三) 解码器(Decoder)处理 输入:目标序列的前缀(训练时是已知的部分,推理时是已生成的部分)。 • 主要操作:自注意力机制:类似于编码器,但只关注目标序列中已生成的部分(通过遮挡机制实现)。编码器-解码器注意力(Encoder-Decoder Attention): • 将解码器的中间状态与编码器输出结合,获取输入序列的上下文信息。前馈网络与归一化:与编码器类似。(四) 输出生成 • 生成方式:解码器每次生成一个词(或字符),作为下一次输入的前缀。预测逻辑: 根据目标任务(如翻译、问答等),通过 softmax 函数计算概率分布,从中选取最可能的输出。大白话简单解释TransformerTransformer里面最核心的机制解释自注意力机制,这个机制是帮助AI理解句子中每个词之间的关系的核心。 让我们通过一个简单的例子来说明自注意力(Self-Attention) 的实际应用。在这里,我们以句子 “The animal didn’t cross the street because it was too tired.” 为例,展示自注意力是如何帮助模型理解句子中词语间的关系。 输入句子分词后为:{[“The”, “animal”, “didn{\prime}t”, “cross”, “the”, “street”, “because”, “it”, “was”, “too”, “tired”, “.”]} 生成 Query, Key 和 Value 对于每个词: Query:表示当前词要获取的信息。 Key:表示当前词提供的信息。 Value:表示当前词的实际信息。 例如: 对于 “it”,Query 是 “it” 想要寻找相关的信息(谁是指代对象)。 对于 “animal” 和 “street”,Key 表示它们提供的信息(它们的上下文语义和特性)。计算注意力分数对 “it” 的 Query,与每个词的 Key 计算相似性(注意力分数): 可能的结果(假设经过归一化): • “animal”:0.8 • “street”:0.1 • 其他词:更低。 生成上下文表示: 用这些注意力分数对 Value 矩阵进行加权求和,生成 “it” 的上下文表示的注意力得分: 结果分析: “it” 的上下文向量包含更多 “animal” 的信息,因为注意力机制认为它与 “it” 的关系更紧密。 具体应用场景其他使用例子机器翻译: 句子翻译中需要捕获长距离依赖关系。 例如: • 英文句子 “The cat jumped over the fence.” • 翻译成法语时,“The cat” 对应单个单词 “Le chat”,自注意力机制可以有效捕获这种映射。文本摘要 生成句子摘要时,模型需要关注哪些部分的信息更重要。例如: • 输入:“The company announced a new product launch yesterday, attracting significant media attention.” • 输出摘要可能是:“The company launched a new product.”问答系统 问题:“What did the animal do?” 上下文:“The animal didn’t cross the street because it was too tired.” • 自注意力可以帮助模型理解 “the animal” 和动作 “didn’t cross” 之间的关系,从而正确回答问题。情感分析 输入:“I love this phone because it has an amazing battery life.” • 自注意力可以帮助模型关注 “love” 和 “amazing battery life” 的关系,判断为正面情感。 TTransformer的其他过程如前馈网络,残差连接与归一化,解码器(Decoder)处理都是为了减少误差,增加准确性或者为了语言的编码解码,这里就不多解释了。 ## Publication Information - [WEIWEI](https://paragraph.com/@hiweiwei/): Publication homepage - [All Posts](https://paragraph.com/@hiweiwei/): More posts from this publication - [RSS Feed](https://api.paragraph.com/blogs/rss/@hiweiwei): Subscribe to updates