3分钟从零解读Transformer的Encoder

Encoder(编码器)和Decoder(解码器)有什么区别 比如,BERT(Bidirectional Encoder Representations from Transformers)就是仅使用编码器结构的典型例子,它通过预训练来学习文本中单词的深层双向关系,从而获得强大的语言表示能力。编码器的输出可以直接用于各种任务的特征表示,或者通过添加少量的任务特定层来进行微调,以适应特定的NLP任务。总之,即使只有编码器部分,通过强大的上下文理解能力、灵活的应用场景、计算效率以及有效的预训练和微调策略,也可以构建出处理复杂NLP任务的大型模型。 阅读详情

大概会花一到两周的时间,把 transformer 系统的讲一遍,可能会涉及到到 Bert/GPT 的一些基本知识,每天只讲一个知识点。

所有的关于NLP知识的文章都会放在下面这个仓库,大家快去看。

https://github.com/DA-southampton/NLP_ability

预告一下明天内容,是关于transformer位置编码的讲解,很多同学对位置编码这个概念很模糊,只是知道是正余弦函数,别的就不太清楚,我们之后花几篇文章好好聊一聊这个概念。这个已经更新在github,想看的朋友可以提前去看一哈。

正文

Transformer 分为两个部分,encoder 侧 和 decoder 侧。今天,我们聊一下 encoder 侧。这部分由 N 个完全相同的大模块堆叠而成(原论文N=6)。

这个结构怎么理解?这个构造就需要我们确保每一个模块的输入和输出维度是相同的,在实现代码的时候,我们只需要完成一个模块的代码的构造就可以。

注解:你可以把这个过程想象成 RNN 竖过来的一个流程,是不是就很好理解(当然这样想只是帮助你理解)。

其次对于这每一个大的模块,又分为两个模块,分别是多头注意力层和前馈神经网络层。进一步拆分,多头注意力层可以分为注意力层和 Add&Norm 层。前馈神经网络可以分为 Linear 层和 Add&Norm 层。

多头注意力层,核心点在于 Q/K/V 三个矩阵,其中 Q/K 矩阵生成权重矩阵(经由softmax),随后和V矩阵得到加权和。

这个过程重复了 n_heads 次,这个 n_heads 代表的就是头的数目,这里需要注意的是我们需要确保 hidden_size/n_heads 需要为一个整数,不然代码会报错。

Add 代表一个残差结构。对于残差结构,可以使得信息前后向传播更加顺畅,缓解了梯度破碎问题。在 NLP 角度来看,残差结构一定程度上促进了 NLP 网络结构向窄而深的方向发展。

我们可以把 Transformer 和之前的模型对比一下,比如 RNN 模型,一般来说,我们会选择 单层RNN 或者 一个 Bilstm,对于这些比较传统的模型,只是在时间长度上进行了延展,并没有在深度上做的太深。

所以说,残差结构是有助于网路变深的。

顺便联想一下 Elmo,使用的是 双层双向lstm,训练起来已经非常慢了,所以对于RNN这种比较传统的模型,做深太难了,GNMT也是用了很多的 tricks 进行加速训练。

Norm 代表的是 Layer Normalization。为什么这里使用 Layer Normalization,而不是BN,这个后面有文章说,这里直白的回答就是,BN的效果差,所以不用。

随后多头注意力层的输出经过前馈神经网络。对前馈神经网络,比较简单,我们需要注意的是它分为两个 Linear 层,第一层的激活函数为 Relu,第二层没有使用激活函数。

最后我们谈一下整个encoder的输入和输出。

先说输入,分为两个部分:word embedding 和 position encoding

word embedding 没什么可说的,初始化后跟着训练或者使用word2vec这种已经有的看具体任务的效果。

position encoding 这里 transformer 使用的是 正余弦函数进行表达。其实这里进行初始化然后进行训练也是可以的,论文原作者的实验表明效果基本没区别。

对于 position encoding 表示的绝对位置,这点大家都没异议,那么 position encoding 究竟有没有表达相对位置信息,之后会有个文章专门讲讲这个知识点。

然后说一下 encoder的输出,感觉很少有人谈到这里。

encoder 的输出需要注意的细节点在于它需要和 decoder做交互,所以它的输出为 K/V 矩阵,记住这个细节点,Q 矩阵来自decoder模块,K/V矩阵来自encoder。

写到这里,我估摸这三分钟差不多能看完,现在没有留言功能,有问题大家在公众号对话框发送,我后台能看见。

能点个在看,老铁们 !!鞠躬感谢!!

