用通俗易懂的方式讲解:一文讲透主流大语言模型的技术原理细节

大家好,今天的文章分享三个方面的内容:

  • 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. 大纲
      • 1. 大语言模型的细节
        • 1.0 transformer 与 LLM
        • 1.1 模型结构
        • 1.2 训练目标
        • 1.3 tokenizer
        • 1.4 位置编码
        • 1.5 层归一化
        • 1.6 激活函数
        • 1.7 Multi-query Attention 与 Grouped-query Attention
        • 1.8 并行 transformer block
        • 1.9 总结-训练稳定性
      • 2. LLM 的分布式预训练
        • 2.0 点对点通信与集体通信
        • 2.1 数据并行
        • 2.2 张量并行
        • 2.3 流水线并行
        • 2.4 3D 并行
        • 2.5 混合精度训练
        • 2.6 激活重计算
        • 2.7 ZeRO,零冗余优化器
        • 2.8 CPU-offload,ZeRO-offload
        • 2.9 Flash Attention
        • 2.10 vLLM: Paged Attention
      • 3. LLM 的参数高效微调
        • 3.0 为什么进行参数高效微调?
        • 3.1 prompt tuning
        • 3.2 prefix tuning
        • 3.3 adapter
        • 3.4 LLaMA adapter
        • 3.5 LoRA
        • 3.6 实验比较

用通俗易懂的方式讲解系列

  • 用通俗易懂的方式讲解:不用再找了,这是大模型最全的面试题库
  • 用通俗易懂的方式讲解:这是我见过的最适合大模型小白的 PyTorch 中文课程
  • 用通俗易懂的方式讲解:一文讲透最热的大模型开发框架 LangChain
  • 用通俗易懂的方式讲解:基于 LangChain + ChatGLM搭建知识本地库
  • 用通俗易懂的方式讲解:基于大模型的知识问答系统全面总结
  • 用通俗易懂的方式讲解:ChatGLM3 基础模型多轮对话微调)
  • 用通俗易懂的方式讲解:最火的大模型训练框架 DeepSpeed 详解来了
  • 用通俗易懂的方式讲解:这应该是最全的大模型训练与微调关键技术梳理
  • 用通俗易懂的方式讲解:Stable Diffusion 微调及推理优化实践指南
  • 用通俗易懂的方式讲解:大模型训练过程概述
  • 用通俗易懂的方式讲解:专补大模型短板的RAG
  • 用通俗易懂的方式讲解:大模型LLM Agent在 Text2SQL 应用上的实践
  • 用通俗易懂的方式讲解:大模型 LLM RAG在 Text2SQL 上的应用实践

技术交流

技术要学会分享、交流,不建议闭门造车。一个人走的很快、一堆人可以走的更远。

建立了大模型技术交流群,大模型学习资料、数据代码、技术交流提升, 均可加知识星球交流群获取,群友已超过2000人,添加时切记的备注方式为:来源+兴趣方向,方便找到志同道合的朋友。

方式①、微信搜索公众号:机器学习社区,后台回复:技术交流
方式②、添加微信号:mlc2060,备注:技术交流

0. 大纲

图片

1. 大语言模型的细节

1.0 transformer 与 LLM

图片

1.1 模型结构

图片

1.2 训练目标

图片

1.3 tokenizer

图片

1.4 位置编码

图片

1.5 层归一化

图片

1.6 激活函数

图片

1.7 Multi-query Attention 与 Grouped-query Attention

图片

1.8 并行 transformer block

图片

1.9 总结-训练稳定性

图片

2. LLM 的分布式预训练

图片

2.0 点对点通信与集体通信

图片

2.1 数据并行

图片

2.2 张量并行

图片

图片

2.3 流水线并行

图片

2.4 3D 并行

图片

2.5 混合精度训练

图片

2.6 激活重计算

图片

2.7 ZeRO,零冗余优化器

图片

2.8 CPU-offload,ZeRO-offload

图片

2.9 Flash Attention

图片

2.10 vLLM: Paged Attention

图片

3. LLM 的参数高效微调

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

图片

3.1 prompt tuning

图片

3.2 prefix tuning

图片

3.3 adapter

图片

3.4 LLaMA adapter

图片

3.5 LoRA

图片

3.6 实验比较

图片

4. 参考文献

图片


http://www.niftyadmin.cn/n/5320625.html

相关文章

准备好迎接新兴的汽车雷达卫星架构了吗?(TI文档)

引言 随着全球新车评估计划的安全等级和法规对主动安全功能的要求越来越严格,安全是当今车辆的一个不容置疑的特征。全球汽车制造商正在满足这些安全要求,并通过不断增强车辆内的高级驾驶辅助系统(ADAS)功能,包括自动紧急制动(AEB)、自适应巡…

【微信小程序】工具构建npm不生效问题

直接终端输入 npm init -y npm install express 会重新初始化package.json和重新刷新node_modules包 然后直接点npm构建 构建出来这个就完事了

怎么节约cdn流量- 速盾网络(Sudun)

节约CDN流量的有效方法:速盾网络(Sudun)的实用建议 在当今数字化时代,网站和应用程序依赖于CDN(内容分发网络)来加速内容传输,提高用户体验。然而,有效地管理CDN流量对于优化成本和…

【网络安全】【密码学】【北京航空航天大学】实验三、数论基础(下)【C语言实现】

实验三、数论基础(下) 一、实验内容 1、中国剩余定理(Chinese Remainder Theorem) (1)、算法原理 m1, m2, … mk 是一组两两互素的正整数,且 M m1 m2 … mk 为它们的乘积, 则如下的同余…

DNS解析和它的三个实验

一、DNS介绍 DNS:domain name server 7层协议 名称解析协议 tcp /53 主从之间的同步 udp/53 名字解析 DNS作用:将域名转换成IP地址的协议 1.1DNS的两种实现方式 1.通过hosts文件(优先级最高) 分散的管理 linux /etc/hos…

webpack原理和逆向实战

文章目录 什么是webpackwebpack基本原理webpack代码分析webpack代码抠取webpack全模块自吐webpack自动扣取总结 什么是webpack webpack是一个现代 JavaScript 应用程序的静态模块打包器(module bundler),负责分析翻译压缩打包代码。 上面的官网的一张示例图。 web…

【Spring Boot 3】【数据源】自定义MyBatis多数据源

【Spring Boot 3】【数据源】自定义MyBatis多数据源 背景介绍开发环境开发步骤及源码工程目录结构总结背景 软件开发是一门实践性科学,对大多数人来说,学习一种新技术不是一开始就去深究其原理,而是先从做出一个可工作的DEMO入手。但在我个人学习和工作经历中,每次学习新技…

Redis中字符串表示是如何设计与实现的?

文章目录 Redis中字符串表示是如何设计与实现的(SDS)?引言简单动态字符串底层数据结构为什么不用char *举个🌰如何优化append操作?总结 Redis中字符串表示是如何设计与实现的(SDS)? …