主流大语言模型的技术原理细节

2023-11-09

作者:spring

1.比较 LLaMA、ChatGLM、Falcon 等大语言模型的细节:tokenizer、位置编码、Layer Normalization、激活函数等。2. 大语言模型的分布式训练技术:数据并行、张量模型并行、流水线并行、3D 并行、零冗余优化器 ZeRO、CPU 卸载技术 ZeRo-offload、混合精度训练、激活重计算技术、Flash Attention、Paged Attention。3. 大语言模型的参数高效微调技术:prompt tuning、prefix tuning、adapter、LLaMA-adapter、 LoRA。

0. 大纲

bb4d86f048a74bba74847d508154cff1.png

1. 大语言模型的细节

1.0 transformer 与 LLM

032a042c5ed1b8e5cd09e9332a2956dc.png

1.1 模型结构

d284aad61d9d62151767c4ab3efe7c22.png

1.2 训练目标

ec7f04efadf294ff4eeb674f036731a3.png

1.3 tokenizer

87521d7e9c27a9c4c8a98777cb7d0d00.png

1.4 位置编码

7963263396cfe3eb36f782ce49658af5.png

1.5 层归一化

ea707ef3f33b9125ad98d2f39757520e.png

1.6 激活函数

9b6fdc0c3265765e18451156f3fa3205.png

1.7 Multi-query Attention 与 Grouped-query Attention

778e2968625aa6816d72a1d4a9802953.png

1.8 并行 transformer block

56d42f1df44f96e1675e311e6c625c13.png

1.9 总结-训练稳定性

261ede8e555e59033764cde8d3117064.png

2. LLM 的分布式预训练

5fa7a5eb22906d43601edb721d4d3cfa.png

2.0 点对点通信与集体通信

c791101b332bad8919bcbefe15fda8f1.png

2.1 数据并行

55d8e433acdb66b2f36202510a37e54e.png

2.2 张量并行

f140ca1087c6295a80dc222ad11163e0.png 39acd5480fa6fe7bf66d40e5f87bfed9.png

2.3 流水线并行

b0cdc938de938dfa27fccb1c02a1721c.png

2.4 3D 并行

f3af2391f1f31f40c687aed121633e85.png

2.5 混合精度训练

6a60c6b6851ddfae7e108d28b4bfd304.png

2.6 激活重计算

09b56f29e91116fc756ce4b4dfcda046.png

2.7 ZeRO,零冗余优化器

9b4c2b3d9916f5e9920f3edc89f09601.png

2.8 CPU-offload,ZeRO-offload

c60502266dc553077f4bdc8f727a0a2f.png

2.9 Flash Attention

130f62db0c6ebae41b8d5035a1617f66.png

2.10 vLLM: Paged Attention

c41f0e30ee21054881f8b99ad004ae39.png

3. LLM 的参数高效微调

3.0 为什么进行参数高效微调?

72246fe9fce8f1d900bab92d134fcb68.png

3.1 prompt tuning

8d13bdbc82377e539a5bd2b8be23c533.png

3.2 prefix tuning

cda18b4e885d04a450bb416c2c147d5a.png

3.3 adapter

d537af7a96f879e3af6acf4f3d5c5fd0.png

3.4 LLaMA adapter

79c1daafd95b4be92a481bbe441444d8.png

3.5 LoRA

1d947b30aa27bd9df0fa2f09ef2591ae.png

3.6 实验比较

b66188276f432a701852a72ced98e105.png

4. 参考文献

001a8920dbc201d595df2bb1a40f0761.png

END

625ff73b35bbbef891a1e26b1c8b4829.png

分享

收藏

点赞

在看

2b04ff071752fa8df317ef1b6f880f92.gif

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

主流大语言模型的技术原理细节 的相关文章

