AI知识分享AI知识分享
✿导航
  • 人工智能
  • 神经网络
  • 机器学习
  • 深度学习
  • 强化学习
  • 自然语言处理
  • 计算机视觉
  • 大模型基础
  • 动手学深度学习
  • 理论理解
  • 工程实践
  • 应用开发
  • AI For Everyone
  • AIGC_2024大会
  • AIGC_2025大会
  • Transformer
  • Pytorch
  • HuggingFace
  • 蒸馏
  • RAG
  • 目标检测
  • MCP
  • 概念
  • 意图识别
  • 工具
✿导航
  • 人工智能
  • 神经网络
  • 机器学习
  • 深度学习
  • 强化学习
  • 自然语言处理
  • 计算机视觉
  • 大模型基础
  • 动手学深度学习
  • 理论理解
  • 工程实践
  • 应用开发
  • AI For Everyone
  • AIGC_2024大会
  • AIGC_2025大会
  • Transformer
  • Pytorch
  • HuggingFace
  • 蒸馏
  • RAG
  • 目标检测
  • MCP
  • 概念
  • 意图识别
  • 工具
  • 大模型基础

    • 语言模型基础

      • 概述
      • 基于统计方法的语言模型
      • 基于神经网络的语言模型
      • 语言模型的采样方法
      • 语言模型的评测
    • 大语言模型架构

      • 概述
      • 主流模型架构
      • Encoder-only
      • Encoder-Decoder
      • Decoder-only
      • 非Transformer 架构
    • Prompt工程

      • 工程简介
      • 上下文学习
      • 思维链
      • 技巧
    • 参数高效微调

      • 概述
      • 参数附加方法
      • 参数选择方法
      • 低秩适配方法
      • 实践与应用
    • 模型编辑

      • 简介
      • 方法
      • 附加参数法
      • 定位编辑法
    • RAG

      • 基础
      • 架构
      • 知识检索
      • 生成增强
  • 动手学深度学习

    • 深度学习基础

      • 引言
      • 数据操作
      • 数据预处理
      • 数学知识(线代、矩阵计算、求导)
      • 线性回归
      • 基础优化方法
      • Softmax回归
      • 感知机
      • 模型选择
      • 过拟合和欠拟合
      • 环境和分布偏移
      • 权重衰减
      • Dropout
      • 数值稳定性
    • 卷积神经网络

      • 模型基本操作
      • 从全连接层到卷积
      • 填充和步长
      • 多个输入和输出通道
      • 池化层
      • LeNet
      • AlexNet
      • VGG
      • NiN网络
      • GoogleNet
      • 批量归一化
      • ResNet
    • 计算机视觉

      • 图像增广
      • 微调
      • 目标检测
      • 锚框
      • 区域卷积神经网络
      • 单发多框检测
      • 一次看完
      • 语义分割
      • 转置卷积
      • 全连接卷积神经网络
      • 样式迁移
    • 循环神经网络

      • 序列模型
      • 语言模型
      • 循环神经网络
      • 序列到序列学习
      • 搜索策略
    • 注意力机制

      • 优化算法

语言模型基础 - 基于神经网络的语言模型

基于RNN 的语言模型

RNN在训练过程中的问题

训练迭代过程早期的循环神经网络(RNN)预测能力非常弱,几乎不能给出好的生成结果。如果某一个unit产生了垃圾结果,必然会影响后面一片unit的学习。teacher forcing最初的motivation就是解决这个问题的。使用teacher-forcing,在训练过程中,模型会有较好的效果,但是在测试的时候因为不能得到ground truth的支持,存在训练测试偏差,模型会变得脆弱。

RNN的两种训练模式

  • free-running mode
    • 上一个时间步的输出作为下一个时间步的输入
    • 可能导致的问题:
      • 收敛速度慢。
      • 模型不稳定。
      • 模型性能差。
  • teacher-forcing mode
    • 直接使用训练数据的标准答案(ground truth)的对应上一项作为下一个state的输入,而不是使用模型生成的输出。
    • 可能导致的问题:
      • teacher-forcing过于依赖ground truth数据,在训练过程中,模型会有较好的效果,但是在测试的时候因为不能得到ground truth的支持,所以如果目前生成的序列在训练过程中有很大不同,模型就会变得脆弱。
    • 解决的方法:
      • 集束搜索(Beam Search)
        • 在预测单词这种离散值的输出时,一种常用方法是对词表中每一个单词的预测概率执行搜索,生成多个候选的输出序列。这个方法常用于机器翻译(MT)等问题,以优化翻译的输出序列。
      • 有计划地学习(Curriculum Learning)
        • Curriculum Learning是Teacher Forcing的一个变种:一开始老师带着学,后面慢慢放手让学生自主学。
        • Curriculum Learning即有计划地学习:
          • 使用一个概率p去选择使用ground truth的输出y(t)还是前一个时间步骤模型生成的输出h(t)作为当前时间步骤的输入x(t+1)。
          • 这个概率p会随着时间的推移而改变,称为计划抽样(scheduled sampling)。
          • 训练过程会从force learning开始,慢慢地降低在训练阶段输入ground truth的频率。

基于Transformer 的语言模型

在 Transformer 模型中,编码器负责理解和提取输入文本中的相关信息。这个过程通常涉及到处理文本的序列化形式,例如单词或字符,并且用自注意力机(Self-Attention)来理解文本中的上下文关系。编码器的输出是输入文本的连续表示,通常称为嵌入(Embedding)。这种嵌入包含了编码器从文本中提取的所有有用信息,并以一种可以被模型处理的格式(通常是高维向量)表示。

这个嵌入然后被传递给解码器。解码器的任务是根据从编码器接收到的嵌入来生成翻译后的文本(目标语言)。解码器也使用自注意力机制,以及编码器-解码器注意力机制,来生成翻译的文本。

LLMs中有的是只有编码器encoder-only,有的只有解码器decoder-only,有的是2者混合 encoder decoder hybrid。三者都属于Seq2Seq,sequence to sequence。并且字面意思是虽只有编码器encoder,实际上LLMs是能decoder一些文本和token的,也算是decoder。不过由于encoder-only类型的LLM不像decoder-only和encoder-decoder那些有自回归autoregressive,encoder-only集中于理解输入的内容,并做针对特定任务的输出。

自回归指输出的内容是根据已生成的token做上下文理解后一个token一个token输出的。

  1. Encoder-only架构的LLMs更擅长理解输入文本的深层含义,对文本内容进行分析、分类,包括情感分析,命名实体识别。
  2. Decoder-only架构的LLMs更擅长生成新的、连贯的文本,包括文本生成、翻译、图像生成。主要是是为了预测下一个输出的内容/token是什么,并把之前输出的内容/token作为上下文学习。
  3. Encoder-Decoder架构的LLMs更擅长处理输入和输出序列之间存在复杂映射关系的任务,以及捕捉两个序列中元素之间关系至关重要的任务。专注于将一种形式的序列转换成另一种形式,是经典的序列到序列任务的解决方案。

最近更新: 2026/1/24 10:44
Contributors: klc407073648
Prev
基于统计方法的语言模型
Next
语言模型的采样方法