【大模型】Bert

一、背景与起源

  • 上下文建模的局限:在 BERT 之前,诸如 Word2Vec、GloVe 等词向量方法只能给出静态的词表示;而基于单向或浅层双向 LSTM/Transformer 的语言模型(如 OpenAI GPT)只能捕捉文本从左到右(或右到左)的上下文信息。
  • 论文贡献:2018 年 Google 的 Devlin 等人提出 BERT,通过真正的"深度双向"Transformer 编码器,在大规模语料上同时从左右两个方向学习上下文,显著提升了各类 NLP 任务的基线性能。

二、核心架构

  1. Transformer Encoder

    • BERT 完全由多层 Transformer Encoder 组成,每层包括多头自注意力(Multi-Head Self-Attention)和前馈网络(Feed-Forward Network),并配以层归一化与残差连接。
    • 常见版本有
      • BERT-Base:12 层 Encoder、768 维隐藏层、12 个注意力头,约 1.1 亿参数;
      • BERT-Large:24 层 Encoder、1024 维隐藏层、16 个注意力头,约 3.4 亿参数。
  2. Embedding 层

    • Token Embeddings:子词(WordPiece)级别的初始向量;
    • Segment Embeddings:用于区分句子 A/B,在下游需要句间关系时有效;
    • Position Embeddings:表示序列中各 token 的位置;
    • 三者逐元素相加后,送入第一层 Encoder。

三、输入表示

给定输入文本对 (Sentence A, Sentence B),BERT 构造如下序列:

复制代码
[CLS] tokens_A [SEP] tokens_B [SEP]
  • [CLS]:分类标记,其最终层输出向量用于下游分类任务;
  • [SEP]:分隔符标记,标识句子边界;
  • Segment ID:句子 A 中所有 token 的 segment embedding 为 0,句子 B 中为 1;
  • Attention Mask:指示哪些位置是真实 token(1)或填充(0)。

四、预训练任务

BERT 的成功很大程度上来自于两个预训练目标的设计

  1. Masked Language Model (MLM)
    • 思路 :随机遮蔽输入中 15% 的 token ([MASK]),让模型预测这些被遮蔽位置原本的词。
    • 细节
      • 遮蔽策略:80% 用 [MASK] 替换,10% 保留原词,10% 随机替换为词表中其他词;
      • 这样既避免模型过度依赖 [MASK],又能学习对真实 token 的预测能力。
  2. Next Sentence Prediction (NSP)
    • 思路:给定句子对,50% 概率为原序列中相邻的两句话("IsNext"),50% 概率随机抽取另一段文字("NotNext");模型判别它们是否具有上下文连续关系。
    • 作用:为下游的问答、自然语言推理等任务提供句间关系判断能力。

五、模型微调(Fine-Tuning)

  • 通用流程

    1. 在预训练的 BERT 模型上,追加一个或多个任务相关的输出层(如分类头、回归头、序列标注头等);
    2. 以较小的学习率(如 2e-5--5e-5)在下游任务标注数据上继续训练整个网络;
    3. 最终得到一个在该任务上性能优异的专用模型。
  • 示例任务

    • 文本分类 :取 [CLS] 对应的隐藏向量接一个全连接 + Softmax;
    • 命名实体识别:对每个 token 的输出向量接一个分类层,识别实体标签;
    • 问答阅读理解:为每个位置预测开始/结束概率,找到答案所在 span。

六、BERT 的优势与局限

优势

  1. 深度双向上下文:相比单向或浅层双向模型,在理解句子含义时更全面;
  2. 统一框架:一个预训练模型可微调到几十种不同任务,极大简化了模型部署;
  3. 强大基线:在 GLUE、SQuAD、MNLI 等多项公开基准上创纪录。

局限

  1. 计算与内存开销大:特别是 BERT-Large,在推理时对 GPU/TPU 资源要求高;
  2. 预训练目标简单:如 NSP 的效果有限,后续研究多选择取消或替换
  3. 固定长度限制:标准 BERT 的最大输入长度为 512,难以直接处理超长文本。

七、应用与生态

  • 下游生态

    自 BERT 发布以来,社区围绕预训练与微调构建了丰富工具与框架,例如 Hugging Face Transformers、TensorFlow Hub 等,用户可以方便地加载各类 BERT 模型及其变种。

  • 行业应用

    包括智能客服中的意图识别与槽位填充、搜索引擎中的语义匹配、法律/医药领域的文档分类与信息抽取等。

相关推荐
飞哥数智坊13 小时前
TRAE SOLO 正式版上线,限时免费活动开启
人工智能·trae·solo
Danceful_YJ13 小时前
34.来自Transformers的双向编码器表示(BERT)
人工智能·深度学习·bert
love530love13 小时前
【笔记】xFormers版本与PyTorch、CUDA对应关系及正确安装方法详解
人工智能·pytorch·windows·笔记·python·深度学习·xformers
中科岩创14 小时前
某地公园桥梁自动化监测服务项目
大数据·人工智能·物联网·自动化
kev_gogo14 小时前
【链式法则】神经网络中求导时w既是常数也是自变量的辨析(能否对常数求导?)
人工智能·深度学习·神经网络
文真同学14 小时前
《动手学深度学习》6.3~6.4
人工智能·深度学习
受之以蒙14 小时前
赋能 AI 与具身智能:Rust ndarray 构建安全高效的数据底座
人工智能·笔记·rust
Fuly102414 小时前
LangGraph基础教程(4)---LangGraph的核心能力
人工智能·langchain
一如年少模样丶15 小时前
AI 智能体的终极记忆方案?来认识一下 Graphiti
人工智能
机器学习之心15 小时前
NRBO-XGBoost+SHAP分析+新数据预测!机器学习可解释分析不在发愁!提供9种混沌映射方法(tent、chebyshev、singer等)
人工智能·机器学习·nrbo-xgboost