链载Ai

标题: BERT新版本:ModernBERT -- Smarter, Better, Faster, Longer [打印本页]

作者: 链载Ai    时间: 昨天 12:03
标题: BERT新版本:ModernBERT -- Smarter, Better, Faster, Longer
一、背景
自 BERT 发布后,仅编码器的 Transformer 模型在自然语言处理(NLP)的检索和分类任务中占据主导地位。尽管大语言模型(LLMs)不断发展,但仅编码器模型因其推理要求适度,在处理大规模文档检索和判别性任务时仍广泛应用。然而,当前的应用大多依赖旧模型,如原始 BERT,存在诸多局限性,包括序列长度受限、模型设计和词汇量不理想、架构效率低以及训练数据有限且领域狭窄等问题。
二、创新点
(一)架构改进
1. Transformer 特性集成
2. 效率提升措施
(二)数据与训练优化
1. 大规模数据训练
基于多种数据源的 2 万亿令牌进行训练,采用现代数据混合策略,通过实验确定最佳数据混合方式,使模型学习到更丰富的语言知识。
2. 分词器优化
使用改进的 OLMo 分词器,相比多数重用原始 BERT 分词器的编码器,其在代码相关任务中令牌效率和性能更高,且词汇量设置为 50,368(64 的倍数),包含 83 个未使用令牌以支持下游应用,优化了 GPU 利用率。
3. 序列打包技术
采用贪婪算法进行序列打包,确保训练批次内序列长度的均匀性,避免因无填充导致的批量大小方差问题。
3. 训练设置精细调整
(三)高效模型设计
通过广泛的小规模实验,旨在优化模型在常见 GPU 上的推理效率。ModernBERT 的base model和large model分别设计为 22 层和 28 层,对应的参数总量分别为 1.49 亿和 3.95 亿。在隐藏层大小和 GLU 扩展比例方面进行精细调整,确保在不同 GPU 配置下,特别是目标 GPU 中的张量核心和平铺效率,从而在下游任务性能和硬件利用率之间实现最佳平衡。这种设计策略使得模型在实际应用中能够充分利用硬件资源,同时保持良好的性能表现。
三、模型训练
(一)数据处理
1. 数据混合
模型在 2 万亿令牌的大规模数据上进行训练,数据来源广泛,涵盖网络文档、代码和科学文献等。通过一系列实验确定最终的数据混合策略,以确保模型能够学习到多样化的语言表达和知识。
    2. 分词器
    采用改进的 OLMo 分词器,与多数重用原始 BERT 分词器的编码器不同,该分词器在处理代码相关任务时表现出更高的令牌效率和性能。词汇量设定为 50,368,这是 64 的倍数,其中包含 83 个未使用令牌,专门用于支持下游应用,同时优化了 GPU 的内存利用效率。
    3. 序列打包
    为避免因无填充操作导致训练批次内序列长度的高度变化,采用贪婪算法进行序列打包。这一技术确保了训练过程中批量大小的高度一致性,从而稳定训练过程,提高训练效率。
    (二)训练设置
      见训练设置精细调整
      四、下游任务评估
      (一)评估设置
      1. 自然语言理解(NLU)
      使用 GLUE 基准测试,这是衡量模型在句子或句对理解任务(如情感检测、语言蕴含等)上性能的标准测试。通过在每个 GLUE 子集中进行超参数搜索,确保与其他模型的可比性。
      2. 文本检索
      3. 长上下文检索
      由于缺乏标准化长上下文基准,在 MLDR(包含 200,000 多个长文档)的英语子集中进行评估,设置了单向量(域外和域内)和多向量(域外)三种评估方式。
      4. 代码检索
      使用 CodeSearchNet 和 StackOverflow-QA 基准测试评估模型在编程相关任务中的性能,将其视为单向量检索任务,并重用之前确定的最佳超参数进行训练。
        (二)评估结果
        1. 下游性能总体表现
        ModernBERT 在 BASE 和 LARGE 模型尺寸上均表现卓越,在所有评估类别中超越原始 BERT 和 RoBERTa 模型,实现了全面的性能提升。
        2. 短上下文检索
        在 BEIR 评估套件的 DPR 和 ColBERT 设置下,ModernBERT 均优于现有编码器,包括专门为检索设计的 GTE-en-MLM 和 NomicBERT 模型。ModernBERT-large 在参数较少的情况下仍领先于 GTE-en-MLM-large。
        3. 长上下文检索
        4. 自然语言理解
        在 GLUE 测试中,ModernBERT 模型展现出卓越的 NLU 能力。ModernBERT-base 超越所有现有基础模型,成为首个超越 DeBERTaV3-base 的 MLM 训练模型;ModernBERT-large 是第二好的大型编码器,参数少但处理速度快,接近 DeBERTaV3-large 的性能。
        5. 代码任务
        在编程任务中,ModernBERT 在代码到文本(CodeSearchNet)和长上下文混合设置(StackQA)中表现出色,因其是唯一在训练数据中包含编程数据的评估编码器,表明其在代码理解上的提升未影响自然文本处理能力。
        五、模型效率
        (一)评估设置
        为衡量模型在不同序列长度下的推理效率,创建了 4 组合成文档集,包括固定短上下文(512 令牌)、固定长上下文(8192 令牌)以及两种可变长度(分别以 256 和 4096 令牌为中心的正态分布)。在 NVIDIA RTX 4090 上评估模型每秒处理的令牌数,对 GTE-en-MLM 模型进行了原生和使用 xformers 库增强两种设置的测试,所有测试均重复十次取平均值。
        (二)评估结果
        ModernBERT 在效率方面表现卓越。在短上下文处理上,虽比原始 BERT 和 RoBERTa 稍慢,但比其他近期编码器快;在长上下文处理上,显著快于所有竞争编码器,处理速度分别比同类模型中第二快的编码器快 2.65 倍(BASE)和 3 倍(LARGE)。在可变长度输入方面,ModernBERT 比 GTE-en-MLM 更高效,尤其在长上下文时优势明显,这得益于其局部注意力机制。同时,ModernBERT 在内存利用上也表现出色,在两种模型尺寸下均是最内存高效的模型,如 ModernBERT-base 在处理长上下文输入时,可处理的最大批量大小是其他模型的两倍,ModernBERT-large 在短上下文输入时虽略逊于原始 BERT-large,但在处理长上下文输入时,其可处理的批量大小比其他大型模型大至少 60%。
        五、结论
        ModernBERT 是仅编码器模型领域的重大突破,在广泛的分类和检索任务上超越现有模型,实现了更快的处理速度和更高的内存效率。通过采用现代架构改进,如 GeGLU 层、RoPE 位置嵌入和交替局部 - 全局注意力机制,结合大规模训练数据和优化的训练策略,模型在多个基准测试中取得领先成绩。其原生支持 8192 令牌的长序列处理,为长上下文应用提供了有力支持。尽管仍存在一些局限性,如仅适用于英语、可能存在数据偏差、有潜在的有害内容生成风险、训练目标单一以及未充分探索模型参数缩放等,但整体上推动了编码器技术的显著发展,为自然语言处理任务提供了更强大、高效的工具。






        欢迎光临 链载Ai (https://www.lianzai.com/) Powered by Discuz! X3.5