Transformer系统级认知地图:从数学架构到硅基物理的工程落地 Transformer不仅是一种序列建模技术,更代表了一次计算范式迁移——它用Self-Attention重构信息粒度与计算粒度的对齐方式,以LayerNorm和残差连接保障高维非线性变换下的数值稳定性。其核心价值在于解耦‘理解’与‘生成’的计算契约,并通过模块化设计适配GPU内存带宽、缓存局部性及边缘端推理约束。在真实场景中,位置编码的物理实现(如RoPE)、KV Cache的内存调度、FFN的激活稀疏性等,共同决定了模型能否跨越从训练到部署的鸿沟。本文聚焦Transformer架构的系统级设计逻辑,深入 阅读详情

相关推荐

2025秋招NLP算法面试真题(五)-3分钟从零解读Transformer的Encoder

3分钟从零解读Transformer的Encoder

weixin_41496173的博客 759

【Transformer系列(1)】encoder(编码器)和decoder(解码器)

一文带你学会encoder-decoder框架

路人贾的博客 5万+

【项目44】基于Transformer实现电力负荷预测

电力负荷预测是智能电网的核心技术之一。想象一下,如果电力公司能够准确预测明天的用电量,就可以合理安排发电计划,避免浪费能源,同时也能保证供电的稳定性。这不仅关系到经济效益,更关系到千家万户的用电安全。在那个智能电网项目中,我们尝试了各种方法:从传统的统计模型到机器学习算法,再到深度学习。最终,我们发现Transformer模型在长期预测方面表现最为出色。今天,我就来教大家如何用Transformer实现电力负荷预测。

weixin_51988935的博客 1227

Transformer 中的 Encoder 机制

因此将特征序列表示为 [[1, 1, 0, 0], [1, 1, 1, 1]],其 shape=[2, 4],见下面的第二个矩阵,如:src_seq = [[6, 4, 0, 0], [6, 4, 1, 7]] 中,第一个单词 6 用向量 [-0.9194, 0.3338, 0.7215, -1.2306, 0.9512, -0.1863] 来表示。# [tensor([4, 2, 1, 3]), tensor([6, 5, 1])] # 目标特征,第一个句子有4个单词,第二个句子有3个单词。

实力派,无需多言! 1068

基于深度学习的风电功率预测:从LSTM到Transformer的工业AI实战

时间序列预测是数据分析与机器学习领域的核心课题,旨在基于历史数据推断未来趋势。其原理在于捕捉数据中的时序依赖与模式,对于优化决策、提升效率具有重要价值,广泛应用于金融、能源、交通等领域。在新能源行业,精准的风电功率预测是保障电网稳定、优化电力交易的关键技术。传统统计方法在应对风速突变等复杂非线性关系时存在局限,而深度学习模型,特别是长短期记忆网络(LSTM)和Transformer,凭借其强大的序列建模能力,成为解决该问题的有效方案。本文聚焦于工业AI实战,详细拆解了利用LSTM等模型构建风电场‘预测大脑’

weixin_33919950的博客 372

virtualbox虚拟机里面最顶部没有控制、设置和帮助等选项

无意中操作,导致virtualbox虚拟机里面最顶部没有控制,设置和帮助选项  virtualbox虚拟机窗口显示如下如: 如何设置,窗口显示如下图所示呢: virtualbox虚拟机窗口模式显示设置,切换可以通过如下图所示操作进行切换: PS:一定要是右边的Ctrl+C

WEL测试 8780

ffmpeg安装第三方编码器(encoder)库,ffmpeg编码h264(完)

转自:http://hi.baidu.com/y11022053/item/6d4c34ba87c7b5f362388e9a 安装好了ffmpeg后,如果你使用ffmpeg工具去把某个视频文件转成h264视频编码、mp3音频编码or其他ffmpeg自身不带的xxx编码类型,就会看到报错信息,unknown encoder 'xxx'。此刻你需要的只要去安装其他的编码器就行了,本质上其

深溪的石桥的专栏 1513

归因分析计算因子贡献度常见的方法

在归因分析中,我们一般都需要计算出每个因子的贡献度是多少,比如产品DAU上升,对年龄段维度进行拆解,看是不同年龄段的用户对DAU上升的贡献度是多少,一般根据指标的类型,计算贡献度的方法也不一样,下面就列出一些常见的归因分析贡献度的计算方法。

Hubans的博客 4万+

【速写】Transformer-encoder-decoder深度解析

温故而知新

梦想破三的奔三狗 1万+

PLL锁相环基础知识(一)

