• 大语言模型开发:用开源模型开发本地系统
图书条目标准图
21年品牌 40万+商家 超1.5亿件商品

大语言模型开发:用开源模型开发本地系统

正版新书 新华官方库房直发 可开电子发票

80.24 6.8折 118 全新

库存20件

江苏无锡
认证卖家担保交易快速发货售后保障

作者范煜

出版社清华大学出版社

出版时间2024-09

版次1

装帧平装

货号文轩12.14

上书时间2024-12-16

   商品详情   

品相描述:全新
图书标准信息
  • 作者 范煜
  • 出版社 清华大学出版社
  • 出版时间 2024-09
  • 版次 1
  • ISBN 9787302670513
  • 定价 118.00元
  • 装帧 平装
  • 开本 其他
  • 页数 332页
  • 字数 518千字
【内容简介】
‘   本书旨在帮助读者理解开源大语言模型的架构、训练和推理过程,以及相关的源代码。主要研究对象是Meta开源的Llama模型。本书从Python Numpy实现单层感知机和神经网络开始,逐步讲解了如何实现Transformer模型和Llama模型。此外,本书还介绍了增量预训练模型、监督微调和人类反馈强化学习等模型训练过程。对于私有知识的加入,书中重点介绍了监督微调,也介绍了RAG中词向量的计算。本书采用循序渐进的方式,通过功能框图、代码分解执行、执行结果显示、背景知识补充等手段帮助读者理解模型和算法。
    本书的核心读者群体定位为大语言模型应用的开发人员,特别适合那些想从计算机视觉转向自然语言处理的人。此外,本书还适合作为大学本科生及研究生相关课程的参考教材使用。‘
【作者简介】
范煜,江苏南通人,毕业于南京航空航天大学,研究员级高级工程师,中国商业联合会数据分析专业委员会专家组成员,南通理工学院教师,上海范思软件有限公司创始人,中国移动集团、51CTO外聘讲师经常在全国各地讲授大数据、数据分析人工智能、大语言模型等方面课程。研发了Fancy Q&A大语言模型应用开发平台。著有《人工智能与ChatGPT》《数据革命:大数据价值实现方法、技术与案例》。兼具人工智能、大数据、软件、工业控制(嵌入式系统和软PLC)技术背景。目前主要从事基于大语言模型的知识库建设与知识问答应用的研究和开发。
【目录】
第1章 自然语言处理

1.1人工智能的技术构成 002

1.1.1 机器学习和深度学习的区别 002

1.1.2 表示学习与深度学习的关系 003

1.2自然语言处理的发展阶段 004

1.3规则驱动的方法 005

1.4统计方法 005

1.4.1 隐马尔可夫模型 006

1.4.2 条件随机场 007

1.5深度学习方法 008

1.5.1 Word2Vec词嵌入 008

1.5.2 循环神经网络 009

1.5.3 长短时记忆网络模型 009

1.5.4 门控循环单元模型 010

1.6序列到序列模型 011

1.7注意力机制 011

1.8Transformer模型 012

1.9预训练模型 012

1.10大语言模型 014

1.10.1 根据架构分类 014

1.10.2 根据训练方式和预测方式

     分类 015

第2章 深度学习基础

2.1深度学习 017

2.2感知机 017

2.2.1 前馈网络 018

2.2.2 权重更新 019

2.2.3 反向传播 021

2.3激活函数 022

2.3.1 常用激活函数 023

2.3.2 新型激活函数 024

2.4优化函数(算法) 026

2.4.1 梯度下降法 026

2.4.2 动量优化算法 027

2.4.3 AdaGrad优化算法 027

2.4.4 RMSProp优化算法 028

2.4.5 Adam优化算法 029

2.4.6 AdamW优化算法 030

2.5权值初始化 030

2.5.1 批归一化 031

2.5.2 层归一化 031

2.5.3 RMSNorm  032

2.6损失函数 033

2.6.1 均方误差 034

2.6.2 均方根误差 034

2.6.3 交叉熵损失 035

2.7模型评估 036

2.7.1 偏差/方差 036

2.7.2 过拟合与欠拟合 037

2.8正则化 038

2.9SoftMax函数 039

2.10简易神经网络搭建 039

2.11模型优化 042

2.11.1 梯度消失 042

2.11.2 梯度爆炸 043

2.11.3 优化手段 043

2.11.4 调参技巧 044

第3章 PyTorch开发基础

3.1深度学习框架 046

3.2PyTorch简介 046

3.3PyTorch安装 047

3.3.1 CUDA安装 047

3.3.2 阿里云GPU云服务器 049

3.3.3 安装PyTorch 049

3.3.4 安装其他库 050

3.3.5 检查开发环境 050

3.4张量 050

3.4.1 张量创建函数定义 050

3.4.2 张量创建函数清单 051

3.4.3 随机张量:torch.randn() 052

3.4.4 张量操作 054

