老码农和你一起学AI系列:Encoder-only 语言模型架构
Encoder-only架构是基于Transformer编码器部分构建的一类大语言模型,以BERT为代表,专注于自然语言理解任务。这类模型通过双向注意力机制为每个词元创建深度的上下文表示,在文本分类、命名实体识别、信息检索等任务上表现卓越。

一、双向注意力的力量
1.1 架构定义
Encoder-only模型仅保留Transformer架构中的编码器部分,由多个相同的编码器层堆叠而成。每个编码器层包含两个核心子层:
-
多头自注意力:为每个词元计算基于完整上下文的表示
-
前馈神经网络:对每个词元的表示进行非线性变换
输出是与输入序列等长的向量序列,每个向量都是对应输入词元的丰富语义表示-3。
1.2 双向性的本质
Encoder-only最核心的特性是双向注意力——每个词元在处理时可以看到序列中的所有其他词元(包括左右两侧)。这与Decoder-only的单向因果掩码形成鲜明对比:
| 架构 | 注意力方向 | 视野 | 类比 |
|---|---|---|---|
| Encoder-only | 双向 | 能看到完整上下文 | 阅卷老师 |
| Decoder-only | 单向(因果) | 只能看到过去 | 作家 |
双向性使得每个词的表示都融入了完整的语境信息,例如在句子"他打开银行账户存钱"中,"银行"的正确含义需要依赖右侧的"账户存钱"才能准确判断——这正是双向注意力的优势所在-5。
二、掩码语言模型
Encoder-only模型通过特殊的自监督任务进行预训练,其中最重要的是掩码语言建模(MLM)。
2.1 掩码语言建模(MLM)
MLM的核心思想是:随机隐藏输入中的部分词元,让模型利用双向上下文预测这些被掩码的词-1-3。
具体实现方式-6:
-
随机抽取15%的词元作为掩码对象
-
对被选中的词元进行三种处理:
-
80%概率替换为
[MASK](强迫模型预测) -
10%概率替换为随机词(增加任务难度)
-
10%概率保持不变(缓解预训练-微调差异)
-
模型在训练时并不知道哪些词被遮掩、哪些被替换、哪些保持不变,这种不确定性迫使模型深度理解上下文的语义关系,从而学习到语言的深层规律-6。
2.2 下一句预测(NSP)
-
输入一对句子A和B
-
模型需判断B是否是A的真实下一句
-
50%正样本(真实后续句)+50%负样本(随机抽取句)
后续研究(如RoBERTa)发现NSP效果有限,常被移除-1-3。
三、代表性模型演进
3.1 经典模型系列
| 模型 | 发布年份 | 核心特点 |
|---|---|---|
| BERT | 2018 | 奠基之作,引入MLM和NSP,刷新11项NLP任务纪录-6 |
| RoBERTa | 2019 | 优化版:更大数据、更长训练、移除NSP,性能显著提升 |
| ALBERT | 2019 | 轻量化:嵌入因子分解+跨层参数共享,大幅减少参数量 |
| DistilBERT | 2019 | 知识蒸馏版本,保留95%性能但体积更小、速度更快 |
| ELECTRA | 2020 | 替换词元检测任务,训练更高效 |
| DeBERTa | 2020 | 解耦注意力机制,分别编码内容和相对位置 |
3.2 BERT的技术细节
以BERT-Base为例:
| 参数 | 取值 |
|---|---|
| Transformer层数 | 12 |
| 特征维度 | 768 |
| 注意力头数 | 12 |
| 总参数量 | 1.15亿 |
| 训练数据 | BooksCorpus(8亿词) + 英文维基百科(25亿词) |
输入表示由三种嵌入相加而成:
-
Token嵌入:词本身的向量表示
-
Segment嵌入:区分不同句子的标识
-
Position嵌入:可学习的位置编码(非固定三角函数)
四、应用场景
Encoder-only模型不用于自由文本生成,其优势在于各类理解型任务:
| 任务类型 | 具体应用 | 技术实现 |
|---|---|---|
| 文本分类 | 情感分析、主题识别 | 取[CLS]标记的输出向量,接分类层 |
| 词元分类 | 命名实体识别、词性标注 | 每个词元的输出向量独立分类 |
| 抽取式问答 | 从段落中定位答案片段 | 预测答案起始和结束位置 |
| 句子关系判断 | 语义相似度、自然语言推理 | 输入句对,输出关系类别 |
| 嵌入提取 | 检索系统、语义搜索 | 作为通用的文本编码器,获取高质量嵌入 |
在工业界,BERT类模型至今仍是生产系统的"主力军"——HuggingFace平台每月下载量超过6800万次。
五、ModernBERT
2024年底,Encoder-only架构迎来重大升级——ModernBERT发布,证明这类架构远未被"杀死"。
5.1 核心升级
| 维度 | ModernBERT改进 | 相比BERT的优势 |
|---|---|---|
| 上下文长度 | 8192 token | 16倍于传统BERT |
| 架构现代化 | RoPE位置编码、GeGLU激活层、移除偏置项、额外归一化层 | 借鉴Llama等现代模型经验 |
| 效率优化 | Flash Attention 2、交替注意力、Unpadding、硬件感知设计 | 速度是DeBERTa的2倍,长上下文推理快约3倍 |
| 训练数据 | 2万亿token,含网页、代码、科学文章 | 告别仅维基百科+书籍的局限 |
| 训练策略 | 三阶段训练(1.7T短文本+250B长上下文+100B退火)、30%掩码率 | 移除NSP,优化学习率策略 |
| 规格 | Base(139M)/Large(395M) | 内存不到DeBERTa五分之一 |
5.2 适用场景
ModernBERT特别适合:
-
信息检索(如RAG系统中的嵌入模型)
-
分类任务(如内容审核)
-
实体抽取(如命名实体识别)
5.3 公平对比研究
最新的Ettin项目首次在完全相同的数据(2万亿token)、架构和训练配方下,对Encoder-only和Decoder-only进行了公平对比:
| 发现 | 具体结论 |
|---|---|
| 任务专精性 | Encoder在分类/检索任务上持续占优,Decoder在生成任务上领先 |
| 规模不决定一切 | 150M的Encoder在分类上超过400M的Decoder |
| 架构根本性差异 | 即使互换训练目标,Encoder-from-decoder仍落后于原生Encoder-2 |
六、Encoder-only的独特价值
6.1 与Decoder-only的对比
| 维度 | Encoder-only | Decoder-only |
|---|---|---|
| 注意力 | 双向,完整上下文 | 单向,仅过去信息 |
| 推理速度 | 快(非自回归) | 慢(需逐词生成) |
| 资源消耗 | 低 | 高 |
| 擅长任务 | 理解、分析、分类 | 生成、对话、创作 |
| 典型场景 | 搜索、审核、NER | 聊天、写作、代码 |
| 代表模型 | BERT、RoBERTa、ModernBERT | GPT、LLaMA、Qwen |
6.2 为什么Encoder-only不可替代
在生成式AI热潮中,Encoder-only的价值常被低估,但其独特优势无可替代:
-
成本效益:对许多任务来说,GPT-4等大模型"太大、太慢、太贵",Encoder-only更经济适用
-
控制性:可私有化部署,完全自主可控
-
准确性:在判别任务上,Encoder-only往往比同规模Decoder更精准
-
实时性:非自回归的推理速度适合延迟敏感场景
6.3 未来展望:长期共存与融合
大模型与小模型将长期共存:
-
U型分布:生成式大模型在研发设计、经营管理两端应用多;判别式小模型在生产制造中间环节应用多
-
融合方向:大模型生成数据辅助小模型训练;大模型调用小模型实现灵活性与效率结合-5
七、最后小结
Encoder-only架构从BERT奠基至今,始终是自然语言理解的中流砥柱。ModernBERT的发布证明,这类架构不仅未被"杀死",反而在新的技术浪潮中焕发新生。对于开发者而言,理解Encoder-only的定位与价值,能够在实际应用中做出更明智的架构选择——不是所有问题都需要一个会写诗的模型,有时候,一个会认真听讲、准确理解的模型,才是更好的答案。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)