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

自然语言处理(NLP)核心技术深度解析

一、词嵌入(Word Embedding)

1.1 Word2Vec:静态词向量的经典方法

核心思想:将词汇映射到低维连续向量空间,捕捉语义和语法关系。

两种模型:
  • CBOW(连续词袋模型):通过上下文预测中心词,适用于高频词学习。
    • 输入层:上下文词向量求和平均 → 投影层 → Softmax输出中心词概率。
  • Skip-Gram:通过中心词预测上下文,擅长低频词建模。

优化方法

  • 负采样:用噪声对比估计替代全词表Softmax,加速训练。
  • 层次Softmax:基于哈夫曼树分层分类,复杂度从 O ( V ) O(V) O(V) 降至 O ( log ⁡ V ) O(\log V) O(logV)

局限性

  • 静态嵌入:无法处理一词多义(如"bank"在金融/地理中的不同含义)。
  • 上下文无关:相同词在不同语境下向量不变。

1.2 BERT:动态上下文嵌入的突破

架构基础:基于Transformer Encoder堆叠(如BERT-base:12层,768隐层维度)。
动态特性:根据上下文生成词向量,解决多义词问题。

  • 例: “apple” 在 “apple pie” 与 “Apple stock” 中向量不同。
训练机制:
  • 双向上下文:同时利用左右两侧信息,与GPT的单向形成对比。
  • 子词切分:WordPiece分词解决未登录词问题(如"un##happy")。
变体改进:
  • RoBERTa:移除NSP任务,动态掩码,更大批次训练。
  • ALBERT:参数共享与嵌入分解降低内存消耗。

二、注意力机制(Attention Mechanism)

2.1 基础注意力模型

Seq2Seq瓶颈:传统RNN编码器-解码器存在长程信息丢失。

注意力计算

  • 评分函数:缩放点积(Scaled Dot-Product):

    A t t e n t i o n ( Q , K , V ) = s o f t m a x ( Q K T d k ) V Attention(Q, K, V) = softmax\left(\frac{QK^T}{\sqrt{d_k}}\right)V Attention(Q,K,V)=softmax(dk QKT)V

    其中 d k d_k dk 为键向量维度,用于调节点积值域。

  • 上下文向量:解码时动态加权编码器隐状态,聚焦关键信息。

2.2 自注意力(Self-Attention)

核心思想:序列内部元素间建立直接关联。

计算步骤:
  1. 线性变换生成Q、K、V矩阵。
  2. 计算注意力权重矩阵。
  3. 加权求和得到输出。

多头注意力:并行多个注意力头,捕获不同子空间特征。
实现方式:各头独立计算后拼接,通过线性层融合。

2.3 高效注意力变体

  • 稀疏注意力:限制每个位置关注局部区域(如Local Attention)。
  • 内存压缩:Linformer通过低秩投影减少K、V矩阵维度。

三、预训练任务设计

3.1 MLM(掩码语言模型)

操作流程:
  • 随机掩码15%的输入token(其中80%替换为[MASK],10%随机替换,10%保持原词)。
  • 模型基于双向上下文预测被掩码词。

技术挑战

  • 预训练-微调差异:微调阶段无[MASK]标记,通过部分替换缓解。
  • 预测效率:仅计算被掩码位置的损失,加速训练。

3.2 NSP(下一句预测)

任务目标:判断句子B是否为句子A的后续。

输入格式:[CLS] A [SEP] B [SEP]

争议点:后续研究发现NSP对某些任务贡献有限,RoBERTa等模型已弃用。

3.3 Span Prediction(片段预测)

改进思路:
  • 掩盖连续词片段而非单个词,提升对短语级语义的理解。
    • 例如:在SpanBERT中,随机掩盖长度2-10的连续span。

边界标记技术:使用[S]和[/S]标记片段边界,强化位置感知。

四、序列建模范式对比

4.1 自回归(Autoregressive)模型

典型代表:GPT系列、LSTM语言模型。

生成方式:
  • 严格从左到右逐词生成:

    p ( x t ∣ x < t ) p(x_t | x_{<t}) p(xtx<t)

应用场景:文本生成、机器翻译。

局限性

  • 解码速度:无法并行,生成长文本时延迟显著。
  • 暴露偏差(Exposure Bias):训练时使用真实上下文,推理时依赖模型预测。

4.2 非自回归(Non-autoregressive)模型

典型架构:BERT(掩码填充)、NAT(Non-Autoregressive Transformers)。

并行生成:
  • 同时预测所有位置,解码速度提升10-20倍。
实现方式:
  • 通过迭代修正(如Insertion Transformer)逐步优化输出。

挑战与改进

  • 多峰分布问题:使用知识蒸馏(用自回归模型作教师)。
  • 质量提升:引入长度预测模块(如GLAT中的动态长度控制)。

4.3 混合方法

  • 部分自回归:分块生成(如Blockwise Parallel Decoding)。
  • 条件式生成:在特定位置启用自回归(如困难预测点)。

五、前沿研究方向

  • 长文本建模:Transformer-XL的记忆复用机制,压缩远程依赖。
  • 多模态预训练:CLIP、Florence联合学习文本与图像表示。
  • 绿色AI:知识蒸馏(DistilBERT)、模型剪枝(Movement Pruning)降低计算成本。
  • 提示学习(Prompt Learning):通过模板设计激活预训练知识。

http://www.kler.cn/a/589577.html

相关文章:

  • ReLU对决Leaky ReLU:深度学习的生死博弈
  • 系统盘的制作
  • [蓝桥杯](布尔类型dfs)全球变暖
  • Ollama + CherryStudio:构建本地私有知识库
  • CC45.【C++ Cont】STL中的哈希表及练习
  • 定时器‘PWM和串口通信(20250317)
  • cesium 实现万级管网数据渲染,及pickImageryLayerFeatures原生方法改写
  • 网络性能指标
  • 五金打磨车间降温设备都哪些?
  • 在 TypeScript 中,两个看似相同的字符串用 `==` 比较返回 `false`
  • 【Agent】OpenManus-Prompt组件详细分析
  • C3P0数据库连接池技术详解及实战
  • 【网站检测工具Web-Check】Web-Check本地部署与远程访问解决方案全面掌控网站状态
  • CentOS 7 更换 YUM 源为国内
  • Android视频渲染SurfaceView强制全屏与原始比例切换
  • 【Go】go语言指针
  • 计算机网络:(二)计算机网络在我国发展与网络类别与性能 (附带图谱更好对比理解)
  • python | 输入日期,判断这一天是这一年的第几天
  • 基于CPLD电力/轨道交通3U机箱开关量输出板(DO)
  • KV 缓存简介