3.4.5 CUDA张量 055

3.5梯度计算 055

3.5.1 导数与偏导数 055

3.5.2 导数规则 056

3.5.3 梯度 056

3.5.4 公式推导 056

3.5.5 自动梯度计算 057

3.5.6 代码解析 058

3.6反向传播 058

3.7torch.nn模块构建神经网络 060

3.7.1 nn.Linear层 060

3.7.2 nn.Sigmoid激活函数 061

3.7.3 nn.BCELoss损失函数 062

3.8torch.optim优化器 062

3.9训练、验证和测试过程 063

3.10用PyTorch实现神经网络 064

3.10.1 实现单层感知机 064

3.10.2 实现简单神经网络 065

3.10.3 用torch.nn实现简单神经

网络 067

3.11源代码常用模块 068

3.11.1 nn.Parameter类 068

3.11.2 typing模块 069

3.11.3 logging模块 070

3.11.4 dataclasses 071

3.11.5 Fire库 073

第4章 Transformer模型详解

4.1大语言模型的简介和分类 076

4.1.1 简介 076

4.1.2 分类 076

4.2Transformer模型 078

4.2.1 模型构成 078

4.2.2 因果解码器结构 080

4.3分词 081

4.3.1 词汇表 082

4.3.2 词汇表的生成 083

4.3.3 分词算法 083

4.3.4 字节对编码 084

4.3.5 句子片段 084

4.3.6 分词过程 085

4.3.7 词汇索引 085

4.4词嵌入 086

4.4.1 标记嵌入 087

4.4.2 位置编码 089

4.4.3 词汇索引和词嵌入向量关系 090

4.5位置编码方法 090

4.5.1 原生位置编码 090

4.5.2 旋转位置编码 092

4.5.3 位置编码的实现 093

4.5.4 Llama位置编码 094

4.5.5 长度扩展 097

4.6自注意力机制 098

4.6.1 原理 098

4.6.2 注意力分数的计算 099

4.6.3 多头注意力机制 101

4.6.4 分组查询注意力 102

4.6.5 Llama 2源代码分析 103

4.7残差连接和层归一化 106

4.7.1 预归一化 106

4.7.2 RMSNorm 107

4.7.3 Llama 2源代码分析 107

4.8前馈网络 108

4.8.1 激活函数 109

4.8.2 前馈网络隐藏层维度 110

4.8.3 Llama 2源代码分析 110

4.8.4 演示代码 112

4.9损失函数 113

4.10掩码 114

4.11PyTorch的nn.Transformer模块 115

4.11.1 模块组件 115

4.11.2 __call__函数 116

4.11.3 最简单的标准Transformer

模型 116

4.11.4 纯解码器模型 117

4.11.5 Llama 2模型 118

第5章 大语言模型

5.1什么是大语言模型 125

5.2GPT简介 125

5.3Llama简介 126

5.4Llama的训练 128

5.4.1 训练数据 128

5.4.2 预训练 129

5.5Llama 2 chat 130

5.5.1 监督微调 130

5.5.2 基于人类反馈的强化学习 130

5.6Llama 2模型结构 132

5.7Llama 2权重文件夹 134

5.8参数量计算 136

5.8.1 标准Transformer解码器模型 136

5.8.2 Llama 2模型 137

5.8.3用Transformers模块计算 139

5.8.4 直接解析模型文件 139

第6章 模型训练

6.1模型训练的种类 146

6.2Hugging Face训练环境 146

6.3Transformers库 147

6.3.1 主要功能 147

6.3.2 函数 148

6.4训练程序 149

6.5分词处理 149

6.5.1 相关名词 149

6.5.2 input IDs 150

6.5.3 特殊标记 150

6.5.4 AutoTokenizer 152

6.5.5 分词 153

6.5.6 下划线 154

6.5.7 填空 154

6.6量化技术 155

6.6.1 8位量化技术 155

6.6.2 LLM.int8() 156

6.6.3 NF4和QLoRA 157

6.6.4 BitsAndBytes模型 159

6.7优化技术 161

6.7.1 LoRA 161

6.7.2 PEFT库 162

6.8训练代码示例 164

6.8.1 导入库和函数 164

6.8.2 参数定义 164

6.8.3 加载模型 165

6.8.4 加载分词器 165

6.8.5 数据预处理 165

6.8.6 用LoRA权重调整模型 168

6.8.7 LoRA模型训练 168

6.8.8 模型的合并 170

6.8.9 模型推理 172

6.8.10 加载多个LoRA并随时切换 173

6.9加速技术和工具 175

6.9.1 DeepSpeed 176

6.9.2 FairScale 176

6.9.3 GPTQ 177

6.9.4 FSDP 177

6.10超长上下文 178

6.10.1 外推能力 178

6.10.2 外推手段 179

6.10.3 StreamingLLM 179

第7章 模型微调

7.1监督微调 182