随机推荐

  • Redis集合类型数据的统计模式

    Redis集合类型常见的四种统计模式 包括聚合统计 排序统计 二值状态统计和基数统计 聚合统计 所谓的聚合统计 就是指统计多个集合元素的聚合结果 包括 统计多个集合的共有元素 交集统计 把两个集合相比 统计其中一个集合独有的元素 差集统计
  • 【论文笔记】VLMO: Unified Vision-Language Pre-Training with Mixture-of-Modality-Experts

    1 介绍 1 1 视觉语言 VL 预训练的两种主流架构 1 dual encoder 分别对图像和文本进行编码 优点 检索任务 缺点 图像和文本之间的浅层交互不足以处理复杂的VL分类任务 2 单编码器 对模型图像 文本对进行跨模态关注的融合
  • 服务中找不mysql

    右键 计算机 点击 管理 然后点击 服务和应用程序 双击 服务 发现里面没有 MySql的服务 找到MySQL安装目录 我的是C Program Files MySQL MySQL Server 8 0 bin 打开cmd 进入MySQL的
  • java杨辉三角根据用户输入的行数n来显示杨辉三角的行数。

    import java util Scanner public class Main06 public static void main String args Scanner scanner new Scanner System in i
  • 高斯白噪声及Matlab常用实现方法

    http blog sina com cn s blog 4d7c97a00101cv5h html 一 概念 英文名称 white Gaussian noise WGN定义 均匀分布于给定频带上的高斯噪声 所谓高斯白噪声中的高斯是指概率分
  • 关于硬链接和软连接(符号链接)的区别

    linux系统下提供ln指令来进行文件链接 文件链接主要分为硬链接和软链接 硬链接 由于linux下的文件是通过索引节点 Inode 来识别文件 硬链接可以认为是一个指针 指向文件索引节点的指针 系统并不为它重新分配inode 每添加一个一
  • 计算机科学导论(5):计算机网络

    原文链接 计算机科学导论 5 计算机网络 远行的舟 参考 纪录片 互联网时代 计算机科学导论 TCP IP 入门经典 维基百科 阮一峰老师博客 哈尔滨工业大学阿里巴巴技术联盟互联网笔试面试整理 HTTP 权威指南 1776 年 3 月 瓦特
  • 几种负荷预测方法及其应用

    1 趋势分析法 趋势分析法称之趋势曲线分析 曲线拟合或曲线回归 它是迄今为止研究最多 也最为流行的定量预测方法 它是根据已知的历史资料来拟合一条曲线 使得这条曲线能反映负荷本身的增长趋势 然后按照这个增长趋势曲线 对要求的未来某一点估计出该
  • rust 学习笔记1

    RUST Rust 语言是一种高效 可靠的通用高级语言 其高效不仅限于开发效率 它的执行效率也是令人称赞的 是一种少有的兼顾开发效率和执行效率的语言 Rust的应用 Rust 语言可以用于开发 传统命令行程序 Rust 编译器可以直接生成目
  • MFC 单文档中添加OnPaint

    单文档中添加OnPaint 方法 1 在xxxView h里添加 生成的消息映射函数 protected DECLARE MESSAGE MAP public afx msg void OnPaint 2 实现OnPaint 3 在xxxV
  • 微信小程序渗透测试

    一 工具准备 burpsuite 夜神模拟器 把微信装好 node js wxappUnpacker 二 获取源码 1 配置Burp和模拟器 模拟器需导入ca证书 打开模拟器的WLAN gt 高级设置 gt 输入物理机的ip以及一个没被占用
  • Gof23设计模式之原型模式

    1 概述 用一个已经创建的实例作为原型 通过复制该原型对象来创建一个和原型对象相同的新对象 2 结构 原型模式包含一下角色 抽象原型类 规定了具体原型对象必须实现的clone 方法 具体原型类 实现了抽象圆形类的clone 方法 它是可被复
  • ASP.NET开发公众号时微信支付遇到签名错误

    请求返回来xml数据
  • 7-21 口罩发放(标准注释+测试点说明)

    为了抗击来势汹汹的 COVID19 新型冠状病毒 全国各地均启动了各项措施控制疫情发展 其中一个重要的环节是口罩的发放 某市出于给市民发放口罩的需要 推出了一款小程序让市民填写信息 方便工作的开展 小程序收集了各种信息 包括市民的姓名 身份
  • 事件流及事件处理程序总结

    事件流 事件捕获阶段 处于目标阶段 事件冒泡阶段 事件捕获与事件冒泡的区别 如何阻止事件的默认行为 以及如何阻止事件冒泡 事件捕获和事件冒泡的概念是相反的 事件捕获 不具体的节点更早接收到事件 而最具体的节点最后接收到事件 DOM2级事件
  • EndNote在Word中插入文献不能自动生成编号 - 解决方案

    本文出处 新浪博客 小数码植物摄影 之http blog sina com cn s blog 629be3eb0100sih3 html 新浪博客 小数码植物摄影 首页 http blog sina com cn u 1654383595
  • Android Studio中怎样引用图片资源

    随着不断接触Android Studio 越来越发现和Eclipse有着巨大的差别 不管是表面的目录结构 还是内在对各种资源的管理 本篇就来聊聊Android Studio中怎样来显示图片 以及与Eclipse中的差别 在Eclipse中依
  • requests爬虫遇到404怎么办_Python爬虫基础库和实践

    爬虫有三大基础库Requests BeautifulSoup和Lxml 这三大库对于初学者使用频率最高 现在大家一起来看看这基础三大库的使用 Requests库 Requests库的作用就是请求网站获取网页数据 Code res reque
  • C# Modbus Rtu实现

    Modbus Rtu的实现与Modbus Tcp的实现类似 C ModBus Tcp的学习及Master的实现 我们还是需要借用一个开源库NModbus4 在vs中 打开NuGet管理器 安装NModbus4 具体实现 具体实现与之前的Mo
  • 主流大语言模型的技术原理细节

    作者 spring 1 比较 LLaMA ChatGLM Falcon 等大语言模型的细节 tokenizer 位置编码 Layer Normalization 激活函数等 2 大语言模型的分布式训练技术 数据并行 张量模型并行 流水线并行