新書推薦:
《
中国王朝内争实录:宠位厮杀
》
售價:NT$
281.0
《
凡事发生皆有利于我(这是一本读了之后会让人运气变好的书”治愈无数读者的心理自助经典)
》
售價:NT$
203.0
《
未来特工局
》
售價:NT$
254.0
《
高术莫用(十周年纪念版 逝去的武林续篇 薛颠传世之作 武学尊师李仲轩家世 凸显京津地区一支世家的百年沉浮)
》
售價:NT$
250.0
《
英国简史(刘金源教授作品)
》
售價:NT$
449.0
《
便宜货:廉价商品与美国消费社会的形成
》
售價:NT$
352.0
《
读书是一辈子的事(2024年新版)
》
售價:NT$
352.0
《
乐道文库·什么是秦汉史
》
售價:NT$
367.0
|
編輯推薦: |
本套装涵盖PyTorch深度学习框架的用法与实战案例、ChatGLM大模型基础知识,以及利用ChatGLM3开发文本生成、智能问答、信息抽取、财务预警等实际应用的过程。
通过本套图书的学习,读者可以掌握PyTorch框架下ChatGLM3大模型的应用开发方法,并按自己的业务需求开发出可用的大模型应用。
|
內容簡介: |
《ChatGLM3大模型本地化部署、应用开发与微调》内容简介
《ChatGLM3大模型本地化部署、应用开发与微调》作为《PyTorch 2.0深度学习从零开始学》的姊妹篇,专注于大模型的本地化部署、应用开发以及微调等。《ChatGLM3大模型本地化部署、应用开发与微调》不仅系统地阐述了深度学习大模型的核心理论,更注重实践应用,通过丰富的案例和场景,引导读者从理论走向实践,真正领悟和掌握大模型本地化应用的精髓。
全书共分13章,全方位、多角度地展示了大模型本地化实战的完整方案,内容包括大模型时代的开端、PyTorch 2.0深度学习环境搭建、基于gradio的云上自托管ChatGLM3部署实战、使用ChatGLM3与LangChain实现知识图谱抽取和智能问答、适配ChatGLM3终端的Template与Chain详解、ChatGLM3多文本检索的增强生成实战、构建以人为本的ChatGLM3规范化Prompt提示工程、使用ChatGLM3的思维链构建、GLM源码分析与文本生成实战、低资源单GPU微调ChatGLM3实战、会使用工具的ChatGLM3、上市公司财务报表非结构化信息抽取实战、上市公司财务报表智能问答与财务预警实战。
《ChatGLM3大模型本地化部署、应用开发与微调》适合大模型的初学者、有一定基础的大模型研究人员、大模型应用开发人员。同时,《ChatGLM3大模型本地化部署、应用开发与微调》还可作为高等院校或高职高专相关专业大模型课程的教材,助力培养新一代的大模型领域人才。
《从零开始大模型开发与微调:基于PyTorch与ChatGLM》内容简介
大模型是深度学习自然语言处理皇冠上的一颗明珠,也是当前AI和NLP研究与产业中最重要的方向之一。本书使用PyTorch 2.0作为学习大模型的基本框架,以ChatGLM为例详细讲解大模型的基本理论、算法、程序实现、应用实战以及微调技术,为读者揭示大模型开发技术。本书配套示例源代码、PPT课件。
《从零开始大模型开发与微调:基于PyTorch与ChatGLM》共18章,内容包括人工智能与大模型、PyTorch 2.0深度学习环境搭建、从零开始学习PyTorch 2.0、深度学习基础算法详解、基于PyTorch卷积层的MNIST分类实战、PyTorch数据处理与模型展示、ResNet实战、有趣的词嵌入、基于PyTorch循环神经网络的中文情感分类实战、自然语言处理的编码器、预训练模型BERT、自然语言处理的解码器、强化学习实战、只具有解码器的GPT-2模型、实战训练自己的ChatGPT、开源大模型ChatGLM使用详解、ChatGLM高级定制化应用实战、对ChatGLM进行高级微调。
《从零开始大模型开发与微调:基于PyTorch与ChatGLM》适合PyTorch深度学习初学者、大模型开发初学者、大模型开发人员学习,也适合高等院校人工智能、智能科学与技术、数据科学与大数据技术、计算机科学与技术等专业的师生作为教学参考书。
《PyTorch深度学习与企业级项目实战》内容简介
《PyTorch深度学习与企业级项目实战》立足于具体的企业级项目开发实践,以通俗易懂的方式详细介绍PyTorch深度学习的基础理论以及相关的必要知识,同时以实际动手操作的方式来引导读者入门人工智能深度学习。本书配套示例项目源代码、数据集、PPT课件与作者微信群答疑服务。
《PyTorch深度学习与企业级项目实战》共分18章,内容主要包括人工智能、机器学习和深度学习之间的关系,深度学习框架PyTorch 2.0的环境搭建,Python数据科学库,深度学习基本原理,PyTorch 2.0入门,以及13个实战项目:迁移学习花朵识别、垃圾分类识别、短期电力负荷预测、空气质量预测、手写数字识别、人脸识别与面部表情识别、图像风格迁移、糖尿病预测、基于GAN 生成动漫人物画像、基于大语言模型的NLP、猴痘病毒识别项目实战、X光肺部感染识别项目实战、乐器声音音频识别项目实战。
《PyTorch深度学习与企业级项目实战》适合PyTorch深度学习初学者、深度学习算法从业培训人员、深度学习应用开发人员阅读,也适合作为高等院校或高职高专深度学习课程的教材。
|
目錄:
|
《ChatGLM3大模型本地化部署、应用开发与微调》目录
目 录
第1章 大模型时代的开端 1
1.1 大模型的历史与发展 1
1.1.1 大模型的“涌现” 1
1.1.2 深度学习与大模型的起源 3
1.1.3 大模型的概念与特点 4
1.1.4 大模型开启了深度学习的新时代 5
1.2 为什么要使用大模型 6
1.2.1 大模型与普通模型的区别 7
1.2.2 为什么选择ChatGLM 8
1.2.3 大模型应用场合与发展趋势 9
1.3 本章小结 10
第2章 PyTorch 2.0深度学习环境搭建 11
2.1 安装Python开发环境 12
2.1.1 Miniconda的下载与安装 12
2.1.2 PyCharm的下载与安装 14
2.1.3 softmax函数练习 18
2.2 安装PyTorch 2.0 19
2.2.1 NVIDIA 10/20/30/40系列显卡选择的GPU版本 19
2.2.2 PyTorch 2.0 GPU NVIDIA运行库的安装 19
2.2.3 Hello PyTorch 22
2.3 Hello ChatGLM3 23
2.3.1 ChatGLM3简介与安装 23
2.3.2 CPU版本的ChatGLM3推演 25
2.3.3 GPU(INT4或INT8量化)版本的ChatGLM3推演 26
2.3.4 GPU(half或float量化)版本的ChatGLM3推演 28
2.3.5 离线状态的ChatGLM3的使用 29
2.3.6 ChatGLM的高级使用 30
2.4 本章小结 31
第3章 基于gradio的云上自托管ChatGLM3部署实战 32
3.1 gradio的基本使用详解 32
3.1.1 从gradio的Interface开始 33
3.1.2 gradio输入与输出组件 35
3.1.3 启动gradio的launch 41
3.1.4 gradio中多样化的输入和输出组件 42
3.1.5 gradio中常用的几个组件 45
3.1.6 使用gradio搭建视频上色服务 57
3.2 基于gradio的猫狗分类可视化训练与预测实战 59
3.2.1 运行环境与数据集的准备 60
3.2.2 模型的设计 63
3.2.3 PyTorch模型训练的基本流程 64
3.2.4 可视化训练流程 65
3.2.5 使用训练好的模型完成gradio可视化图像分类 67
3.3 基于网页端的ChatGLM3部署和使用 69
3.3.1 使用gradio搭建ChatGLM3网页客户端 70
3.3.2 使用ChatGLM3自带的网页客户端 71
3.4 基于私有云服务的ChatGLM3部署和使用 72
3.4.1 使用FastAPI完成ChatGLM3私有云交互端口的搭建(重要) 73
3.4.2 基于streamlit的ChatGLM3自带的网页客户端 74
3.5 本章小结 74
第4章 使用ChatGLM3与LangChain实现知识图谱抽取和智能问答 75
4.1 当ChatGLM3遇见LangChain 76
4.1.1 LangChain的基本构成、组件与典型场景 76
4.1.2 确认统一地址的ChatGLM3部署方案 78
4.1.3 使用ChatGLM3构建LangChain的LLM终端 78
4.1.4 从一个简单的提示模板开始 81
4.1.5 ChatGLM3格式化提示词的构建与使用 82
4.2 ChatGLM3 LangChain搭建专业问答机器人 84
4.2.1 使用LangChain的LLM终端完成文本问答 84
4.2.2 数据准备与基础算法分析 86
4.2.3 使用LangChain完成提示语Prompt工程 87
4.2.4 基于ChatGLM3的LLM终端完成专业问答 88
4.3 使用ChatGLM3的LLM终端搭建知识图谱抽取与智能问答 89
4.3.1 基于ChatGLM3的LLM终端完成知识图谱抽取 89
4.3.2 基于ChatGLM3的LLM终端完成智能问答 91
4.4 本章小结 92
第5章 适配ChatGLM3终端的Template与Chain详解 93
5.1 基于输入模板的人机交互 93
5.1.1 提示模板的4种类型 94
5.1.2 可嵌套的提示模板 95
5.2 Template中示例的最佳选择 97
5.2.1 基于长度的输出示例 97
5.2.2 基于相似度的输出示例 99
5.3 使用Chain提高ChatGLM3的能力 100
5.3.1 Chain的数学计算方法 101
5.3.2 多次验证检查器 101
5.4 LangChain中的记忆功能 102
5.4.1 ConversationChain会话链的使用 102
5.4.2 系统memory的使用 103
5.5 基于ChatGLM3终端撰写剧情梗概、评论与宣传文案实战 105
5.5.1 对过程进行依次调用的顺序链SimpleSequentialChain 105
5.5.2 对过程进行依次调用的顺序链SequentialChain 107
5.5.3 对顺序链添加额外参数的方法 109
5.6 本章小结 111
第6章 ChatGLM3多文本检索的增强生成实战 112
6.1 使用自然语言处理方法对目标进行查找 113
6.1.1 数据集的准备 113
6.1.2 分别基于BM25与LLM终端进行目标查找的方法 114
6.1.3 建立工业级标准化输出:LLM终端与BM25结合 116
6.2 基于LLM终端完成文本内容抽取与文本问答 118
6.2.1 读取目标内容 118
6.2.2 LangChain对文档的读取与分割方法 119
6.2.3 基于LangChain的文本分块 123
6.2.4 找到最近似问题的文本段落 124
6.2.5 使用LLM终端完成智能文本问答 125
6.3 使用LLM终端完成反向问题推断 127
6.3.1 文本问题提取实战 127
6.3.2 存储提取后的内容 130
6.4 本章小结 131
第7章 构建以人为本的ChatGLM3规范化Prompt提示工程 132
7.1 提示工程模板构建的输入与输出格式 132
7.1.1 提示模板的输入格式 133
7.1.2 提示模板的输出格式 135
7.2 提示工程模板高级用法 138
7.2.1 提示模板的自定义格式 138
7.2.2 提示模板的FewShotPromptTemplate格式 139
7.2.3 部分格式化的提示模板详解 140
7.3 结合提示工程的网页搜索服务实战 142
7.3.1 网页搜索的API实现 142
7.3.2 网页问答提示模板的实现 143
7.3.3 结合网页搜索的LLM终端问答实战 144
7.4 本章小结 145
第8章 使用ChatGLM3的思维链构建 146
8.1 思维链初探 146
8.1.1 思维链源于人类使用自然语言的概念来理解事物 147
8.1.2 思维链的优势与应用场景 147
8.2 思维链详解及其实战 149
8.2.1 思维链详解 149
8.2.2 基于ChatGLM3的思维链实战 150
8.3 本章小结 152
第9章 GLM源码分析与文本生成实战 153
9.1 GLM组件详解 154
9.1.1 GLM模型架构重大突破:旋转位置编码 154
9.1.2 添加旋转位置编码的注意力机制 156
9.1.3 新型的激活函数GLU详解 156
9.1.4 GLM“三角掩码”与“错位”输入输出格式详解 157
9.2 GLM整体架构详解与文本生成实战 159
9.2.1 调整架构顺序的GLMBlock 159
9.2.2 自定义GLM模型(单文本生成版) 162
9.3 本章小结 167
第10章 低资源单GPU微调ChatGLM3实战 168
10.1 什么是大模型微调 168
10.1.1 大模型微调的作用 169
10.1.2 大模型微调技术有哪些 169
10.1.3 参数高效微调详解 170
10.2 ChatGLM3大模型微调的准备内容 171
10.2.1 从数据准备看ChatGLM3微调:有监督微调详解 172
10.2.2 从实施看ChatGLM3微调:LoRA详解 173
10.2.3 适配ChatGLM3微调的辅助库:PEFT详解 174
10.3 虚拟客服多轮问答实战 180
10.3.1 ChatGLM3数据输入结构和处理函数 181
10.3.2 ChatGLM3微调训练 186
10.3.3 ChatGLM3微调推理 189
10.4 加速的秘密:accelerate训练方法与模型量化详解 191
10.4.1 加速器accelerate详解与完整代码编写 192
10.4.2 加速的秘密1:大模型的量化技术 195
10.4.3 加速的秘密2:大模型的INT8量化方案 196
10.4.4 加速的秘密3:大模型ChatGLM3中的量化源码分析与实践 198
10.5 更快的量化训练方案:QLoRA基础内容详解 200
10.5.1 加速的秘密4:基于bitsandbytes的ChatGLM3量化QLoRA实现 200
10.5.2 加速的秘密5:QLoRA详解 202
10.5.3 微调的目的:让生成的结果更聚焦于任务 205
10.6 QLoRA微调文本生成实战 207
10.6.1 数据处理 207
10.6.2 损失函数设计 210
10.6.3 基于QLoRA的ChatGLM3文本生成微调实战 211
10.6.4 基于QLoRA的ChatGLM3文本生成 213
10.7 本章小结 215
第11章 会使用工具的ChatGLM3 216
11.1 ChatGLM3调用工具源码详解与实战 216
11.1.1 Python调用工具详解 217
11.1.2 ChatGLM3工具调用流程详解 218
11.1.3 大模型ChatGLM3工具调用实战详解 220
11.1.4 大模型ChatGLM3工具调用原理详解 223
11.1.5 ChatGLM3消息传递方式详解 230
11.2 ChatGLM3官方工具注册与调用源码分析与实战 231
11.2.1 Python中的装饰器与回调函数 231
11.2.2 ChatGLM3官方工具函数的注册源码分析详解 233
11.2.3 大模型ChatGLM3官方工具调用的判定依据详解 236
11.2.4 ChatGLM3官方工具函数的调用分析详解 237
11.2.5 ChatGLM3调用工具分析与实战演示 238
11.3 ChatGLM3实战:构建个人助理之美妆助手 240
11.3.1 背景和参考资料设定 240
11.3.2 美妆助手的使用实战 246
11.4 本章小结 247
第12章 上市公司财务报表非结构化信息抽取实战 249
12.1 超长文本处理功能的ChatGLM3与真实财务报表的处理 250
12.1.1 ChatGLM3-6B-32K模型的获取与缓存 250
12.1.2 超大规模的2020—2023年真实中国股票市场年度财务报表数据库的建立 250
12.2 单报表非结构化信息抽取实战 253
12.2.1 单报表数据探查与提取信息结构化处理 253
12.2.2 单报表数据非结构化信息抽取的实现 254
12.3 本章小结 256
第13章 上市公司财务报表智能问答与财务预警实战 257
13.1 基于ChatGLM3的非结构化数据抽取与大规模财务报表数据库的建立 257
13.1.1 逐行代码讲解使用ChatGLM3对关键数据进行抽取 258
13.1.2 大规模上市公司财务报表目标字段抽取函数的建立 260
13.1.3 大规模上市公司财务报表目标字段数据库的建立 262
13.2 基于自然语言的上市公司财务报表智能问答与财务预警实战 264
13.2.1 使用自然语言结合ChatGLM3实现上市公司财务报表智能问答与预警解决方案1264
13.2.2 使用自然语言结合ChatGLM3-6B实现上市公司财务报表智能问答与预警解决方案2267
13.2.3 使用自然语言结合ChatGLM3实现上市公司财务报表智能问答与预警解决方案3270
13.3 本章小结 272
附录 大模型的“幻觉” 273
《从零开始大模型开发与微调:基于PyTorch与ChatGLM》目录
目 录
第1章 新时代的曙光—人工智能与大模型 1
1.1 人工智能:思维与实践的融合 1
1.1.1 人工智能的历史与未来 2
1.1.2 深度学习与人工智能 2
1.1.3 选择PyTorch 2.0实战框架 3
1.2 大模型开启人工智能的新时代 4
1.2.1 大模型带来的变革 4
1.2.2 最强的中文大模型—清华大学ChatGLM介绍 5
1.2.3 近在咫尺的未来—大模型的应用前景 6
1.3 本章小结 7
第2章 PyTorch 2.0深度学习环境搭建 8
2.1 环境搭建1:安装Python 8
2.1.1 Miniconda的下载与安装 8
2.1.2 PyCharm的下载与安装 11
2.1.3 Python代码小练习:计算Softmax函数 14
2.2 环境搭建2:安装PyTorch 2.0 15
2.2.1 Nvidia 10/20/30/40系列显卡选择的GPU版本 15
2.2.2 PyTorch 2.0 GPU Nvidia运行库的安装 15
2.2.3 PyTorch 2.0小练习:Hello PyTorch 18
2.3 生成式模型实战:古诗词的生成 18
2.4 图像降噪:手把手实战第一个深度学习模型 19
2.4.1 MNIST数据集的准备 19
2.4.2 MNIST数据集的特征和标签介绍 21
2.4.3 模型的准备和介绍 22
2.4.4 对目标的逼近—模型的损失函数与优化函数 24
2.4.5 基于深度学习的模型训练 24
2.5 本章小结 26
第3章 从零开始学习PyTorch 2.0 27
3.1 实战MNIST手写体识别 27
3.1.1 数据图像的获取与标签的说明 27
3.1.2 实战基于PyTorch 2.0的手写体识别模型 29
3.1.3 基于Netron库的PyTorch 2.0模型可视化 32
3.2 自定义神经网络框架的基本设计 34
3.2.1 神经网络框架的抽象实现 34
3.2.2 自定义神经网络框架的具体实现 35
3.3 本章小结 43
第4章 一学就会的深度学习基础算法详解 44
4.1 反向传播神经网络的前身历史 44
4.2 反向传播神经网络两个基础算法详解 47
4.2.1 最小二乘法详解 48
4.2.2 梯度下降算法 50
4.2.3 最小二乘法的梯度下降算法及其Python实现 52
4.3 反馈神经网络反向传播算法介绍 58
4.3.1 深度学习基础 58
4.3.2 链式求导法则 59
4.3.3 反馈神经网络的原理与公式推导 60
4.3.4 反馈神经网络原理的激活函数 64
4.3.5 反馈神经网络原理的Python实现 66
4.4 本章小结 70
第5章 基于PyTorch卷积层的MNIST分类实战 71
5.1 卷积运算的基本概念 71
5.1.1 基本卷积运算示例 72
5.1.2 PyTorch中的卷积函数实现详解 73
5.1.3 池化运算 75
5.1.4 Softmax激活函数 77
5.1.5 卷积神经网络的原理 78
5.2 实战:基于卷积的MNIST手写体分类 80
5.2.1 数据的准备 80
5.2.2 模型的设计 81
5.2.3 基于卷积的MNIST分类模型 82
5.3 PyTorch的深度可分离膨胀卷积详解 84
5.3.1 深度可分离卷积的定义 84
5.3.2 深度的定义以及不同计算层待训练参数的比较 86
5.3.3 膨胀卷积详解 87
5.3.4 实战:基于深度可分离膨胀卷积的MNIST手写体识别 87
5.4 本章小结 90
第6章 可视化的PyTorch数据处理与模型展示 91
6.1 用于自定义数据集的torch.utils.data工具箱使用详解 92
6.1.1 使用torch.utils.data. Dataset封装自定义数据集 92
6.1.2 改变数据类型的Dataset类中的transform的使用 93
6.1.3 批量输出数据的DataLoader类详解 98
6.2 实战:基于tensorboardX的训练可视化展示 100
6.2.1 可视化组件tensorboardX的简介与安装 100
6.2.2 tensorboardX可视化组件的使用 100
6.2.3 tensorboardX对模型训练过程的展示 103
6.3 本章小结 105
第7章 ResNet实战 106
7.1 ResNet基础原理与程序设计基础 106
7.1.1 ResNet诞生的背景 107
7.1.2 PyTorch 2.0中的模块工具 109
7.1.3 ResNet残差模块的实现 110
7.1.4 ResNet网络的实现 112
7.2 ResNet实战:CIFAR-10数据集分类 114
7.2.1 CIFAR-10数据集简介 114
7.2.2 基于ResNet的CIFAR-10数据集分类 117
7.3 本章小结 118
第8章 有趣的词嵌入 120
8.1 文本数据处理 120
8.1.1 Ag_news数据集介绍和数据清洗 120
8.1.2 停用词的使用 123
8.1.3 词向量训练模型Word2Vec使用介绍 125
8.1.4 文本主题的提取:基于TF-IDF 128
8.1.5 文本主题的提取:基于TextRank 132
8.2 更多的词嵌入方法—FastText和预训练词向量 134
8.2.1 FastText的原理与基础算法 135
8.2.2 FastText训练及其与PyTorch 2.0的协同使用 136
8.2.3 使用其他预训练参数来生成PyTorch 2.0词嵌入矩阵(中文) 140
8.3 针对文本的卷积神经网络模型简介—字符卷积 141
8.3.1 字符(非单词)文本的处理 141
8.3.2 卷积神经网络文本分类模型的实现—Conv1d(一维卷积) 148
8.4 针对文本的卷积神经网络模型简介—词卷积 151
8.4.1 单词的文本处理 151
8.4.2 卷积神经网络文本分类模型的实现—Conv2d(二维卷积) 153
8.5 使用卷积对文本分类的补充内容 155
8.5.1 汉字的文本处理 155
8.5.2 其他细节 157
8.6 本章小结 158
第9章 基于循环神经网络的中文情感分类实战 160
9.1 实战:循环神经网络与情感分类 160
9.2 循环神经网络理论讲解 165
9.2.1 什么是GRU 165
9.2.2 单向不行,那就双向 167
9.3 本章小结 168
第10章 从零开始学习自然语言处理的编码器 169
10.1 编码器的核心—注意力模型 170
10.1.1 输入层—初始词向量层和位置编码器层 170
10.1.2 自注意力层 172
10.1.3 ticks和Layer Normalization 177
10.1.4 多头注意力 178
10.2 编码器的实现 180
10.2.1 前馈层的实现 181
10.2.2 编码器的实现 182
10.3 实战编码器:拼音汉字转化模型 184
10.3.1 汉字拼音数据集处理 185
10.3.2 汉字拼音转化模型的确定 187
10.3.3 模型训练部分的编写 190
10.4 本章小结 191
第11章 站在巨人肩膀上的预训练模型BERT 193
11.1 预训练模型BERT 193
11.1.1 BERT的基本架构与应用 194
11.1.2 BERT预训练任务与微调 195
11.2 实战BERT:中文文本分类 198
11.2.1 使用Hugging Face获取BERT预训练模型 198
11.2.2 BERT实战文本分类 200
11.3 更多的预训练模型 203
11.4 本章小结 205
第12章 从1开始自然语言处理的解码器 206
12.1 解码器的核心—注意力模型 206
12.1.1 解码器的输入和交互注意力层的掩码 207
12.1.2 为什么通过掩码操作能够减少干扰 212
12.1.3 解码器的输出(移位训练方法) 213
12.1.4 解码器的实现 214
12.2 解码器实战—拼音汉字翻译模型 215
12.2.1 数据集的获取与处理 216
12.2.2 翻译模型 218
12.2.3 拼音汉字模型的训练 229
12.2.4 拼音汉字模型的使用 230
12.3 本章小结 231
第13章 基于PyTorch 2.0的强化学习实战 232
13.1 基于强化学习的火箭回收实战 232
13.1.1 火箭回收基本运行环境介绍 233
13.1.2 火箭回收参数介绍 234
13.1.3 基于强化学习的火箭回收实战 234
13.1.4 强化学习的基本内容 239
13.2 强化学习的基本算法—PPO算法 243
13.2.1 PPO算法简介 243
13.2.2 函数使用说明 244
13.2.3 一学就会的TD-error理论介绍 245
13.2.4 基于TD-error的结果修正 247
13.2.5 对于奖励的倒序构成的说明 248
13.3 本章小结 249
第14章 ChatGPT前身—只具有解码器的GPT-2模型 250
14.1 GPT-2模型简介 250
14.1.1 GPT-2模型的输入和输出结构—自回归性 251
14.1.2 GPT-2模型的PyTorch实现 252
14.1.3 GPT-2模型输入输出格式的实现 257
14.2 Hugging Face GPT-2模型源码模型详解 259
14.2.1 GPT2LMHeadModel类和GPT2Model类详解 259
14.2.2 Block类详解 270
14.2.3 Attention类详解 274
14.2.4 MLP类详解 281
14.3 Hugging Face GPT-2模型的使用与自定义微调 282
14.3.1 模型的使用与自定义数据集的微调 282
14.3.2 基于预训练模型的评论描述微调 285
14.4 自定义模型的输出 286
14.4.1 GPT输出的结构 286
14.4.2 创造性参数temperature与采样个数topK 288
14.5 本章小结 290
第15章 实战训练自己的ChatGPT 291
15.1 什么是ChatGPT 291
15.2 RLHF模型简介 293
15.2.1 RLHF技术分解 293
15.2.2 RLHF中的具体实现—PPO算法 296
15.3 基于RLHF实战的ChatGPT正向评论的生成 297
15.3.1 RLHF模型进化的总体讲解 297
15.3.2 ChatGPT评分模块简介 298
15.3.3 带有评分函数的ChatGPT模型的构建 300
15.3.4 RLHF中的PPO算法—KL散度 301
15.3.5 RLHF中的PPO算法—损失函数 303
15.4 本章小结 304
第16章 开源大模型ChatGLM使用详解 305
16.1 为什么要使用大模型 305
16.1.1 大模型与普通模型的区别 306
16.1.2 一个神奇的现象—大模型的涌现能力 307
16.2 ChatGLM使用详解 307
16.2.1 ChatGLM简介及应用前景 308
16.2.2 下载ChatGLM 309
16.2.3 ChatGLM的使用与Prompt介绍 310
16.3 本章小结 311
第17章 开源大模型ChatGLM 高级定制化应用实战 312
17.1 医疗问答GLMQABot搭建实战—基于ChatGLM搭建专业客服问答机器人 312
17.1.1 基于ChatGLM搭建专业领域问答机器人的思路 313
17.1.2 基于真实医疗问答的数据准备 314
17.1.3 文本相关性(相似度)的比较算法 315
17.1.4 提示语句Prompt的构建 316
17.1.5 基于单个文档的GLMQABot的搭建 316
17.2 金融信息抽取实战—基于知识链的ChatGLM本地化知识库检索与智能答案生成 318
17.2.1 基于ChatGLM搭建智能答案生成机器人的思路 319
17.2.2 获取专业(范畴内)文档与编码存储 320
17.2.3 查询文本编码的相关性比较与排序 322
17.2.4 基于知识链的ChatGLM本地化知识库检索与智能答案生成 325
17.3 基于ChatGLM的一些补充内容 327
17.3.1 语言的艺术—Prompt的前世今生 328
17.3.2 清华大学推荐的ChatGLM微调方法 329
17.3.2 一种新的基于ChatGLM的文本检索方案 330
17.4 本章小结 331
第18章 对训练成本上亿美元的ChatGLM进行高级微调 332
18.1 ChatGLM模型的本地化处理 332
18.1.1 下载ChatGLM源码与合并存档 332
18.1.2 修正自定义的本地化模型 335
18.1.3 构建GLM模型的输入输出示例 337
18.2 高级微调方法1—基于加速库Accelerator的全量数据微调 339
18.2.1 数据的准备—将文本内容转化成三元组的知识图谱 339
18.2.2 加速的秘密—Accelerate模型加速工具详解 342
18.2.3 更快的速度—使用INT8(INT4)量化模型加速训练 345
18.3 高级微调方法2—基于LoRA的模型微调 348
18.3.1 对ChatGLM进行微调的方法—LoRA 348
18.3.2 自定义LoRA的使用方法 349
18.3.3 基于自定义LoRA的模型训练 350
18.3.4 基于自定义LoRA的模型推断 352
18.3.5 基于基本原理的LoRA实现 355
18.4 高级微调方法3—基于Huggingface的PEFT模型微调 357
18.4.1 PEFT技术详解 358
18.4.2 PEFT的使用与参数设计 359
18.4.3 Huggingface专用PEFT的使用 360
18.5 本章小结 362
《PyTorch深度学习与企业级项目实战》目录
目 录
第1章 人工智能、机器学习与深度学习简介 1
1.1 什么是人工智能 1
1.2 人工智能的本质 2
1.3 人工智能相关专业人才就业前景 4
1.4 机器学习和深度学习 5
1.4.1 什么是机器学习 5
1.4.2 深度学习独领风骚 6
1.4.3 机器学习和深度学习的关系和对比 7
1.5 小白如何学深度学习 10
1.5.1 关于两个“放弃” 10
1.5.2 关于三个“必须” 10
第2章 深度学习框架PyTorch开发环境搭建 12
2.1 PyCharm的安装和使用技巧 12
2.2 在Windows环境下安装CPU版的PyTorch 16
2.3 在Windows环境下安装GPU版的PyTorch 18
2.3.1 确认显卡是否支持CUDA 18
2.3.2 安装CUDA 19
2.3.3 安装cuDNN 20
2.3.4 安装GPU版PyTorch 22
第3章 Python数据科学库 24
3.1 张量、矩阵和向量的区别 24
3.2 数组和矩阵运算库NumPy 26
3.2.1 列表和数组的区别 26
3.2.2 创建数组的方式 27
3.2.3 NumPy的算术运算 28
3.2.4 数组变形 30
3.3 数据分析处理库Pandas 31
3.3.1 Pandas数据结构Series 31
3.3.2 Pandas数据结构DataFrame 32
3.3.3 Pandas处理CSV文件 34
3.3.4 Pandas数据清洗 36
3.4 数据可视化库Matplotlib介绍 40
第4章 深度学习的基本原理 44
4.1 神经网络原理阐述 44
4.1.1 神经元和感知器 44
4.1.2 激活函数 47
4.1.3 损失函数 49
4.1.4 梯度下降和学习率 49
4.1.5 过拟合和Dropout 50
4.1.6 神经网络反向传播法 52
4.2 卷积神经网络 52
4.2.1 什么是卷积神经网络 52
4.2.2 卷积神经网络详解 53
4.2.3 卷积神经网络是如何训练的 56
4.2.4 卷积神经网络为什么能称霸图像识别领域 57
4.3 卷积神经网络经典模型架构简介 58
4.3.1 LeNet-5 59
4.3.2 AlexNet 59
4.3.3 VGG 60
4.3.4 GoogLeNet 61
4.3.5 ResNet 62
4.4 常用的模型评估指标 65
第5章 深度学习框架PyTorch入门 71
5.1 Tensor 71
5.1.1 Tensor简介 71
5.1.2 使用特定数据创建张量 72
5.1.3 使用随机数创建张量 73
5.1.4 张量基本操作 75
5.2 使用GPU加速 76
5.3 自动求导 77
5.4 PyTorch神经网络 79
5.4.1 构建神经网络 79
5.4.2 数据的加载和处理 81
5.4.3 模型的保存和加载 82
5.5 PyTorch入门实战:CIFAR-10图像分类 82
第6章 迁移学习花朵识别项目实战 90
6.1 迁移学习简介 90
6.2 什么是预训练模型 91
6.3 如何使用预训练模型 92
6.4 使用迁移学习技术实现花朵识别 93
6.5 迁移学习zong结 99
第7章 垃圾分类识别项目实战 100
7.1 垃圾分类识别项目背景 100
7.2 垃圾分类背后的技术 101
7.3 垃圾图片数据集介绍 101
7.4 MnasNet模型介绍 102
7.5 垃圾分类识别项目代码分析 103
第8章 短期电力负荷预测项目实战 109
8.1 电力负荷预测项目背景 109
8.2 电力负荷预测的意义 110
8.3 电力负荷数据的获取 110
8.4 一维卷积1D-CNN 112
8.5 项目代码分析 113
第9章 空气质量识别分类与预测项目实战 119
9.1 空气质量识别分类与预测项目背景 119
9.2 主成分分析 120
9.3 聚类分析(K-Means) 122
9.4 项目代码分析 123
第10章 手写数字识别项目实战 128
10.1 手写数字识别项目背景 128
10.2 手写数字数据集 128
10.3 LeNet5模型构建 129
10.4 模型训练和测试 131
10.4.1 损失函数 131
10.4.2 优化器 131
10.4.3 超参数设置 132
10.4.4 性能评估 132
10.5 项目完整代码介绍 133
10.6 项目总结 137
第11章 人脸识别及表情识别实战 138
11.1 人脸识别 138
11.1.1 什么是人脸识别 138
11.1.2 人脸识别过程 139
11.2 人脸识别项目实战 143
11.2.1 人脸检测 143
11.2.2 人脸识别 145
11.3 面部表情识别项目实战 151
第12章 图像风格迁移项目实战 157
12.1 图像风格迁移简介 157
12.2 使用预训练的VGG-16模型进行图像风格迁移 160
12.2.1 算法思想 160
12.2.2 算法细节 161
12.2.3 代码实现 163
第13章 基于GAN生成动漫人物图像项目实战 170
13.1 什么是生成式对抗网络 170
13.2 生成式对抗网络的算法细节 172
13.3 循环生成对抗网络CycleGAN 174
13.4 基于生成式对抗网络生成动漫人物图像 177
第14章 糖尿病预测项目实战 183
14.1 糖尿病预测项目背景 183
14.2 糖尿病数据集介绍 184
14.3 LSTM-CNN模型 187
14.4 实战项目代码分析 189
第15章 基于大语言模型的自然语言处理项目实战 194
15.1 自然语言处理Embedding层详解 194
15.2 Transformer模型简介 197
15.3 预训练语言模型GPT 199
15.3.1 什么是预训练语言模型 199
15.3.2 GPT-2模型介绍 200
15.3.3 PyTorch-Transformers库介绍 201
15.4 基于Transformer模型的谣言检测系统的实现 202
15.4.1 谣言检测系统项目背景 202
15.4.2 谣言检测系统代码实战 203
15.5 基于GPT2在新闻文本分类项目中的实现 211
15.5.1 新闻文本分类项目背景 211
15.5.2 新闻文本分类代码实战 212
第16章 猴痘病毒识别项目实战 218
16.1 猴痘病毒识别项目背景 218
16.2 ResNet101模型 219
16.2.1 残差块 219
16.2.2 ResNet101网络结构 220
16.3 实战项目代码分析 220
第17章 X光肺部感染识别项目实战 226
17.1 X光肺部感染识别项目背景 226
17.2 项目所用到的图像分类模型 227
17.3 实战项目代码分析 230
第18章 乐器声音音频识别项目实战 237
18.1 音频与声音数字化 237
18.2 音频深度学习 238
18.3 音频处理的应用场景 240
18.4 实战项目代码分析 242
|
內容試閱:
|
《ChatGLM3大模型本地化部署、应用开发与微调》前言
前 言
大模型领域既是繁星点点的未知宇宙,也是蕴含无数可能的广阔天地,正是这一独特的魅力,令无数的探索者为之倾倒,为之奋斗。随着大模型应用逐渐走入人们的日常生活,支撑它的深度学习技术也开始登上更为广阔和深远的人工智能大舞台。
关于本书
本书将揭示大模型ChatGLM3的本地化实战应用,带领读者领略ChatGLM3的高级应用之美.书中不仅详细如何进行ChatGLM3的私有云部署、开发应用、构建思维链以及在有限资源条件下的微调方法,为了让读者更深入地了解ChatGLM3的模型架构,还将解析GLM系列模型的源码,并完成一项文本生成任务。本书的最后将通过实现基于自然语言的真实上市公司大规模年度财务报表非结构化信息抽取实战、智能问答与财务预警实战,展现大模型应用的美好前景。这两个实战案例将融合本书前面介绍的所有知识,从大模型程序应用入手,涉及微调以及工具的使用,并结合具体的业务知识背景,为读者带来一次深度学习的完整体验。
本书涉及的深度学习编程方法与技巧以PyTorch为主。PyTorch因其易用性和普及性而成为深度学习领域的翘楚。当然,本书只是围绕大模型的应用进行深入剖析,若想了解更多关于深度学习的内容,例如卷积神经网络、循环神经网络等模块的构建和使用方法,强烈推荐参阅《PyTorch 2.0深度学习从零开始学》。
本书作为《PyTorch 2.0深度学习从零开始学》的姊妹篇,不仅延续了《PyTorch 2.0深度学习从零开始学》中的核心理念与知识体系,更将深度学习引向了一个新的高度,专注于大模型的本地化研究与应用。本书将帮助读者深入理解深度学习与大模型的精髓,探寻其背后的思维逻辑和创新精神。在这个过程中,读者不仅能学习到理论知识,更能感受到大模型背后的力量与智慧,从而为自己在这一领域的研究和 实践提供有力的支撑。
本书特点
本书具有如下6个方面的特点:
l内容与结构的系统性:本书延续了《PyTorch 2.0深度学习从零开始学》的知识体系,精心设计了内容与结构,结合深度学习基础知识和大模型的具体方向,逐步引导读者走进大模型高级应用和微调场景。每个章节都按照逻辑顺序展开,确保读者在学习过程中能够循序渐进地掌握相关知识和技能。
l理论与实践的紧密结合:本书不仅关注理论知识,更注重实践应用。通过丰富的实战案例讲解,读者可以亲手进行操作和实践,深入了解深度学习和大模型在实际问题中的应用方法和解决方案。
l大模型本地化部署领域的专业洞察:本书对大模型本地化部署领域进行深入研究和专业洞察,涵盖了目前最新的研究成果、模型架构和应用场景。读者通过阅读本书,可以紧跟学术前沿,全面了解大模型的发展趋势和实际应用。
l注重培养解决问题的能力:本书以实际项目为导向,注重培养读者解决问题的能力。通过深入分析实际案例和提供实战代码,读者可以逐步提升自己的实践能力和创新能力,为未来的实际工作做好充分准备。
l优美的语法和丰富的实例:本书采用优美的语法和丰富的实例进行讲解,让读者在学习过程中感受深度学习的魅力和大模型的智慧。通过生动的比喻、形象的描述和实用的技巧,读者可以更好地理解和掌握深度学习和大模型的核心概念和方法。
l笔者的专业背景和实战经验:作为深度学习专家和畅销图书作者,笔者具有深厚的学术背景和丰富的实践经验。在撰写本书的过程中,笔者以实际项目中遇到的问题为导向,注重知识体系的完整性和实用性,力求使本书成为一本具有参考价值的重要著作。
本书适合人群
本书适合学习人工智能、深度学习、大模型开发应用以及PyTorch算法的人员阅读,也适合作为高等院校或高职高专大模型相关课程的教材。
建议读者在学习本书内容的过程中,独立进行一些代码的编写,采取开放式的实验方法,即读者自行准备实验数据和实验环境,解决实际问题,最终达到理论联系实际的目的。
配套资源下载
本书配套示例源代码、数据集、PPT课件、作者微信群答疑服务,需要用微信扫描下面的二维码获取。如果在阅读本书的过程中发现问题或有疑问,请联系booksaga@163.com,邮件主题为“ChatGLM3大模型本地化部署、应用开发与微调”。
笔 者
2024年2月
《从零开始大模型开发与微调:基于PyTorch与ChatGLM》前言
前 言
我们处于一个变革的时代!
提出一个常识问题,让一个有着本科学历的成年人回答这个问题,似乎是一件非常简单的事情。然而将同样的内容输送给计算机,让它通过自己的能力流畅地回答这个常识问题,这在不久以前还是一件不可能的事。
让计算机学会回答问题,这是一个专门的研究方向—人工智能大模型正在做的工作。随着人工神经网络和深度学习的发展,近年来人工智能在研究上取得了重大突破。通过大规模的文本训练,人工智能在自然语言生成上取得了非常好的效果。
而今,随着深度学习的发展,使用人工智能来处理常规劳动、理解语音语义、帮助医疗诊断和支持基础科研工作,这些曾经是梦想的东西似乎都在眼前。
写作本书的原因
PyTorch作为最新的、应用最为广泛的深度学习开源框架,自然引起了广泛的关注,它吸引了大量程序设计和开发人员进行相关内容的开发与学习。掌握PyTorch程序设计基本技能的程序设计人员成为当前各组织和单位热切寻求的热门人才。他们的主要工作就是利用获得的数据集设计不同的人工神经模型,利用人工神经网络强大的学习能力提取和挖掘数据集中包含的潜在信息,编写相应的PyTorch程序对数据进行处理,对其价值进行进一步开发,为商业机会的获取、管理模式的创新、决策的制定提供相应的支持。随着越来越多的组织、单位和行业对深度学习应用的重视,高层次的PyTorch程序设计人员必将成为就业市场上紧俏的人才。
与其他应用框架不同,PyTorch并不是一个简单的编程框架,深度学习也不是一个简单的名词,而是需要相关研究人员对隐藏在其代码背后的理论进行学习,掌握一定的数学知识和理论基础的。特别是随着PyTorch 2.0的推出,更好、更快、更强成为PyTorch 2.0所追求的目标。
研究人员探索和发展深度学习的目的是更好地服务于人类社会,而人工智能的代表—清华大学开发的ChatGLM是现阶段人工智能最高端的研究成果,它可以模拟人类智能的某些方面,例如语言理解、智能问答、自然语言处理等。相较于其他人工智能产品,ChatGLM有着更加强大的算法、更多的数据基础以及更强的训练和优化,使得ChatGLM可以实现更加准确和高效的决策和预测,为人类社会带来巨大的价值。
在医疗领域,ChatGLM可以帮助医生更准确地诊断疾病,提高治疗的效果和效率。在交通领域,ChatGLM可以辅助驾驶员进行驾驶决策,减少交通事故的发生。在金融领域,ChatGLM可以帮助银行和证券公司进行风险控制和投资决策。在教育领域,ChatGLM可以根据学生的学习情况和兴趣爱好,提供个性化的学习方案和资源。
在这个人工智能风起云涌的时代,借由PyTorch 2.0与ChatGLM推出之际,本书为了满足广大人工智能程序设计和开发人员学习最新的PyTorch程序代码的需要,对涉及深度学习的结构与编程技巧循序渐进地做了介绍与说明,以深度学习实战内容为依托,从理论开始介绍PyTorch程序设计模式,多角度、多方面地对其中的原理和实现提供翔实的分析;同时,以了解和掌握最强的人工智能模型ChatGLM,进行可靠的二次开发和微调为目标,使读者能够在开发者的层面掌握ChatGLM程序设计方法和技巧,为开发出更强大的人工智能大模型打下扎实的基础。
本书的优势
l 本书基于PyTorch 2.0框架对深度学习的理论、应用以及实战进行全方位的讲解,市面上鲜有涉及。
l 本书手把手地从零开始向读者讲解大模型的构建方法,从最基础的深度学习模型搭建开始,直到完成大模型的设计、应用与微调工作。
l 本书并非枯燥的理论讲解,而是大量最新文献的归纳和总结。在这点上,本书与其他编程书籍有本质区别。本书的例子都是来自现实世界中对深度学习有实战应用的模型,通过介绍这些实际应用示例,可以使读者更进一步地了解和掌握其应用价值和核心本质。
l 本书作者有长期的研究生和本科生教学经验,通过通俗易懂的语言,深入浅出地介绍深度学习与神经网络理论体系的全部知识点,并在程序编写时使用PyTorch 2.0最新框架进行程序设计,帮助读者更好地使用PyTorch模型框架,理解和掌握PyTorch程序设计的精妙之处。
l 作者认为,掌握和使用深度学习的人才应在掌握基本知识和理论的基础上,重视实际应用程序开发能力和解决问题能力的培养。特别是对于最新的大模型技术的掌握。本书结合作者在实际工作中应用的实际案例进行讲解,内容真实,场景逼真。
本书的内容
本书共18章,所有代码均采用Python语言编写,这也是PyTorch 2.0框架推荐使用的语言。
第1章介绍人工智能的基本内容,初步介绍深度学习应用与大模型的发展方向,介绍最强的人工智能大模型—清华大学ChatGLM的应用前景,旨在说明使用深度学习和人工智能实现大模型是未来科技的发展方向,也是必然趋势。
第2章介绍PyTorch 2.0的安装和常用的类库。Python是易用性非常强的语言,可以很方便地将公式和愿景以代码的形式表达出来,而无须学习过多的编程知识。还将手把手地向读者演示第一个深度学习模型的完整使用示例。
第3章演示使用PyTorch框架进行手写体识别的实际例子,完整地对MNIST手写体项目进行分类,同时讲解模型的标签问题以及本书后期常用的损失函数计算等内容。
第4章系统介绍深度学习的基础知识—反向传播神经网络的原理和实现。这是整个深度学习领域最为基础的内容,也是最为重要的理论部分。本章通过独立编写代码的形式为读者实现这个神经网络中最重要的算法。
第5章介绍卷积神经网络的使用,主要介绍使用卷积对MNIST数据集进行识别。这是一个入门案例,但是包含的内容非常多,例如使用多种不同的层和类构建一个较为复杂的卷积神经网络。同时也介绍了一些具有个性化设置的卷积层。
第6章主要讲解PyTorch 2.0数据处理与模型训练可视化方面的内容,这是本书中非常重要的基础,也是数据处理中非常重要的组成部分,通过编写相应的程序来实现模型对输入数据的处理,能够使得读者更加深入地了解PyTorch框架的运行原理。
第7章介绍卷积神经网络的核心内容,讲解基于Block堆积的ResNet模型的构建方法,这为后面搭建更多基于模块化的深度学习模型打下基础。
第8和第9章是PyTorch自然语言处理的基础部分,从词向量开始,到使用卷积和循环神经网络完成自然语言处理的情感分类项目,循序渐进地引导读者使用深度学习完成自然语言处理实战。
第10章介绍深度学习另一个重要的模块—注意力模型,本章的理论部分非常简单,讲解得也很清晰,但其内容对整个深度学习模型具有里程碑意义。
第11和第12章是自然语言处理的补充内容,分别介绍使用现有的预训练模型进行自然语言处理以及自然语言处理解码器的部分。第12章和第10章相互衔接,主要是对当前的新模型Transformer进行介绍和说明,分别从其架构入手,对编码器和解码器进行详细介绍。同时,第12章还介绍各种ticks和小的细节,有针对性地对模型优化做了说明。
第13~15章是对强化学习部分的讲解,同时详细讲解深度学习中具有开创性质的GPT-2模型的构成架构和源码设计,并基于以上两部分完成了一个简化版的ChatGPT设计,这是为后续进行语言模型微调打下基础。
第16~18章是本书有关大模型的核心内容。第16章讲解人工智能大模型ChatGLM的使用与自定义方法。第17章讲解ChatGLM高级定制化应用,包括专业客服问答机器人、金融信息抽取实战以及一些补充内容;其中金融信息抽取使用了基于知识链的多专业跨领域文档挖掘的方法,这是目前ChatGLM甚至是自然语言处理大模型方面最为前沿的研究方向。第18章讲解ChatGLM模型的本地化处理和ChatGLM的高级微调方法,极具参考价值。
本书的特点
l 本书不是纯粹的理论知识介绍,也不是高深的技术研讨,完全是从实践应用出发,用最简单、典型的示例引申出核心知识,并指出进一步学习人工智能大模型的道路。
l 本书没有深入介绍某一个知识块,而是全面介绍PyTorch涉及的大模型的基本结构和上层程序设计,系统地讲解深度学习的全貌,使读者在学习过程中把握好方向。
l 本书在写作上浅显易懂,没有深奥的数学知识,而是采用较为形象的形式,使用大量图示来描述应用的理论知识,让读者轻松地阅读并掌握相关内容。
l 本书旨在引导读者进行更多技术上的创新,每章都会以示例的形式帮助读者更好地理解本章要学习的内容。
l 本书代码遵循重构原理,避免代码污染,帮助读者写出优秀、简洁、可维护的代码。
配套示例源代码、PPT课件下载
本书配套示例源代码、PPT课件,需要用微信扫描下面的二维码获取。如果阅读中发现问题或疑问,请联系booksaga@163.com,邮件主题写“从零开始大模型开发与微调”。
本书适合人群
本书适合人工智能、大模型、深度学习以及PyTorch框架等方向的初学者和开发人员阅读,也可以作为高等院校相关专业的教材。
建议读者在学习本书内容的过程中,理论联系实际,独立进行一些代码的编写工作,可能的情况下采取开放式的实验方法,即读者自行准备实验数据和实验环境,解决实际问题,最终达到理论联系实际的目的。
本书作者
本书作者为高校计算机专业教师,教授人工智能、大数据分析与挖掘、Java程序设计、数据结构等多门本科生及研究生课程,研究方向为数据仓库与数据挖掘、人工智能、机器学习,在研和参研多项科研项目。作者在本书写作过程中,得到了家人和朋友的大力支持,以及本书编辑王叶的热情帮助,在此对他们一并表示感谢。
作 者
2023年8月
《PyTorch深度学习与企业级项目实战》前言
前 言
我们正经历一场大革命,这场革命就是由大数据和强大的计算机计算能力发起的。2016年3月,震惊世界的AlphaGo以4:1的成绩战胜李世石,让越来越多的人了解到人工智能的魅力,也让更多人加入深度学习的研究。2023年5月,ChatGPT“横空出世”,开启了人工智能技术的新时代,进一步体现人工智能超乎想象的潜力。ChatGPT的爆火出圈使得开发它的人工智能实验室OpenAI以及创始人山姆·阿尔特曼获得全世界的关注,马斯克更是盛赞:ChatGPT非常好,我们离强大到危险的人工智能不远了。
想要自己实现 ChatGPT?那就先学习 PyTorch 吧!在人工智能领域中,自然语言处理技术已经成为一个重要的研究方向。而 ChatGPT作为自然语言处理技术中的一种模型,因为其在语言生成和理解方面的出色表现,已经引起了广泛的关注。但是,要想自己实现ChatGPT,需要先学习一些基础知识,其中PyTorch是一个非常重要的工具。
PyTorch是由Facebook 开发的一款开源深度学习框架,因其简单易用、灵活自由的特性,受到了广泛的欢迎。在PyTorch中,我们可以轻松地构建神经网络模型,实现模型的训练和推理,并且可以方便地进行模型调试和优化。
而 ChatGPT是一种基于Transformer 模型的自然语言处理技术。它通过预训练的方式让模型学习语言的生成和理解,从而可以高效地进行文本生成、文本理解、机器翻译等任务。ChatGPT的出现为自然语言处理领域带来了新的思路和方向。
但是,要想自己实现ChatGPT,需要先掌握一些基础知识,如深度学习、神经网络、自然语言处理等。同时,还需要熟悉PyTorch框架的使用,包括模型的构建、训练、推理等。此外,还需要掌握一些常用的自然语言处理算法和工具。
对于初学者来说,可以从一些基础的深度学习课程开始学习。同时,可以参考一些优秀的项目实战来进行实践操作。
总之,只有不断地学习和实践,才能掌握深度学习技术的精髓,实现自己的ChatGPT梦想。未来,随着深度学习技术的不断发展和完善,深度学习也将迎来更多的挑战和机遇。我们需要更加深入地研究和学习,才能在这个领域中不断取得新的突破和成就。
然而普通的程序员想要快速入门深度学习,就需要借助PyTorch深度学习框架。有了PyTorch,编写神经网络模型更简单、更高效。本书立足具体实践,以通俗易懂的方式详细介绍深度学习的基础理论以及相关的必要知识,同时以实际动手操作的方式来引导读者入门人工智能深度学习。
阅读本书的读者,只需学过Python语言基础知识,只要你想改变自己的现状,那么这本书就非常适合你。本书为那些非科班出身而又想半路“杀进”人工智能领域的程序员提供快速上手的参考指南。
本书提供详细的案例资源代码文件,可在清华大学出版社的网站上下载,以便于读者动手实践。
本书配套资源下载
本书配套示例源代码、数据集、PPT课件与作者微信群答疑服务,读者需要用微信扫描下面的二维码获取。如果阅读中发现问题或疑问,请联系booksaga@163.com,邮件主题写“PyTorch深度学习与企业级项目实战”。
本书作者
本书由宋立桓和宋立林创作。宋立桓,目前为国内某互联网头部企业的解决方案架构师,专注于云计算、大数据和人工智能。宋立林,曾指导多名学生获得全国青少年信息学奥林匹克竞赛(National Olympiad in Informatics,NOI)奖牌,培养的学生被清华大学、北京大学等名校录取的有上百人,许多学生进入了世界著名的高科技企业。宋立林老师具有丰富的教学经验,使得本书能够以生动的语言带你走进深度学习PyTorch框架的学习,全书阅读起来易懂而不枯燥。
致 谢
感谢我的妻子和女儿、你们是我心灵的港湾!
感谢我的父母,你们一直在默默地支持者我!
感谢我的朋友和同事,相互学习的同时彼此欣赏!
感谢清华大学出版社的夏毓彦老师帮助我出版了这本有意义的著作。
万事开头难,只有打开了一扇窗户,才能发现一个全新的世界,希望这本书能帮助新人打开深度学习的大门,让更多的人享受到人工智能时代到来的红利。
宋立桓
国内头部互联网企业解决方案架构师
大数据、人工智能布道师
2024年1月
|
|