当前位置: 首页 > article >正文

【大模型】Bert变种

1. RoBERTa(Robustly optimized BERT approach)

  • 核心改动
    1. 取消 NSP(Next Sentence Prediction)任务,研究发现 NSP 对多数下游任务贡献有限。
    2. 动态遮蔽(dynamic masking):每个 epoch 重新生成 Mask 掩码,而非一次性固定,从而引入更多样本变体。
    3. 更长训练、更大批次:使用更大 batch size(比如 8K–16K tokens)和更多预训练数据。
    4. 拼写单位改进:采用基于 bytes 而非字符的 BPE,处理 Unicode 时更鲁棒。
  • 效果:在 GLUE、SQuAD 等基准上显著超过原始 BERT,成为后续多模型竞赛常用基线。

2. ALBERT(A Lite BERT)

  • 核心改动
    1. 参数共享:跨层共享 Transformer 参数,大幅减少模型总参数量。
    2. Embedding 分离:将词向量维度 E E E与隐藏层维度 H H H解耦,通常设定 E ≪ H E \ll H EH,减小 Embedding 参数开销。
    3. 用 SOP(Sentence Order Prediction)替代 NSP:模型需要判断两句文本是否颠倒,提升句间理解。
  • 效果:在 GLUE、RACE 等多个任务上,以更少参数(如 ALBERT-xxlarge 仅 235M)匹配或超越 BERT-Large 的表现。

3. DistilBERT & TinyBERT(蒸馏版 BERT)

  • 核心改动
    • 知识蒸馏(Knowledge Distillation):用大模型(教师)对小模型(学生)提供软标签,使学生网络尽量拟合教师的输出分布。
    • DistilBERT:从 BERT-Base 蒸馏,保留 60% 参数、运行速度提升 ~60%,在 GLUE 上保留 ≈95% 性能。
    • TinyBERT:进一蒸馏到更小结构(≈28% 参数),还引入中间层对齐、注意力矩阵对齐等技巧。
  • 效果:适用于资源受限场景(移动端、在线推理),在准确率与效率间取得良好平衡。

4. ELECTRA(Efficiently Learning an Encoder that Classifies Token Replacements Accurately)

  • 核心改动
    • 判别式预训练:不再纯掩码预测真实词,而是由小 Generator 模型先生成“伪替换”词,主模型(Discriminator)学习判断每个 token 是否被替换。
    • Generator 与 Discriminator 共同训练,模拟 GAN 思想,但更适合文本。
  • 效果:在相同计算预算下,ELECTRA-Small、-Base 在 GLUE、SQuAD 上均超过同规模的 MLM 模型,样本效率更高。

5. DeBERTa(Decoding-enhanced BERT with Disentangled Attention)

  • 核心改动
    1. 解耦位置与内容编码:将 token embedding 与 position embedding 保持分离,分别计算 Attention,然后再融合。
    2. 相对位置偏置:在 Attention 中引入可学习的相对位置矩阵,而非简单相加。
  • 效果:在 GLUE、SuperGLUE、阅读理解等多项任务上刷新当时最优,多用于大规模研究与基线。

6. SpanBERT(Improving Pre-training by Representing and Predicting Spans)

  • 核心改动
    1. 跨度级掩码:一次遮蔽连续的文本 span(平均长 3.8 个 token),而非随机单字或子词,以更好地学习文段内部关联。
    2. Span-Boundary Objective (SBO):利用被遮蔽 span 两端的边界表示,预测整个 span 的内容,而非仅逐字预测。
  • 效果:在抽取式问答(SQuAD 1.1/2.0)、共指消解(OntoNotes)等跨度选择任务上,对比同等大小 BERT-Large 提升数个百分点;在关系抽取、GLUE 等也有溢出式提升。
http://www.lryc.cn/news/2397694.html

相关文章:

  • vue-09(使用自定义事件和作用域插槽构建可重用组件)
  • 简单三步FastAdmin 开源框架的安装
  • RISC-V 开发板 MUSE Pi Pro 搭建 Spacengine AI模型部署环境
  • C++面试5——对象存储区域详解
  • 【Unity】AudioSource超过MaxDistance还是能听见
  • 基于 51 单片机的智能饮水机控制系统设计与实现
  • Qt 读取和写入 INI 格式的配置文件
  • 互联网大厂Java求职面试:AI与云原生架构实战解析
  • Spring:从青铜到王者,你的Java修炼手册
  • React和原生事件的区别
  • Qt creator 设计页面控件认识与了解
  • 命象架构法 02|你的系统有“用神”吗?
  • NVIDIA Mellanox BlueField-2 DPU(Data Processing Unit)智能网卡的调试和使用
  • Tomcat- AJP协议文件读取/命令执行漏洞(幽灵猫复现)详细步骤
  • B1、进度汇报(— 25/05/31)
  • 工作流引擎-11-开源 BPM 项目 jbpm
  • 【Prompt Engineering】摸索出的一些小套路
  • CSS强制div单行显示不换行
  • js的时间循环的讲解
  • Flutter实现不规则瀑布流布局拖拽重排序
  • 【第4章 图像与视频】4.1 图像的绘制
  • 苹果应用开发详细教程(2025最新版)
  • G25-05-31Rust开源项目日报 Top10
  • 2025年主流编程语言全面分析与学习指南
  • window安装nginx
  • ArcGIS Pro裁剪影像
  • [智能算法]蚁群算法原理与TSP问题示例
  • Vue-4-前端框架Vue基础入门之Vue的常用操作
  • ubuntu国内镜像源手动配置
  • 21-CS61B-lab6:java文件操作以及持久化一见