《大模型轻量化:模型压缩与训练加速》

本书内容

《大模型轻量化:模型压缩与训练加速》围绕大模型轻量化这一主题,系统地阐述大模型轻量化的基本理论与实现方法,旨在提升模型的部署效率和计算性能。全书分为3部分,共10章。第1部分(第1~5章),介绍大模型的背景与面临的问题,以及Transformer和MoE架构的基本原理;重点讲解模型压缩、训练加速和推理优化等核心技术,包括量化、蒸馏和剪枝等,并通过实际案例验证其效果。第2部分(第6、7章),重点介绍端侧学习与计算引擎优化策略,尤其是动态Batch和异构执行的工程实现。第3部分(第8~10章),针对高性能算子库与手工算子开发,分别以cuDNN、NEON、CUDA等为代表,揭示算子优化的细节,最后,以国产开源模型DeepSeek-V3为例,展现从训练到推理的综合优化方案。

本书作者

梁志远,博士,毕业于北京航空航天大学。长期从事人工智能、大语言模型的开发,专注于深度学习、自然语言处理、数据分析与智能决策等领域。主持或参与多项科研项目,涵盖模型训练优化、知识蒸馏、自动推理与多模态学习等方向。致力于推动人工智能技术在工业应用、智能交互与数据驱动中的实践与发展。

本书读者

《大模型轻量化:模型压缩与训练加速》提供全面实用的轻量化方法论,结合丰富代码示例与实践案例,适合从事大模型开发与优化的工程师,也为研究人员提供深入探讨的素材与视角,助力解决大模型训练与推理中的实际问题。

本书目录

第 1 部分  大模型概述与核心优化技术

第 1 章  大模型基本概念3

1.1  大模型的兴起与发展3

1.1.1  大规模神经网络4

1.1.2  Transformer编码器-解码器5

1.1.3  MoE架构7

1.2  计算资源与性能瓶颈9

1.2.1  GPU简介10

1.2.2  TPU简介12

1.2.3  网络带宽约束与分布式训练13

1.2.4  大模型的训练时间与计算资源消耗问题14

1.3  数据与隐私问题16

1.3.1  急剧增加的数据量16

1.3.2  数据隐私保护与合规性19

1.4  模型部署与运维20

1.4.1  模型部署基本概念20

1.4.2  云计算与边缘计算25

1.4.3  端侧部署29

1.4.4  大模型运行与维护30

1.5  本章小结34

1.6  思考题34

第 2 章  模型压缩、训练与推理36

2.1  模型压缩概述36

2.1.1  模型压缩简介36

2.1.2  常见的模型压缩方法分类37

2.2  训练加速基础38

2.2.1  数据并行与模型并行39

2.2.2  混合精度训练40

2.2.3  分布式训练框架:Horovod44

2.3  推理加速基础49

2.3.1  硬件加速与推理引擎49

2.3.2  低延迟与高吞吐量平衡55

2.3.3  推理优化实战:批量推理58

2.4  性能评估指标62

2.4.1  计算复杂度与性能指标62

2.4.2  延迟、吞吐量与精度之间的权衡63

2.4.3  评估工具与基准测试67

2.5  本章小结74

2.6  思考题75

第 3 章  模型格式转换76

3.1  模型格式的定义与转换76

3.1.1  常见的模型格式:ONNX、TensorFlow的SavedModel76

3.1.2  模型格式转换实现81

3.1.3  模型的兼容性问题86

3.2  跨框架模型转换90

3.2.1  TensorFlow到PyTorch的模型转换90

3.2.2  ONNX与TensorFlow、PyTorch的兼容性93

3.2.3  转换时的精度损失问题99

3.3  硬件相关的格式转换105

3.3.1  从PyTorch到TensorRT106

3.3.2  ONNX模型与NVIDIA TensorRT的兼容性112

3.3.3  模型格式与硬件加速的关系113

3.4  模型格式转换的工具与库114

3.4.1  使用ONNX进行跨平台转换115

3.4.2  TensorFlow Lite与Edge模型优化117

3.5  本章小结122

3.6  思考题123

第 4 章  图优化124

4.1  算子融合技术124

4.1.1  算子融合的原理124

4.1.2  典型算子融合算法的实现126

4.1.3  实验:算子融合对推理性能的提升129

4.2  布局转换与优化133

4.2.1  张量布局的原理133

4.2.2  内存访问优化与布局选择135

4.3  算子替换技术137

4.3.1  用低开销算子替换高开销算子137

4.3.2  常见的算子替换策略139

4.4  显存优化142

4.4.1  显存占用分析与优化142

4.4.2  梯度检查点与显存共享145

4.4.3  动态显存分配与内存池管理148

4.5  本章小结152

4.6  思考题152

第 5 章  模型压缩154

5.1  量化154

5.1.1  定点量化与浮点量化的区别154

5.1.2  量化算法与工具:TensorFlow Lite157

5.1.3  量化带来的精度损失问题160

5.2  知识蒸馏163

5.2.1  知识蒸馏的基本概念与应用场景163

5.2.2  知识蒸馏的损失函数与训练过程164

5.2.3  如何选择蒸馏-教师网络模型167

5.3  剪枝169

5.3.1  网络剪枝基本原理169

5.3.2  基于权重剪枝与结构化剪枝171

5.3.3  剪枝后的精度恢复方案177