本文介绍了锁相环(PLL)的核心组件及其工作原理,重点阐述了压控振荡器(VCO)的结构与调谐机制。VCO作为PLL的关键部分,通过变容二极管实现频率调谐,但易受温度、电压等因素影响稳定性。文章详细讲解了VCO的谐振电路原理、硅基集成方案,以及通过分频器和调制器实现的频率控制技术。特别分析了整数型和分数型N分频器的差异,指出高阶德尔塔-西格玛调制器可有效降低分数杂散。文章还探讨了预分频器的应用及其对频率分辨率的影响,揭示了PLL通过反馈环路实现频率锁定的基本原理。

weixin_49761275的博客 3039

31、Labview如何搭建程序框架?--状态机到数据采集等常用框架

本文废话不多,直接列举几种框架搭建方式,为了尽量向大家提供干货,本文直接从简介和手把手教搭建框架两方面来讲解,本文提到五种经典框架模式,学会这五种就很够了,分别是:状态机框架(State Machine)、生产者-消费者框架(Producer-Consumer)、主-从框架(Master-Slave)、事件驱动框架(Event-Driven)、分层架构(Layered Architecturep)。这个框架是基于状态机结构的。顾名思义“状态机”就是个“切换程序状态的机器”。本质是一个。

关注我,更多技术问题欢迎私聊~ 3105

史上最全Transformer面试题

Transformer 原版的位置编码也就是正余弦函数编码,表达的是绝对位置信息,同时包含相对位置信息。但是经过线性变化,相对位置信息消失。基于此,需要对位置编码进行优化。整个Transformer这一块基本就是讲完了,基本上可以解决之前那个关于transformer面试题百分之八十的题目。至于剩下的题目会放在之后别的模块去讲,比如 wordpiece model 会在总结机器翻译知识点的时候写一下,然后 GPT 会在总结词向量知识点的时候写一下。欢迎大家关注微信公众号: NLP从入门到放弃。

实力派,无需多言! 1529

SAP BSIS:总账未清项表(Open Items)总账未清项 包含哪些业务 请给以举例说明

SAP总账未清项是指需要未来核销的会计行项目,仅适用于勾选"未清项管理"的总账科目。典型业务场景包括:供应商预付款(借方未清项)、员工备用金(借方未清项)、客户预收款(贷方未清项)和保险理赔(借方未清项)。系统通过表BSIS/BSAS跟踪未清项,支持明细追踪和账实核对。核心价值在于提供总账级别的明细管理能力,确保往来款项完整清账,简化对账流程,满足特殊业务管理需求。可通过FBL3N事务码查询和管理所有总账未清项。

金牌架构师 725

Transformer、BERT等模型学习笔记

记录一下刷B站教学视频的一些笔记,目前主刷: 李沐老师的【跟李沐学AI】 公众号-【NLP从入门到放弃】 的视频 文章目录1 Transformer从零详细解读(可能是你见过最通俗易懂的讲解)1.1 整体结构1.2 encoder部分1.2.1 输入部分1.2.2 多头注意力机制1.2.2.1 注意力机制原理1.2.2.2 QKV的获取方式1.2.3 残差1.2.3 layer norm 与BN的差异1.2.4 前馈神经网络1.3 Decoder1.3.1 masked1.3.2 新增的多头注意力机制

素质云笔记 2533

智元机器人开源具身仿真框架 Genie Sim 入门教程

GenieSim是AgiBot推出的具身智能仿真框架,提供完整闭环开发管道,包括轨迹生成、模型训练和基准测试。框架支持Docker容器化部署,要求Ubuntu 22.04和NVIDIA硬件环境。主要功能涵盖: 支持12种基准测试任务 提供ADER评估框架 集成UniVLA/RDT等基线模型 支持PICO/键盘遥操作 具备轨迹记录回放功能 提供完整API控制接口 开发者可通过Hugging Face获取场景资产,使用标准化ROS主题与仿真环境交互。框架特别优化了碰撞检测和抓取物理模拟,适用于从简单抓取到复杂操

2506_90492529的博客 2544

海思SD3403/SS928V100开发(6)单路GMSL-MIPI-YUV相机视频输入调试

硬件连接:森云GMSL相机 -> GMSL 解串器 -> SD3403 MIPI0暂时先进行单路视频输入通路调试。

jzwjzw19900922的博客 1935

ESPnet LRS3 音频语音识别(ASR)基线实验:Transformer 无语言模型配置的 WER/CER/TER 结果解读与复现

