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

大模型-模型架构-长上下文模型

一、实现长上下文模型的研究方向

  • 拓展位置编码
  • 调整上下文窗口

二、拓展位置编码

1、相关概念
  • 外推能力:超出原始上下文窗口的文本上,也表现出较好的建模能力,称之为外推能力
  • 关键子空间:某些子空间长度超过上下文窗口长度,导致模型在这些子空间上无法对完整的旋转周期进行训练,这些子空间通常被成为关键子空间
2、原理

基于RoPE进行改进

3、方案
  • 直接微调
    • 原理:直接使用长文本进行微调
  • 位置索引修改
    • 原理:通过修改位置索引来调整所有子空间的旋转角度,从而保证其不超过原始上下文窗口所允许的最大值
    • 方式一:位置内插
      • 原理:对于位置索引进行特定比例缩放
      • 优点:训练代价小
      • 缺点:对处理短文本会造成负面影响
    • 方式二:位置截断
      • 原理:不同位置采用不同方式,依据语言建模的局部性原理,对模型中近距离敏感的位置索引进行保留,同时截断或插值处理远距离位置的索引,确保其不超过预设的最大旋转角度
      • 优点:模型无需训练即可应用于更长上下文,并且依然保持对短文本的建模能力
      • 缺点:需要对注意力矩阵进行二次运算,增加了算力消耗
  • 基修改
    • 原理:对子空间的基进行缩放,从而影响旋转角度,从而保证上下文窗口的正常处理
    • 方式一:底数调整
      • 原理:按照一定比例增大底数,从而缩小旋转角度
    • 方式二:基截断
      • 原理:根据某一个阈值调整旋转角度

三、调整上下文窗口

1、原理

采用受限的注意力机制来调整原始的上下文窗口

2、方案
  • 并行上下文窗口
    • 原理:文本分段、独立编码,共享位置编码,生成阶段,通过调整注意力掩码,使得后续生成的词元能访问先前的所有词元
    • 缺点:无法有效区分不同的段落顺序,某些情况下会限制模型能力
  • ^形上下文窗口
    • 原理:有选择性地查询词元邻近的及序列起始词元,忽略超出这一范围的其他词元
    • 优点:能生成无限长的流畅文本
    • 缺点:无法有效利用被忽略部分
  • 词元选择
    • 原理:跳出最重要的一部分词元,以实现对于完整注意力的有效拟合
    • 实现方式
      • 方式1:查询词元相似度
      • 方式2:查询与词元所在分块的相似度

四、长文本数据准备

1、数据量

1B长文本数据量+百部训练=7B或13B的LLaMA,上下文窗口拓展到100K

2、数据混合
  • 领域分布多样化
  • 长文本类型多样化
    • 去除杂乱型(杂乱无章的文本)
    • 保留整体型(完整有意义的长文)
    • 保留聚合型(多篇相关文本的聚合)

http://www.mrgr.cn/news/30422.html

相关文章:

  • ubuntu18.04上存储空间分析
  • 低空载功耗,高能源利用率 BDA5-20W BOSHIDA DCDC
  • 【Vue】Vue3.0(二十四)Vue3.0中$refs 、$parent 的概念和使用场景
  • uniapp—android原生插件开发(4uniapp引用aar插件)
  • 编程之路,从0开始:练习篇
  • 如何在vscode中安装git详细新手教程
  • 3.使用 VSCode 过程中的英语积累 - Selection 菜单(每一次重点积累 5 个单词)
  • 面试官:什么是CAS?存在什么问题?
  • 【海康威视面经】
  • gcc升级(含命令行升级、手动升级两种方式)
  • 数据结构之二叉树遍历
  • 字节推音乐生成神器 Seed-Music 支持多样化输入和精确控制
  • C++初阶学习第六弹------标准库中的string类
  • 【新手上路】衡石分析平台使用手册-认证方式
  • 关于Java数据结构中集合的一个小知识
  • python 函数简记
  • 【iOS】KVC
  • 95分App引领年轻人省钱赚钱新风尚,闲置也能变宝藏
  • 内存管理篇-27寄存器映射:ioremap
  • 打工人、设计师必备的AI抠图工具
  • 索引的介绍
  • 音视频入门基础:AAC专题(10)——FFmpeg源码中计算AAC裸流每个packet的pts、dts、pts_time、dts_time的实现
  • chapter15-泛型——(自定义泛型)——day20
  • 力扣232:用栈实现队列
  • 【python】多线程
  • Java 之网络编程小案例