5.4  二值化与极端压缩183

5.4.1  二值化网络的构建与训练183

5.4.2  二值化对计算与存储的影响186

5.5  本章小结189

5.6  思考题189

第 2 部分  端侧学习与高效计算引擎优化

第 6 章  端侧学习、端侧推理及计算引擎优化193

6.1  联邦学习概述193

6.1.1  联邦学习的基本概念与应用193

6.1.2  联邦学习中的隐私保护机制、通信与聚合算法194

6.2  数据处理与预处理197

6.2.1  数据清洗与增广技术197

6.2.2  数据均衡与过采样策略199

6.2.3  端侧数据处理的资源限制201

6.3  Trainer与优化器设计202

6.3.1  端侧训练的挑战与策略203

6.3.2  高效优化器(如SGD、Adam)的选择204

6.3.3  动态调整学习率与训练过程监控206

6.4  损失函数的设计与选择209

6.4.1  常见的损失函数与应用场景209

6.4.2  多任务学习中的损失函数设计210

6.4.3  损失函数的数值稳定性213

6.5  Benchmark设计与性能评估215

6.5.1  经典Benchmark与定制Benchmark215

6.5.2  推理与训练性能的综合评估216

6.5.3  性能瓶颈的识别与优化219

6.6  IR的作用与优化222

6.6.1  IR的定义及作用222

6.6.2  IR转换与优化策略223

6.7  Schema的设计与规范225

6.7.1  数据格式与模型接口的设计225

6.7.2  数据流与计算图的规范化228

6.8  动态Batch与内存调度231

6.8.1  动态Batch的选择与调整231

6.8.2  内存调度与性能优化234

6.8.3  优化内存利用率与减少内存溢出237

6.9  异构执行与优化240

6.9.1  GPU与CPU的异构计算模式原理240

6.9.2  多核心与多节点并行优化242

6.9.3  异构计算中的任务调度245

6.10  装箱操作与计算图优化247

6.10.1  通过装箱减少计算开销248

6.10.2  装箱优化对计算图的影响250

6.11  本章小结256

6.12  思考题257

第 7 章  高性能算子库简介258

7.1  cuDNN算子库概述258

7.1.1  cuDNN的主要功能258

7.1.2  常用算子(卷积、池化等)的实现259

7.1.3  算子加速实战:cuDNN在深度学习中的应用262

7.2  MKLDNN算子库概述265

7.2.1  MKLDNN与Intel硬件的优化265

7.2.2  MKLDNN中的高效算子实现266

7.2.3  多核支持与并行计算优化269

7.3  算子库的选择与性能比较271

7.3.1  cuDNN与MKLDNN的应用场景对比271

7.3.2  在不同硬件平台上的表现272

7.4  算子库的高效利用275

7.4.1  如何选择合适的算子库275

7.4.2  优化算子库接口与内存管理276

7.4.3  算法重构:提高算子性能278

7.5  本章小结282

7.6  思考题283

第 3 部分  高性能算子与深度学习框架应用

第 8 章  常用高性能算子开发实战287

8.1  NEON与ARM架构优化287

8.1.1  NEON指令集与深度学习加速287

8.1.2  ARM架构上的并行计算优化289

8.1.3  使用NEON实现卷积等算子加速291

8.2  CUDA与GPU优化294

8.2.1  CUDA编程模型与内存管理295

8.2.2  CUDA流与核函数优化297

8.2.3  高效利用GPU并行计算资源300

8.3  Vulkan与图形加速303

8.3.1  Vulkan的低级控制与优化304

8.3.2  使用Vulkan进行推理加速311

8.3.3  图形与计算并行加速的结合312

8.4  AVX与OpenCL的优化321

8.4.1  AVX与CPU优化的基本原理321

8.4.2  OpenCL与跨平台加速322

8.5  本章小结327

8.6  思考题327

第 9 章  TIK、YVM算子原理及其应用328

9.1  TIK算子库的应用328

9.1.1  TIK算子库与TensorFlow Lite的集成328

9.1.2  使用TIK进行卷积与矩阵乘法加速330

9.2  YVM算子库的应用332

9.2.1  YVM在深度学习推理中的高效应用332

9.2.2  YVM的硬件适配与优化334

9.3  本章小结346

9.4  思考题346

第 10 章  基于DeepSeek-V3分析大模型训练降本增效技术347

10.1  DeepSeek-V3架构概述347

10.1.1  DeepSeek-V3的架构设计与创新347

10.1.2  模型参数共享与层次结构优化350

10.2  DeepSeek-V3的训练降本技术分析354

10.2.1  FP8精度训练、混合精度训练与分布式训练354

10.2.2  动态计算图357

10.2.3  自适应批处理与梯度累积技术359

10.2.4  Sigmoid路由机制363

10.2.5  无辅助损失负载均衡算法365

10.2.6  DualPipe算法370

10.2.7  All-to-All跨节点通信375

10.3  DeepSeek-V3的推理加速技术377

10.3.1  量化与蒸馏在DeepSeek-V3中的应用377

10.3.2  模型压缩与推理速度提升381

10.4  本章小结383

10.5  思考题383

本书特色

本文摘自《大模型轻量化:模型压缩与训练加速》,获出版社和作者授权发布。

大模型轻量化:模型压缩与训练加速——jd链接https://item.jd.com/14414549.html#crumb-wrap

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