本文围绕 ESPnet 仓库中 [egs2/lrs3/asr1/RESULTS.md](https://link.gitcode.com/i/5d193ee3634099189050b45b8d9a318e) 这一份实验结果报告展开,深入解读 LRS3 语料上音频语音识别(ASR)基线的完整实验设置——Conformer 编码器 + Transformer 解码器、无外部语言模型的 `asr_tr

gitblog_00981的博客 1067

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

PaddleNLP 模型下载与推理指南:cross-encoder/nli-MiniLM2-L6-H768 自然语言推理 Cross-Encoder 模型

本篇技术指南围绕 PaddlePaddle 模型中心社区模型 `cross-encoder/nli-MiniLM2-L6-H768` 展开,完整讲解该自然语言推理(NLI)Cross-Encoder 模型的背景、模型文件清单、两种下载获取方式(直接文件链接与 `paddlenlp` CLI 工具),以及基于 PaddleNLP 的加载推理方法。读完本文后,你将能够独立完成该模型从安装环境、下载权重

gitblog_00454的博客 745

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

AI量化交易策略对比:Transformer vs LSTM vs LightGBM 在A股回测中的3大关键指标

本文深度评测了Transformer、LSTM和LightGBM三大AI模型在A股量化交易中的实战表现,对比分析了年化收益率、夏普比率和最大回撤等关键指标。研究发现,Transformer在趋势市中表现最佳,LSTM在短期波动中稳定,而LightGBM计算效率最高。文章还提供了模型融合策略和实盘应用建议,为AI量化交易策略选择提供技术参考。

aiman5818的博客 419

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

揭秘DialogueSidon架构:Encoder+扩散模型+Decoder的三段式生成式设计

🔍 **DialogueSidon-bf16** 是一个基于 MLX 框架的**两人对话分离与修复**模型:给定一段两人对话录音,它输出 24 kHz 的**单声道语音分离**(speech separation)声轨。本文带你拆解它的 **Encoder + 扩散模型 + Decoder 三段式架构**,讲清楚为什么这种"生成式"设计比传统分离方法效果更好,以及如何在本地快速跑起来。 ##

gitblog_00843的博客 1115

【AI大模型入门】A01:Transformer——改变一切的那篇论文

所有大模型都站在这个肩膀上:GPT、Claude、Gemini、豆包……全是Transformer理解"注意力"帮助你更好地提问:大模型处理信息的方式,影响着你该怎么写提示词看懂AI新闻:当你看到"XXX亿参数模型",你知道那些参数都是在Transformer里面的了解历史:知道AI从哪里来,才能判断它要去哪里。

baiyanggudao的博客 813

ok-ww 上手指南:后台自动战斗、4C 声骸刷取与一键日常

ok-ww 是一个基于图像识别与系统级键鼠模拟的鸣潮(Wuthering Waves)开源自动化工具,游戏窗口最小化也能在后台运行。它替你完成自动战斗、副本循环刷取 4C 声骸、挑战世界 Boss、一键清空日常体力这些最耗时间的重复流程。下面从环境检查讲到四个核心场景,每步都给出可观察的判断标准,读完即可独立跑通。 ## 跑之前的检查清单 **系统与硬件** - Windows 10/11

gitblog_00239的博客 707

Sparse Encoder 评估器全解析:sentence-transformers 稀疏检索模型的评测体系与实战指南

> 导读:本文以 [skills/train-sentence-transformers/references/evaluators_sparse_encoder.md](https://link.gitcode.com/i/ab13594cd85c35f0767445f0f7a57270) 为骨架,系统讲解 sentence-transformers 中 Sparse Encoder(如 SPL

gitblog_00395的博客 375

Kronos金融AI预测模型:如何用Transformer技术破解K线语言密码?

金融市场数据如同一种复杂的语言,每个K线图都包含着价格波动的"语法"和"词汇"。传统量化模型往往难以捕捉这种语言中的深层规律,但Kronos金融AI预测模型通过创新的K线Tokenization技术,让Transformer模型能够像理解自然语言一样解读市场走势。本文将深入探讨这一开源金融基础模型的技术原理、实战应用和优化策略,为量化交易者提供完整的AI解决方案。 ## 技术架构:从连续数据到离

gitblog_00126的博客 449

ESPnet Librimix 多说话人 ASR 实战:Transformer multispkr 与 PIT 训练全解析

本文围绕 ESPnet 中 `egs2/librimix/asr1` recipe 的官方实验结果(`RESULTS.md`),深入解析多说话人语音识别(Multi-speaker ASR)任务的技术实现:从 Transformer multispkr 编码器、PIT(Permutation Invariant Training)损失模型、双参考文本预处理,到训练/解码配置与 WER/CER 结果

gitblog_00504的博客 255
上一篇: 为什么Bert做不好无监督语义匹配
下一篇: BN踩坑记--谈一下Batch Normalization的优缺点和适用场景
onnx
博客等级 码龄5年 1万+粉丝 416原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

onnx

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值