基于BERT模型的自然语言处理实战
¥
23.84
1.7折
¥
139
九品
仅1件
作者李金洪
出版社电子工业出版社
出版时间2021-07
版次1
装帧其他
货号A5
上书时间2024-11-28
商品详情
- 品相描述:九品
图书标准信息
-
作者
李金洪
-
出版社
电子工业出版社
-
出版时间
2021-07
-
版次
1
-
ISBN
9787121414084
-
定价
139.00元
-
装帧
其他
-
开本
其他
-
纸张
胶版纸
-
页数
380页
-
字数
0.53千字
- 【内容简介】
-
本书介绍如何在PyTorch框架中使用BERT模型完成自然语言处理(NLP)任务。
BERT模型是当今处理自然语言任务效果好的模型。掌握了该模型,就相当于掌握了当今主流的NLP技术。
本书共3篇。
-第1篇介绍了神经网络的基础知识、NLP的基础知识,以及编程环境的搭建;
-第2篇介绍了PyTorch编程基础,以及BERT模型的原理、应用和可解释性;
-第3篇是BERT模型实战,帮助读者开阔思路、增长见识,使读者能够真正驾驭BERT模型,活学活用,完成自然语言处理任务。
通过本书,读者可以熟练地在PyTorch框架中开发并训练神经网络模型,快速地使用BERT模型完成各种主流的自然语言处理任务,独立地设计并训练出针对特定需求的BERT模型,轻松地将BERT模型封装成Web服务部署到云端。
本书结构清晰、案例丰富、通俗易懂、实用性强,适合对自然语言处理、BERT模型感兴趣的读者作为自学教程。另外,本书也适合社会培训学校作为培训教材,还适合计算机相关专业作为教学参考书。
- 【作者简介】
-
李金洪
擅长神经网络、算法、协议分析、逆向、移动互联网安全架构等技术
先后担任过CAD算法工程师、手机游戏主程、架构师、项目经理、CTO、部门经理、资深产品总监等职位
目前创业中。
- 【目录】
-
篇 入门——基础知识与编程框架
章 bert模型很强大,你值得拥有/2
1.1 全球欢腾,喜迎bert模型/2
1.2 为什么bert模型这么强/3
1.3 怎么学bert模型/4
1.3.1 bert模型的技术体系/4
1.3.2 学好自然语言处理的4件套——神经网络的基础知识、nlp的基础知识、编程框架的使用、bert模型的及应用/4
1.3.3 学本书的前提条件/5
1.4 自然语言处理的技术趋势/5
1.4.1 基于超大规模的高精度模型/6
1.4.2 基于规模的高精度模型/6
1.4.3 基于小样本训练的模型/6
第2章 神经网络的基础知识——可能你掌握得也没有那么牢/7
2.1 什么是神经网络/7
2.1.1 神经网络能解决哪些问题/7
2.1.2 神经网络的发展/7
2.1.3 什么是深度学/8
2.1.4 什么是图神经网络/8
2.1.5 什么是图深度学/9
2.2 神经网络的工作/10
2.2.1 了解单个神经元/10
2.2.2 生物神经元与计算机神经元模型的结构相似/12
2.2.3 生物神经元与计算机神经元模型的工作流程相似/12
2.2.4 神经网络的形成/13
2.3 深度学中包含了哪些神经网络/13
2.3.1 全连接神经网络/13
2.3.2 卷积神经网络/17
2.3.3 循环神经网络/23
2.3.4 带有注意力机制的神经网络/30
2.3.5 自编码神经网络/34
2.4 图深度学中包含哪些神经网络/36
2.4.1 同构图神经网络/37
2.4.2 异构图神经网络/37
2.5 激活函数——加入非线因素,以解决线模型的缺陷/38
2.5.1 常用的激活函数/38
2.5.2 更好的激活函数——swish()与mish()/41
2.5.3 更适合nlp任务的激活函数——gelu()/43
2.5.4 激活函数结/44
2.5.5 分类任务与softmax算法/44
2.6 训练模型的/45
2.6.1 反向传播与bp算法/47
2.6.2 神经网络模块中的损失函数/49
2.6.3 学率/50
2.6.5 优化器/51
2.6.6 训练模型的相关算法,会用行/52
2.7 【实例】用循环神经网络实现退位减法/52
2.8 训练模型中的常见问题及优化/56
2.8.1 过拟合与欠拟合问题/56
2.8.2 改善模型过拟合的方法/56
2.8.3 了解正则化/57
2.8.4 了解dropout/57
2.8.5 targeted dropout与multi-sample dropout/58
2.8.6 批量归一化(bn)算法/59
2.8.7 多种bn算法的介绍与选取/64
2.8.8 全连接网络的深浅与泛化能力的联系/64
第3章 nlp的基础知识——nlp没那么“玄”/65
3.1 nlp的本质与/65
3.1.1 情感分析、相似度分析等任务的本质/65
3.1.2 完形填空、实体词识别等任务的本质/66
3.1.3 文章摘要任务、问答任务、翻译任务的本质/67
3.2 nlp的常用工具/68
3.2.1 自然语言处理工具包——spacy/68
3.2.2 中文分词工具——jieba/69
3.2.3 中文转拼音工具——pypinyin/69
3.2.4 评估翻译质量的算法库——sacrebleu/70
3.3 计算机中的字符编码/70
3.3.1 什么是ascii编码/71
3.3.2 为什么会出现乱码问题/71
3.3.3 什么是unicode/71
3.3.4 借助unicode 处理中文字符的常用作/73
3.4 计算机中的词与句/74
3.4.1 词表与词向量/75
3.4.2 词向量的及意义/75
3.4.3 多项式分布/76
3.4.4 什么是依存关系分析/77
3.4.5 什么是tf/79
3.4.6 什么是idf/79
3.4.7 什么是tf-idf/80
3.4.8 什么是bleu/80
3.5 什么是语言模型/81
3.5.1 统计语言模型/81
3.5.2 cbow与skip-gram语言模型/81
3.5.3 自编码(auto enco,ae)语言模型/82
3.5.4 自回归(auto regressive,ar)语言模型/83
3.6 文本预处理的常用方法/83
3.6.1 nlp数据集的获取与清洗/83
3.6.2 基于马尔可夫链的数据增强/84
第4章 搭建编程环境——从安装开始,更适合零基础入门/87
4.1 编程框架介绍/87
4.1.1 pytorch介绍/87
4.1.2 dgl库介绍/88
4.1.3 支持bert模型的常用工具库介绍/89
4.2 搭建python开发环境/89
4.3 搭建pytorch开发环境/91
4.4 搭建dgl环境/95
4.5 安装transformers库/96
第2篇 基础——神经网络与bert模型
第5章 pytorch编程基础/100
5.1 神经网络中的基础数据类型/100
5.2 矩阵运算的基础/101
5.2.1 转置矩阵/101
5.2.2 对称矩阵及其特/101
5.2.3 对角矩阵与单位矩阵/101
5.2.4 阿达玛积(hadamard product)/102
5.2.5 点积(dot product)/102
5.2.6 对角矩阵的特与作方法/103
5.3 pytorch中的张量/104
5.3.1 定义张量的方法/105
5.3.2 生成值张量/107
5.3.3 张量的基本作/108
5.3.4 在cpu和gpu控制的内存中定义张量/112
5.3.5 张量间的数据作/113
5.4 variable类型与自动微分模块/118
5.4.1 variable对象与tensor对象之间的转换/118
5.4.2 控制梯度计算的方法/119
5.4.3 variable对象的属/121
5.5 【实例】用pytorch实现一个简单模型/124
5.5.1 准备可复现的数据/124
5.5.2 实现并训练模型/125
5.5.3 可视化模型能力/128
5.6 定义模型结构的常用方法/129
5.6.1 module类的使用方法/129
5.6.2 模型中的参数(parameters变量)/131
5.6.3 为模型添加参数/132
5.6.4 从模型中获取参数/133
5.6.5 激活模型接/135
5.6.6 l2正则化接/136
5.6.7 dropout接/136
5.6.8 批量归一化接/137
5.6.9 【实例】手动实现bn的计算方法/139
5.7 保存与载入模型的常用方法/141
5.8 训练模型的接与使用/143
5.8.1 选取训练模型中的损失函数/143
5.8.2 【实例】softmax接的使用/144
5.8.3 优化器的使用与优化参数的查看/146
5.8.4 用退化学率训练模型/147
5.8.5 为模型添加钩子函数/152
5.8.6 多显卡的训练方法/153
5.8.7 梯度累加的训练方法/153
5.9 处理数据集的接与使用/154
5.9.1 用dataloader类实现自定义数据集/155
5.9.2 dataloader类中的多种采样器子类/155
5.9.3 torchtext工具与内置数据集/156
5.10 【实例】训练中文词向量/157
5.10.1 用jieba库进行中文样本预处理/158
5.10.2 按照skip-gram规则制作数据集/159
5.10.3 搭建模型并进行训练/161
5.10.4 夹角余弦值介绍/164
5.11 卷积神经网络的实现/166
5.11.1 了解卷积接/166
5.11.2 卷积作的类型/168
5.11.3 卷积参数与卷积结果的计算规则/169
5.11.4 【实例】卷积函数的使用/169
5.11.5 了解池化接/174
5.11.6 【实例】池化函数的使用/175
5.12 【实例】用卷积神经网络实现文本分类任务/177
5.12.1 了解用于文本分类的卷积网络——textn模型/177
5.12.2 编写代码实现实例/179
5.12.3 用多gpu并行训练模型/184
5.12.4 在多gpu的训练过程中,保存/读取模型文件的注意事项/185
5.12.5 处理显存残留问题/186
5.13 rnn的实现/187
5.13.1 lstm与gru接的实现/187
5.13.2 多项式分布采样接/188
5.14 【实例】用rnn训练语言模型/189
5.14.1 实现语言模型的思路与步骤/189
5.14.2 准备样本与代码实现/189
5.15 【实例】手动实现一个带有自注意力机制的模型/192
5.16 【实例】利用带注意力机制的循环神经网络对文本进行分类/194
5.16.1 制作等长数据集并实现lstm模型/194
5.16.2 用梯度剪辑优化训练过程/195
第6章 bert模型的/197
6.1 bert模型的起源——transformer模型/197
6.1.1 transformer模型出现之前的主流模型/197
6.1.2 transformer模型的/199
6.1.3 transformer模型的优缺点/204
6.2 【实例】用transformer模型进行中/英文翻译/204
6.3 bert模型的/206
6.3.1 bert模型的训练过程/207
6.3.2 bert模型的预训练方法/207
6.3.3 bert模型的掩码机制/208
6.3.4 bert模型的训练参数/210
6.3.5 bert模型的缺点/210
6.4 高精度的bertology系列模型/211
6.4.1 适合生成文章的模型——gpt模型/211
6.4.2 支持人机对话的模型——dialogpt模型/212
6.4.3 融合了bert模型与gpt技术的模型——mass模型/212
6.4.4 支持长文本输入的模型——transformer-xl模型/212
6.4.5 支持更长文本的模型——xl模型/213
6.4.6 弥补xl模型不足的模型——mp模型/217
6.4.7 稳健更好的模型——roberta模型/217
6.4.8 使用了稀疏注意力的模型——longformer、bigbird模型/218
6.4.9 基于词掩码的模型——bert-wwm、wo bert等模型/220
6.4.10 基于小段文字掩码的模型——spanbert模型/220
6.4.11 适合翻译任务的模型——t5模型/221
6.4.12 支持多种语言的翻译模型——xlm、xlm-roberta模型/222
6.4.13 既能阅读又能写作的模型——unilm 2.0模型/223
6.4.14 适用于语法纠错任务的模型——structbert、bart模型/224
6.4.15 可以进行定向写作的模型——ctrl模型/225
6.4.16 适合摘要生成的模型——pegasus模型/226
6.4.17 支持更多语言的模型——t-ulr v2模型/227
6.5 小规模的bertology系列模型/227
6.5.1 比roberta模型训练速度更快的模型——electra模型/228
6.5.2 适用于文本分类的模型——prado、pqrnn模型/229
6.5.3 比bert模型更适合于部署场景的模型——distillbert模型/231
6.5.4 比bert模型更快的模型——fastbert模型/232
6.5.5 带有通用蒸馏方案的模型——minilm模型/233
6.5.6 精简版的bert模型——albert、albert_tiny、
albert v2模型/234
6.6 bertology系列模型的预训练方法结/237
6.6.1 ae式训练方法的常用策略/237
6.6.2 更多的训练经验/237
第7章 bert模型的快速应用——bert模型虽然强大,使用却不复杂!/239
7.1 了解transformers库/239
7.2 transformers库的3层应用结构/240
7.3 【实例】用transformers库的管道方式完成多种nlp任务/241
7.3.1 在管道方式中指定nlp任务/241
7.3.2 代码实现:完成文本分类任务/242
7.3.3 代码实现:完成特征提取任务/243
7.3.4 代码实现:完成完形填空任务/244
7.3.5 代码实现:完成阅读理解任务/245
7.3.6 代码实现:完成摘要生成任务/247
7.3.7 预训练模型文件的组成与其加载时的固定名称/248
7.3.8 代码实现:完成实体词识别任务/248
7.3.9 管道方式的工作/249
7.3.10 在管道方式中应用指定模型/251
7.4 transformers库中的自动模型(automodel)类/252
7.4.1 各种automodel类/252
7.4.2 automodel类的模型加载机制/253
7.4.3 transformers库中的其他语言模型/254
7.5 transformers库中的bertology系列模型/255
7.5.1 transformers库的文件结构/255
7.5.2 获取和加载预训练模型文件/257
7.5.3 查找transformers库中可以使用的模型/260
7.5.4 【实例】用bert模型实现完形填空任务/261
7.5.5 【扩展实例】用自动模型类替换bertformaskedlm类/264
7.6 transformers库中的词表工具/264
7.6.1 pretrainedtokenizer类中的特殊词/265
7.6.2 pretrainedtokenizer类中的特殊词的使用/266
7.6.3 向pretrainedtokenizer类中添加词/269
7.6.4 【实例】用手动加载gpt-2模型权重的方式将句子补充完整/270
7.6.5 子词拆分/274
7.7 【实例】用迁移学训练bert模型来对中文分类/275
7.7.1 nlp中的迁移学/275
7.7.2 构建数据集/277
7.7.3 构建并加载bert模型的预训练模型/279
7.7.4 transformers库中的底层类/280
7.7.5 用退化学率训练模型/281
7.7.6 用数据增强方法训练模型/282
第8章 模型的可解释——深入模型,探究其工作的根源/283
8.1 模型的可解释库/283
8.1.1 了解captum库/283
8.1.2 captum库的可视化工具——captum insights/284
8.2 什么是梯度积分方法/284
8.3 【实例】对nlp模型的可解释分析/284
8.3.1 分析词嵌入模型/284
8.3.2 拆解nlp模型的处理过程/285
8.3.3 用captum库提取nlp模型的词嵌入层/286
8.3.4 用梯度积分的方法计算模型的可解释/287
8.3.5 可视化模型的可解释/289
8.4 【实例】bert模型的可解释分析/291
8.4.1 了解bert模型的可解释工具——bertviz/291
8.4.2 用bertviz工具可视化bert模型的权重/292
8.4.3 分析bert模型的权重参数/296
8.5 用图神经网络解释bert模型/300
8.5.1 点积计算与聚合计算的关系/300
8.5.2 从图的角度思bert模型/302
第3篇 bert模型实战
第9章 图神经网络与bert模型的结合/306
9.1 图神经网络基础/306
9.1.1 图的相关术语和作/306
9.1.2 图卷积神经网络/310
9.2 dgl库的使用方法/314
9.2.1 创建图结构/314
9.2.2 dgl库与workx库的相互转换/316
9.2.3 图的基本作/319
9.2.4 图的消息传播机制/322
9.2.5 dgl库中的多图处理/324
9.3 【实例】用图节点的聚合方法实现bert模型/325
9.3.1 基于transformers库的bert模型修改方案/325
9.3.2 实现图节点聚合的核心代码/326
9.3.3 将原bert模型的权重应用到基于图节点聚合方法实现的
bert模型上/327
9.4 什么是关系图卷积网络(r-g)模型/329
9.4.1 r-g模型的/329
9.4.2 基于r-g模型的优化/330
9.4.3 r-g模型的实现/330
9.5 【实例】用r-g模型理解文本中的代词/332
9.5.1 代词数据集(gap)介绍/332
9.5.2 将gap数据集转换成“图”结构数据的思路/333
9.5.3 用bert模型提取代词特征/335
9.5.4 用bert模型提取其他词特征/337
9.5.5 用spacy工具和批次图方法构建图数据集/339
9.5.6 搭建多层r-g模型/344
9.5.7 用5折交验证方法训练模型/345
0章 bert模型的行业应用/347
10.1 bert模型在文本纠错领域的应用/347
10.1.1 文本纠错中的常见任务及解决办法/347
10.1.2 理解bert模型的纠错能力/348
10.1.3 改进bert模型使其具有更强的纠错能力/348
10.1.4 专用于文本纠错的模型——soft-masked bert模型/349
10.1.5 基于图神经网络的文本纠错模型——spellg模型/350
10.1.6 【实例】用transformers和dgl库实现spellg模型/351
10.2 bert技术在聊天机器人领域的应用/352
10.2.1 聊天机器人的种类与实现技术/353
10.2.2 基于bert模型完成聊天任务的思路/354
10.2.3 【实例】用累加梯度训练支持中文的dialogpt模型/355
10.2.4 更强大的多轮聊天模型——meena模型/360
10.3 bert模型在服务器端部署的应用/360
10.3.1 用transformers-cli工具快速部署bert模型/360
10.3.2 用torchserve库部署bert模型/362
点击展开
点击收起
— 没有更多了 —
以下为对购买帮助不大的评价