第 1章 预备知识 3
1.1 Python语言简介 3
1.2 配置Miniconda虚拟环境 5
1.3 Python集成开发环境PyCharm 6
1.4 重要的第三方库 9
1.5 Jupyter Notebook的安装和使用 16
1.6 计算加速硬件GPU 18
1.7 与深度学习相关的网站 19
第 2章 大语言模型初探 20
2.1 大语言模型的分类 20
2.2 使用Transformers库在本地部署开源大语言模型 20
2.3 使用开源的Ollama工具部署开源大语言模型 26
2.4 Google Colab 28
第3章 迭代算法求函数交点 31
3.1 牛顿法求函数交点 31
3.2 梯度下降法求函数交点 37
3.3 迭代算法求函数解的通用形式化描述 40
第4章 单层神经网络 42
4.1 人脑神经元 42
4.2 人工神经元 43
4.3 二元线性回归 43
4.4 单层神经网络的训练方法及实现 45
4.5 多输出单层神经网络 51
4.6 单层神经网络的局限性 51
第5章 多层神经网络 55
5.1 带激活函数的单层神经网络 55
5.2 常用的激活函数 56
5.3 带一个隐藏层的神经网络示例 61
5.4 梯度反向传播算法 62
5.5 使用带一个隐藏层的神经网络表示XOR函数 66
5.6 深度神经网络 68
第6章 PyTorch库简介 69
6.1 PyTorch的主要模块 70
6.2 PyTorch的torch.tensor模块 71
6.3 PyTorch提供的神经网络构建块 76
6.4 PyTorch提供的激活函数 77
6.5 PyTorch提供的损失函数 77
6.6 PyTorch提供的优化算法 80
6.7 PyTorch提供的数据加载与处理工具 83
6.8 PyTorch的自动微分功能 85
6.9 模型的保存和加载 88
第7章 模型设计和训练 89
7.1 解决机器学习问题的步骤 89
7.2 清洗和预处理数据 90
7.3 设计模型 92
7.4 训练模型 93
7.5 验证模型 95
7.6 部署及持续改进模型 95
7.7 实战:手写体数字识别 95
第二部分 大语言模型的网络架构
第8章 语言模型和分词器 101
8.1 语言模型 101
8.2 分词器 104
第9章 嵌入 114
9.1 向量的模与点积 114
9.2 神经网络中的嵌入层 115
9.3 句子嵌入 123
第 10章 点积注意力 126
10.1 注意力是什么 126
10.2 注意力的计算 127
第 11章 Transformer注意力 136
11.1 Transformer注意力概述 136
11.2 Transformer单头注意力的实现 139
11.3 Transformer多头注意力的实现 142
11.4 开源Qwen2模型中的多头注意力实现 144
第 12章 Transformer架构 146
12.1 Transformer架构简介 146
12.2 编码器 152
12.3 解码器 152
12.4 编码器-解码器 153
12.5 编码器和解码器的区别 154
12.6 一个完整的编码器例子 155
第 13章 BERT及其应用 159
13.1 BERT的网络模型 159
13.2 BERT的训练 161
13.3 BERT应用实战:中文文本情感分类 162
第 14章 开源大语言模型及其应用 171
14.1 大语言模型的网络架构 171
14.2 预测下一个token的概率分布 176
14.3 采样策略 177
第三部分 大语言模型的训练
第 15章 大语言模型的训练 183
15.1 大模型训练方法的演进过程 183
15.2 预训练 185
15.3 微调 185
15.4 上下文学习 187
15.5 缩放定律 187
15.6 涌现能力 188
第 16章 大语言模型的预训练 191
16.1 预训练数据来源 192
16.2 预训练数据的处理 192
16.3 预训练的手动实现 194
16.4 使用Transformers库的Trainer类进行预训练 200
第 17章 大语言模型的指令微调 202
17.1 指令微调的训练数据格式 202
17.2 指令微调的方法 205
17.3 实战:对Qwen2.5进行LoRA微调 208
第 18章 大语言模型的偏好微调 217
18.1 偏好微调的数据格式 217
18.2 不能用指令微调的方法进行偏好微调 218
18.3 RLHF算法 218
18.4 偏好微调的DPO算法 222
18.5 DPO微调实战 225
第 19章 大语言模型压缩技术 230
19.1 量化 230
19.2 剪枝 238
19.3 蒸馏 239
第四部分 大语言模型的演化、评估和应用
第 20章 架构的演化和大语言模型的评估 247
20.1 架构的演化 247
20.2 大语言模型的评估 254
第 21章 大语言模型应用技术 259
21.1 幻觉及其产生的原因 260
21.2 RAG 260
21.3 提示词工程 264
21.4 流式输出 271
21.5 AI工程 272
第 22章 对大语言模型的理解和思考 273
22.1 深层次思考大语言模型是什么 273
22.2 关于大语言模型发展过程的思考 276
第五部分 大语言模型的应用实例
第 23章 实战案例:基于RAG的PDF论文阅读器 281
23.1 如何支持多轮对话 282
23.2 完整的代码 283
第 24章 实战案例:A股股票分析智能体 291
24.1 如何获取A股股票信息 292
24.2 如何生成PDF文件 293
24.3 如何让大语言模型给出投资建议 294
24.4 完整的代码 295
附录 本书配套代码文件说明 304