7.2开源数据集 182

7.3数据集访问 182

7.3.1 datasets库 182

7.3.2 datasets常用的函数和类 183

7.3.3 加载数据集 183

7.3.4 数据集的处理 184

7.4开源微调数据集 186

7.4.1 主要数据集 186

7.4.2 数据集格式 186

7.4.3SQuAD 187

7.4.4 OSSIST1数据集格式 189

7.4.5 格式转换代码及分析 190

7.5主要的微调模型 193

7.5.1 Alpaca羊驼 193

7.5.2 Vicuna小羊驼 193

7.5.3 LLaMA.cpp 194

7.5.4 Guanco  194

第8章 人类反馈强化学习

8.1强化学习架构 196

8.2演员-评论家架构 197

8.3近端策略优化架构 197

8.4DeepSpeed Chat 198

8.5开源RLHF数据集 199

8.6训练数据读取 205

8.6.1 第1步:SFT监督微调数据 206

8.6.2 第2步:奖励模型微调数据 207

8.6.3 第3步:RLHF微调数据 209

8.7监督微调 210

8.8奖励模型微调 212

8.9RLHF微调 217

8.9.1 代码运行环境 218

8.9.2 准备训练数据 219

8.9.3 建立模型 221

8.9.4 演员模型、参考模型生成对数

概率 221

8.9.5 计算对数概率 223

8.9.6 计算期望奖励 225

8.9.7 KL散度 226

8.9.8 计算实际奖励 226

8.9.9 优势函数 228

8.9.10 计算优势和回报 228

8.9.11 损失函数 229

第9章 模型推理

9.1模型文件 233

9.2推理 233

9.2.1 单轮推理 235

9.2.2 多轮推理 235

9.3GPU推理 235

9.3.1 单卡 235

9.3.2 多卡 235

9.3.3 多机 236

9.4Hugging Face Transformers库 237

9.4.1 简介 237

9.4.2 Pipeline API 237

9.4.3 Model and Tokenizer API 239

9.4.4 单轮推理 240

9.4.5 多轮推理 242

9.4.6 LoRA推理 245

9.4.7 vLLM 245

9.5LLaMA.cpp 248

9.5.1 特色与优势 248

9.5.2 模型量化 249

9.5.3 k-quant量化 249

9.5.4 开发环境安装 250

9.5.5 构建执行程序 252

9.5.6 转换模型 252

9.5.7 推理 252

9.6Gradio 254

9.6.1 简介 254

9.6.2 基本用法 255

9.6.3 复杂交互 255

9.6.4 聊天机器人 257

9.6.5 Gradio多轮推理 258

9.7解码策略 261

9.7.1 常见解码策略 261

9.7.2 推理超参数 262

9.7.3 温度 262

9.7.4 top-k 263

9.7.5 top-p 264

9.7.6 重复惩罚 265

9.7.7 代码实现 266

9.8推理加速技术 270

9.8.1 简介 270

9.8.2 纯C推理 271

9.8.3 投机采样 271

9.8.4 Medusa 272

9.8.5 流式推理 272

第10章 中文私有模型开发

10.1基本思路 275

10.2中文词汇表 276

10.3模型下载 277

10.3.1 安装Git LFS 277

10.3.2 获取下载链接 277

10.3.3 直接单击链接分文件逐一

下载 278

10.4开发方案 279

10.4.1 演示系统开发 279

10.4.2 生产系统开发 280

10.4.3 实训系统开发 280

10.5中文语料 280

10.5.1 预训练语料 282

10.5.2 微调数据集 285

第11章 模型评估

11.1大语言模型评估 292

11.2评估指标 293

11.2.1 困惑度 293

11.2.2 HellaSwag 293

11.2.3 BLEU 294

11.2.4 ROUGE 294

11.2.5 METEOR 294

11.3基于上下文的学习 294

11.4Llama 2预训练模型的评估 296

11.5MMLU 299

11.6标准基准测试 299

11.7代码生成 300

11.7.1 Human-Eval代码生成基准

测试 300

11.7.2 MBPP程序生成基准测试 300

11.8考试AGI Eval 301

11.9GSM8K 302

11.10世界知识 302

11.10.1 NaturalQuestions 302

11.10.2 TriviaQA 303

11.11通义千问评测 303

11.12BBH 304

第12章 用于RAG的词向量计算

12.1信息整合 306

12.2向量数据库 307

12.3词向量 307

12.4嵌入向量生成模型 308

12.5池化技术 309

12.6计算词向量 310

12.6.1 使用OpenAI 310

12.6.2 使用Hugging Face  310

12.6.3 使用Llama 2  312

12.7批量生成嵌入向量 313

12.8池化算法 315

12.9词向量文档检索 317

12.10示例 318

12.10.1 PGVector简介 318

12.10.2 PGVector安装 318

12.10.3 向量数据库操作 319

参考文献 320
点击展开 点击收起

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP