TensorFlow与自然语言处理应用

TensorFlow与自然语言处理应用
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2019-07
版次: 1
ISBN: 9787302531012
定价: 89.00
装帧: 其他
开本: 16开
纸张: 胶版纸
19人买过
  • 自然语言处理(NLP)是计算机科学、人工智能、语言学关注计算机和人类(自然)语言之间的相互作用的领域。自然语言处理是机器学习的应用之一,用于分析、理解和生成自然语言,它与人机交互有关,*终实现人与计算机之间更好的交流。
      本书分为12章,内容包括自然语言处理基础、深度学习基础、TensorFlow、词嵌入(Word Embedding)、卷积神经网络(CNN)与句子分类、循环神经网络(RNN)、长短期记忆(LSTM)、利用LSTM实现图像字幕自动生成、情感分析、机器翻译及智能问答系统。
      本书适合TensorFlow自然语言处理技术的初学者、NLP应用开发人员、NLP研究人员,也适合高等院校和培训学校相关专业的师生教学参考。 李孟全,中国社会科学院研究生院硕士。十多年IT从业经历,先后从事过程序员、项目负责人、部门负责人等岗位。长期关注人工智能领域,在机器学习、深度学习和NLP领域有一定的积累。 目  录

    第1章  自然语言处理基础    1

    1.1  认识自然语言处理    2

    1.2  自然语言处理方面的任务    2

    1.3  第一阶段:偏理论的理性主义    4

    1.4  第二阶段:偏实践应用的经验主义    5

    1.5  第三阶段:深度学习阶段    7

    1.6  NLP中深度学习的局限性    9

    1.7  NLP的应用场景    10

    1.8  NLP的发展前景    13

    1.9  总结    14

    第2章  深度学习基础    15

    2.1  深度学习介绍    15

    2.2  深度学习演变简述    16

    2.2.1  深度学习早期    16

    2.2.2  深度学习的发展    17

    2.2.3  深度学习的爆发    17

    2.3  神经网络介绍    18

    2.4  神经网络的基本结构    19

    2.5  两层神经网络(多层感知器)    22

    2.5.1  简述    22

    2.5.2  两层神经网络结构    22

    2.6  多层神经网络(深度学习)    23

    2.6.1  简述    23

    2.6.2  多层神经网络结构    24

    2.7  编码器-解码器网络    24

    2.8  随机梯度下降    25

    2.9  反向传播    27

    2.10  总结    31

    第3章  TensorFlow    32

    3.1  TensorFlow概念解读    32

    3.2  TensorFlow主要特征    33

    3.2.1  自动求微分    33

    3.2.2  多语言支持    33

    3.2.3  高度的灵活性    34

    3.2.4  真正的可移植性    34

    3.2.5  将科研和产品联系在一起    34

    3.2.6  性能最优化    34

    3.3  TensorFlow安装    34

    3.4  TensorFlow计算图    40

    3.5  TensorFlow张量和模型会话    42

    3.5.1  张量    42

    3.5.2  会话    43

    3.6  TensorFlow工作原理    43

    3.7  通过一个示例来认识TensorFlow    45

    3.8  TensorFlow客户端    47

    3.9  TensorFlow中常见元素解读    49

    3.9.1  在TensorFlow中定义输入    50

    3.9.2  在TensorFlow中定义变量    56

    3.9.3  定义TensorFlow输出    57

    3.9.4  定义TensorFlow运算或操作    58

    3.10  变量作用域机制    68

    3.10.1  基本原理    68

    3.10.2  通过示例解读    69

    3.11  实现一个神经网络    71

    3.11.1  数据准备    71

    3.11.2  定义TensorFlow计算图    71

    3.11.3  运行神经网络    73

    3.12  总结    75

    第4章  词嵌入    77

    4.1  分布式表示    78

    4.1.1  分布式表示的直观认识    78

    4.1.2  分布式表示解读    78

    4.2  Word2vec模型(以Skip-Gram为例)    84

    4.2.1  直观认识Word2vec    85

    4.2.2  定义任务    85

    4.2.3  从原始文本创建结构化数据    85

    4.2.4  定义词嵌入层和神经网络    86

    4.2.5  整合    87

    4.2.6  定义损失函数    89

    4.2.7  利用TensorFlow实现Skip-Gram模型    93

    4.3  原始Skip-Gram模型和改进Skip-Gram模型对比分析    96

    4.3.1  原始的Skip-Gram算法的实现    97

    4.3.2  将原始Skip-Gram与改进后的Skip-Gram进行比较    98

    4.4  CBOW模型    98

    4.4.1  CBOW模型简述    98

    4.4.2  利用TensorFlow实现CBOW 算法    100

    4.5  Skip-Gram和 CBOW对比    101

    4.5.1  Skip-Gram和CBOW模型结构分析    101

    4.5.2  代码层面对比两模型性能    102

    4.5.3  Skip-Gram和CBOW模型孰优    104

    4.6  词嵌入算法的扩展    105

    4.6.1  使用Unigram分布进行负采样    105

    4.6.2  降采样    107

    4.6.3  CBOW 和其扩展类型比较    107

    4.7  结构化Skip-Gram和连续窗口模型    108

    4.7.1  结构化Skip-Gram算法    108

    4.7.2  连续窗口模型    110

    4.8  GloVe模型    111

    4.8.1  共现矩阵    112

    4.8.2  使用GloVe模型训练词向量    112

    4.8.3  GloVe模型实现    113

    4.9  使用Word2Vec进行文档分类    114

    4.9.1  数据集    115

    4.9.2  使用词向量对文档进行分类    115

    4.9.3  小结    119

    4.10  总结    120

    第5章  卷积神经网络与句子分类    121

    5.1  认识卷积神经网络    121

    5.1.1  卷积神经网络的历史演变    121

    5.1.2  卷积神经网络结构简述    122

    5.2  输入层    125

    5.3  卷积运算层    126

    5.3.1  标准卷积    126

    5.3.2  带步幅的卷积    127

    5.3.3  带填充的卷积    127

    5.3.4  转置卷积    128

    5.3.5  参数共享机制    129

    5.4  激活函数    131

    5.4.1  常见激活函数及选择    131

    5.4.2  各个非线性激活函数对比分析    132

    5.5  池化层    134

    5.5.1  理解池化    134

    5.5.2  池化作用    135

    5.5.3  最大池化    135

    5.5.4  平均池化    136

    5.6  全连接层    136

    5.7  整合各层并使用反向传播进行训练    137

    5.8  常见经典卷积神经网络    138

    5.8.1  AlexNet    138

    5.8.2  VGGNet    143

    5.8.3  Google Inception Net    146

    5.8.4  ResNet网络    149

    5.9  利用CNN对MNIST数据集进行图片分类    150

    5.9.1  数据样本    151

    5.9.2  实现CNN    151

    5.9.3  分析CNN产生的预测结果    153

    5.10  利用CNN进行句子分类    154

    5.10.1  CNN结构部分    154

    5.10.2  池化运算    157

    5.10.3  利用CNN实现句子分类    158

    5.11  总结    160

    第6章  循环神经网络    161

    6.1  计算图及其展开    162

    6.2  RNN解读    163

    6.2.1  序列数据模型    163

    6.2.2  数学层面简要解读RNN    165

    6.3  通过时间的反向传播算法    166

    6.3.1  反向传播工作原理    166

    6.3.2  直接使用反向传播的局限性    167

    6.3.3  通过反向传播训练RNN    168

    6.3.4  截断BPTT    168

    6.3.5  BPTT的局限性——梯度消失和梯度爆炸    168

    6.4  RNN的应用类型    170

    6.4.1  一对一的RNN    170

    6.4.2  一对多的RNN    170

    6.4.3  多对一的RNN    171

    6.4.4  多对多的RNN    171

    6.5  利用RNN生成文本    172

    6.5.1  定义超参数    172

    6.5.2  随着时间的推移展开截断BPTT的输入    173

    6.5.3  定义验证数据集    173

    6.5.4  定义权重值和偏差    174

    6.5.5  定义状态永久变量    174

    6.5.6  使用展开的输入计算隐藏状态和输出    174

    6.5.7  计算损失    175

    6.5.8  在新文本片段的开头重置状态    175

    6.5.9  计算验证输出    176

    6.5.10  计算梯度和优化    176

    6.6  输出新生成的文本片段    176

    6.7  评估RNN的文本结果输出    177

    6.8  困惑度——文本生成结果质量的度量    178

    6.9  具有上下文特征的循环神经网络——RNN-CF    179

    6.9.1  RNN-CF的技术说明    180

    6.9.2  RNN-CF的实现    181

    6.9.3  定义RNN-CF超参数    181

    6.9.4  定义输入和输出占位符    181

    6.9.5  定义RNN-CF的权重值    182

    6.9.6  用于维护隐藏层和上下文状态的变量和操作    183

    6.9.7  计算输出    184

    6.9.8  计算损失    185

    6.9.9  计算验证输出    185

    6.9.10  计算测试输出    186

    6.9.11  计算梯度和优化    186

    6.10  使用RNN-CF生成的文本    186

    6.11  总结    188

    第7章  长短期记忆    190

    7.1  LSTM简述    191

    7.2  LSTM工作原理详解    192

    7.2.1  梯度信息如何无损失传递    194

    7.2.2  将信息装载入长时记忆细胞    194

    7.2.3  更新细胞状态可能产生的问题及解决方案    196

    7.2.4  LSTM模型输出    199

    7.3  LSTM与标准RNN的区别    200

    7.4  LSTM如何避免梯度消失和梯度爆炸问题    201

    7.5  优化LSTM    203

    7.5.1  贪婪采样    203

    7.5.2  集束搜索    204

    7.5.3  使用词向量    205

    7.5.4  双向LSTM    206

    7.6  LSTM的其他变体    207

    7.6.1  窥视孔连接    207

    7.6.2  门控循环单元    208

    7.7  总结    210

    第8章  利用LSTM自动生成文本    211

    8.1  文本到文本的生成    212

    8.1.1  文本摘要    212

    8.1.2  句子压缩与融合    213

    8.1.3  文本复述生成    213

    8.2  意义到文本的生成    214

    8.2.1  基于深层语法的文本生成    214

    8.2.2  基于同步文法的文本生成    215

    8.3  数据到文本的生成    216

    8.4  文本自动生成前的数据准备    218

    8.4.1  数据集    218

    8.4.2  预处理数据    220

    8.5  实现LSTM    220

    8.5.1  定义超参数    221

    8.5.2  定义参数    221

    8.5.3  定义LSTM细胞及其操作    223

    8.5.4  定义输入和标签    223

    8.5.5  定义处理序列数据所需的序列计算    224

    8.5.6  定义优化器    225

    8.5.7  随着时间的推移衰减学习率    225

    8.5.8  进行预测    226

    8.5.9  计算困惑度(损失)    227

    8.5.10  重置状态    227

    8.5.11  贪婪采样打破重复性    227

    8.5.12  生成新文本    227

    8.5.13  示例生成的文本    228

    8.6  标准LSTM与带有窥视孔连接和GRU的LSTM的比较    229

    8.6.1  标准LSTM    229

    8.6.2  门控循环单元    231

    8.6.3  带窥视孔连接的LSTM    233

    8.6.4  随着时间的推移训练和验证困惑度    235

    8.7  优化LSTM——集束搜索    236

    8.7.1  实现集束搜索    236

    8.7.2  使用集束搜索生成文本的示例    238

    8.8  改进LSTM——使用词而不是n-gram生成文本    239

    8.8.1  维度问题    239

    8.8.2  完善Word2vec    239

    8.8.3  使用Word2vec生成文本    240

    8.8.4  使用LSTM-Word2vec和集束搜索生成文本的示例    241

    8.8.5  困惑度随着时间推移的变化情况    242

    8.9  使用TensorFlow RNN API    242

    8.10  总结    246

    第9章  利用LSTM实现图像字幕自动生成    247

    9.1  简要介绍    248

    9.2  发展背景    248

    9.3  利用深度学习框架从图像中生成字幕    249

    9.3.1  End-to-End 框架    249

    9.3.2  组合框架    251

    9.3.3  其他框架    252

    9.4  评估指标和基准    253

    9.5  近期研究    254

    9.6  图像字幕的产业布局    255

    9.7  详解图像字幕自动生成任务    255

    9.7.1  认识数据集    255

    9.7.2  用于图像字幕自动生成的深度学习管道    257

    9.7.3  使用CNN提取图像特征    259

    9.7.4  使用VGG-16加载权重值并进行推理    260

    9.7.5  学习词向量    264

    9.7.6  为LSTM模型准备字幕数据    265

    9.7.7  生成LSTM的数据    266

    9.7.8  定义LSTM    267

    9.7.9  定量评估结果    270

    9.7.10  为测试图像集生成字幕    273

    9.7.11  使用TensorFlow RNN API和预训练的GloVe词向量    276

    9.8  总结    284

    第10章  情感分析    286

    10.1  认识情感分析    286

    10.2  情感分析的问题    288

    10.3  情感文档分类    291

    10.4  句子主观性与情感分类    292

    10.5  基于方面(Aspect)的情感分析    293

    10.6  情感词典生成    293

    10.7  意见摘要    294

    10.8  比较观点分析    294

    10.9  意见搜索    295

    10.10  垃圾评论检测    295

    10.10.1  垃圾评论概述    295

    10.10.2  垃圾评论的类型    296

    10.10.3  可观察到的信息    297

    10.10.4  数据样本    298

    10.10.5  垃圾评论检测方法    299

    10.11  评论的质量    302

    10.12  利用TensorFlow进行中文情感分析实现    304

    10.12.1  训练语料    304

    10.12.2  分词和切分词    304

    10.12.3  索引长度标准化    305

    10.12.4  反向切分词    305

    10.12.5  准备词向量矩阵    306

    10.12.6  填充和截短    306

    10.12.7  构建模型    306

    10.12.8  结论    307

    10.13  总结    308

    第11章  机器翻译    310

    11.1  机器翻译简介    311

    11.2  基于规则的翻译    312

    11.2.1  基于转换的机器翻译    312

    11.2.2  语际机器翻译    314

    11.2.3  基于字典的机器翻译    317

    11.3  统计机器翻译    318

    11.3.1  统计机器翻译的基础    318

    11.3.2  基于词的翻译    319

    11.3.3  基于短语的翻译    319

    11.3.4  基于句法的翻译    320

    11.3.5  基于分层短语的翻译    321

    11.3.6  统计机器翻译的优势与不足    321

    11.4  神经网络机器翻译    321

    11.4.1  发展背景    321

    11.4.2  神经网络机器翻译的特性    323

    11.4.3  通过例子来认识神经网络机器翻译(NMT)模型的结构    323

    11.4.4  神经网络机器翻译(NMT)模型结构详解    323

    11.5  神经网络机器翻译(NMT)系统的前期准备工作    326

    11.5.1  训练阶段    326

    11.5.2  反转源语句    327

    11.5.3  测试阶段    328

    11.6  BLEU评分——评估机器翻译系统    329

    11.6.1  BLEU简述    329

    11.6.2  BLEU度量    330

    11.6.3  BLEU的调整和惩罚因子    332

    11.6.4  BLEU得分总结    333

    11.7  完整实现神经网络机器翻译——德语到英语翻译    333

    11.7.1  关于样本数据    334

    11.7.2  预处理数据    334

    11.7.3  学习词向量    335

    11.7.4  定义编码器和解码器    336

    11.7.5  定义端到端输出计算    338

    11.7.6  神经网络机器翻译系统运行结果(部分)的展示    339

    11.8  结合词向量训练神经网络机器翻译系统    342

    11.8.1  最大化数据集词汇和预训练词向量之间的匹配    342

    11.8.2  为词嵌入层定义TensorFlow变量    344

    11.9  优化神经网络机器翻译系统    346

    11.9.1  Teacher Forcing算法    346

    11.9.2  深度 LSTM    348

    11.9.3  注意力模型    349

    11.10  实现注意力机制    356

    11.10.1  定义权重值    356

    11.10.2  计算注意力    357

    11.10.3  含有注意力机制的神经网络机器翻译的部分翻译结果    358

    11.11  可视化源语句和目标语句的注意力    361

    11.12  历史性突破——BERT模型    362

    11.12.1  BERT模型简述    362

    11.12.2  BERT模型结构    363

    11.13  总结    364

    第12章  智能问答系统    366

    12.1  概要    366

    12.2  基于知识库的问答    367

    12.2.1  信息抽取    367

    12.2.2  语义分析模式    371

    12.2.3  信息抽取与语义分析小结    374

    12.2.4  挑战    374

    12.3  机器理解中的深度学习    375

    12.3.1  任务描述    375

    12.3.2  基于特征工程的机器理解方法    378

    12.3.3  机器理解中的深度学习方法    381

    12.4  利用TensorFlow实现问答任务    386

    12.4.1  bAbI数据集    386

    12.4.2  分析GloVe并处理未知令牌    387

    12.4.3  已知或未知的数据部分    388

    12.4.4  定义超参数    390

    12.4.5  神经网络结构部分    391

    12.4.6  输入部分    392

    12.4.7  问题部分    392

    12.4.8  情景记忆部分    392

    12.4.9  注意力部分    393

    12.4.10  答案模块    394

    12.4.11  模型优化    395

    12.4.12  训练模型并分析预测    395

    12.5  总结    397
  • 内容简介:
    自然语言处理(NLP)是计算机科学、人工智能、语言学关注计算机和人类(自然)语言之间的相互作用的领域。自然语言处理是机器学习的应用之一,用于分析、理解和生成自然语言,它与人机交互有关,*终实现人与计算机之间更好的交流。
      本书分为12章,内容包括自然语言处理基础、深度学习基础、TensorFlow、词嵌入(Word Embedding)、卷积神经网络(CNN)与句子分类、循环神经网络(RNN)、长短期记忆(LSTM)、利用LSTM实现图像字幕自动生成、情感分析、机器翻译及智能问答系统。
      本书适合TensorFlow自然语言处理技术的初学者、NLP应用开发人员、NLP研究人员,也适合高等院校和培训学校相关专业的师生教学参考。
  • 作者简介:
    李孟全,中国社会科学院研究生院硕士。十多年IT从业经历,先后从事过程序员、项目负责人、部门负责人等岗位。长期关注人工智能领域,在机器学习、深度学习和NLP领域有一定的积累。
  • 目录:
    目  录

    第1章  自然语言处理基础    1

    1.1  认识自然语言处理    2

    1.2  自然语言处理方面的任务    2

    1.3  第一阶段:偏理论的理性主义    4

    1.4  第二阶段:偏实践应用的经验主义    5

    1.5  第三阶段:深度学习阶段    7

    1.6  NLP中深度学习的局限性    9

    1.7  NLP的应用场景    10

    1.8  NLP的发展前景    13

    1.9  总结    14

    第2章  深度学习基础    15

    2.1  深度学习介绍    15

    2.2  深度学习演变简述    16

    2.2.1  深度学习早期    16

    2.2.2  深度学习的发展    17

    2.2.3  深度学习的爆发    17

    2.3  神经网络介绍    18

    2.4  神经网络的基本结构    19

    2.5  两层神经网络(多层感知器)    22

    2.5.1  简述    22

    2.5.2  两层神经网络结构    22

    2.6  多层神经网络(深度学习)    23

    2.6.1  简述    23

    2.6.2  多层神经网络结构    24

    2.7  编码器-解码器网络    24

    2.8  随机梯度下降    25

    2.9  反向传播    27

    2.10  总结    31

    第3章  TensorFlow    32

    3.1  TensorFlow概念解读    32

    3.2  TensorFlow主要特征    33

    3.2.1  自动求微分    33

    3.2.2  多语言支持    33

    3.2.3  高度的灵活性    34

    3.2.4  真正的可移植性    34

    3.2.5  将科研和产品联系在一起    34

    3.2.6  性能最优化    34

    3.3  TensorFlow安装    34

    3.4  TensorFlow计算图    40

    3.5  TensorFlow张量和模型会话    42

    3.5.1  张量    42

    3.5.2  会话    43

    3.6  TensorFlow工作原理    43

    3.7  通过一个示例来认识TensorFlow    45

    3.8  TensorFlow客户端    47

    3.9  TensorFlow中常见元素解读    49

    3.9.1  在TensorFlow中定义输入    50

    3.9.2  在TensorFlow中定义变量    56

    3.9.3  定义TensorFlow输出    57

    3.9.4  定义TensorFlow运算或操作    58

    3.10  变量作用域机制    68

    3.10.1  基本原理    68

    3.10.2  通过示例解读    69

    3.11  实现一个神经网络    71

    3.11.1  数据准备    71

    3.11.2  定义TensorFlow计算图    71

    3.11.3  运行神经网络    73

    3.12  总结    75

    第4章  词嵌入    77

    4.1  分布式表示    78

    4.1.1  分布式表示的直观认识    78

    4.1.2  分布式表示解读    78

    4.2  Word2vec模型(以Skip-Gram为例)    84

    4.2.1  直观认识Word2vec    85

    4.2.2  定义任务    85

    4.2.3  从原始文本创建结构化数据    85

    4.2.4  定义词嵌入层和神经网络    86

    4.2.5  整合    87

    4.2.6  定义损失函数    89

    4.2.7  利用TensorFlow实现Skip-Gram模型    93

    4.3  原始Skip-Gram模型和改进Skip-Gram模型对比分析    96

    4.3.1  原始的Skip-Gram算法的实现    97

    4.3.2  将原始Skip-Gram与改进后的Skip-Gram进行比较    98

    4.4  CBOW模型    98

    4.4.1  CBOW模型简述    98

    4.4.2  利用TensorFlow实现CBOW 算法    100

    4.5  Skip-Gram和 CBOW对比    101

    4.5.1  Skip-Gram和CBOW模型结构分析    101

    4.5.2  代码层面对比两模型性能    102

    4.5.3  Skip-Gram和CBOW模型孰优    104

    4.6  词嵌入算法的扩展    105

    4.6.1  使用Unigram分布进行负采样    105

    4.6.2  降采样    107

    4.6.3  CBOW 和其扩展类型比较    107

    4.7  结构化Skip-Gram和连续窗口模型    108

    4.7.1  结构化Skip-Gram算法    108

    4.7.2  连续窗口模型    110

    4.8  GloVe模型    111

    4.8.1  共现矩阵    112

    4.8.2  使用GloVe模型训练词向量    112

    4.8.3  GloVe模型实现    113

    4.9  使用Word2Vec进行文档分类    114

    4.9.1  数据集    115

    4.9.2  使用词向量对文档进行分类    115

    4.9.3  小结    119

    4.10  总结    120

    第5章  卷积神经网络与句子分类    121

    5.1  认识卷积神经网络    121

    5.1.1  卷积神经网络的历史演变    121

    5.1.2  卷积神经网络结构简述    122

    5.2  输入层    125

    5.3  卷积运算层    126

    5.3.1  标准卷积    126

    5.3.2  带步幅的卷积    127

    5.3.3  带填充的卷积    127

    5.3.4  转置卷积    128

    5.3.5  参数共享机制    129

    5.4  激活函数    131

    5.4.1  常见激活函数及选择    131

    5.4.2  各个非线性激活函数对比分析    132

    5.5  池化层    134

    5.5.1  理解池化    134

    5.5.2  池化作用    135

    5.5.3  最大池化    135

    5.5.4  平均池化    136

    5.6  全连接层    136

    5.7  整合各层并使用反向传播进行训练    137

    5.8  常见经典卷积神经网络    138

    5.8.1  AlexNet    138

    5.8.2  VGGNet    143

    5.8.3  Google Inception Net    146

    5.8.4  ResNet网络    149

    5.9  利用CNN对MNIST数据集进行图片分类    150

    5.9.1  数据样本    151

    5.9.2  实现CNN    151

    5.9.3  分析CNN产生的预测结果    153

    5.10  利用CNN进行句子分类    154

    5.10.1  CNN结构部分    154

    5.10.2  池化运算    157

    5.10.3  利用CNN实现句子分类    158

    5.11  总结    160

    第6章  循环神经网络    161

    6.1  计算图及其展开    162

    6.2  RNN解读    163

    6.2.1  序列数据模型    163

    6.2.2  数学层面简要解读RNN    165

    6.3  通过时间的反向传播算法    166

    6.3.1  反向传播工作原理    166

    6.3.2  直接使用反向传播的局限性    167

    6.3.3  通过反向传播训练RNN    168

    6.3.4  截断BPTT    168

    6.3.5  BPTT的局限性——梯度消失和梯度爆炸    168

    6.4  RNN的应用类型    170

    6.4.1  一对一的RNN    170

    6.4.2  一对多的RNN    170

    6.4.3  多对一的RNN    171

    6.4.4  多对多的RNN    171

    6.5  利用RNN生成文本    172

    6.5.1  定义超参数    172

    6.5.2  随着时间的推移展开截断BPTT的输入    173

    6.5.3  定义验证数据集    173

    6.5.4  定义权重值和偏差    174

    6.5.5  定义状态永久变量    174

    6.5.6  使用展开的输入计算隐藏状态和输出    174

    6.5.7  计算损失    175

    6.5.8  在新文本片段的开头重置状态    175

    6.5.9  计算验证输出    176

    6.5.10  计算梯度和优化    176

    6.6  输出新生成的文本片段    176

    6.7  评估RNN的文本结果输出    177

    6.8  困惑度——文本生成结果质量的度量    178

    6.9  具有上下文特征的循环神经网络——RNN-CF    179

    6.9.1  RNN-CF的技术说明    180

    6.9.2  RNN-CF的实现    181

    6.9.3  定义RNN-CF超参数    181

    6.9.4  定义输入和输出占位符    181

    6.9.5  定义RNN-CF的权重值    182

    6.9.6  用于维护隐藏层和上下文状态的变量和操作    183

    6.9.7  计算输出    184

    6.9.8  计算损失    185

    6.9.9  计算验证输出    185

    6.9.10  计算测试输出    186

    6.9.11  计算梯度和优化    186

    6.10  使用RNN-CF生成的文本    186

    6.11  总结    188

    第7章  长短期记忆    190

    7.1  LSTM简述    191

    7.2  LSTM工作原理详解    192

    7.2.1  梯度信息如何无损失传递    194

    7.2.2  将信息装载入长时记忆细胞    194

    7.2.3  更新细胞状态可能产生的问题及解决方案    196

    7.2.4  LSTM模型输出    199

    7.3  LSTM与标准RNN的区别    200

    7.4  LSTM如何避免梯度消失和梯度爆炸问题    201

    7.5  优化LSTM    203

    7.5.1  贪婪采样    203

    7.5.2  集束搜索    204

    7.5.3  使用词向量    205

    7.5.4  双向LSTM    206

    7.6  LSTM的其他变体    207

    7.6.1  窥视孔连接    207

    7.6.2  门控循环单元    208

    7.7  总结    210

    第8章  利用LSTM自动生成文本    211

    8.1  文本到文本的生成    212

    8.1.1  文本摘要    212

    8.1.2  句子压缩与融合    213

    8.1.3  文本复述生成    213

    8.2  意义到文本的生成    214

    8.2.1  基于深层语法的文本生成    214

    8.2.2  基于同步文法的文本生成    215

    8.3  数据到文本的生成    216

    8.4  文本自动生成前的数据准备    218

    8.4.1  数据集    218

    8.4.2  预处理数据    220

    8.5  实现LSTM    220

    8.5.1  定义超参数    221

    8.5.2  定义参数    221

    8.5.3  定义LSTM细胞及其操作    223

    8.5.4  定义输入和标签    223

    8.5.5  定义处理序列数据所需的序列计算    224

    8.5.6  定义优化器    225

    8.5.7  随着时间的推移衰减学习率    225

    8.5.8  进行预测    226

    8.5.9  计算困惑度(损失)    227

    8.5.10  重置状态    227

    8.5.11  贪婪采样打破重复性    227

    8.5.12  生成新文本    227

    8.5.13  示例生成的文本    228

    8.6  标准LSTM与带有窥视孔连接和GRU的LSTM的比较    229

    8.6.1  标准LSTM    229

    8.6.2  门控循环单元    231

    8.6.3  带窥视孔连接的LSTM    233

    8.6.4  随着时间的推移训练和验证困惑度    235

    8.7  优化LSTM——集束搜索    236

    8.7.1  实现集束搜索    236

    8.7.2  使用集束搜索生成文本的示例    238

    8.8  改进LSTM——使用词而不是n-gram生成文本    239

    8.8.1  维度问题    239

    8.8.2  完善Word2vec    239

    8.8.3  使用Word2vec生成文本    240

    8.8.4  使用LSTM-Word2vec和集束搜索生成文本的示例    241

    8.8.5  困惑度随着时间推移的变化情况    242

    8.9  使用TensorFlow RNN API    242

    8.10  总结    246

    第9章  利用LSTM实现图像字幕自动生成    247

    9.1  简要介绍    248

    9.2  发展背景    248

    9.3  利用深度学习框架从图像中生成字幕    249

    9.3.1  End-to-End 框架    249

    9.3.2  组合框架    251

    9.3.3  其他框架    252

    9.4  评估指标和基准    253

    9.5  近期研究    254

    9.6  图像字幕的产业布局    255

    9.7  详解图像字幕自动生成任务    255

    9.7.1  认识数据集    255

    9.7.2  用于图像字幕自动生成的深度学习管道    257

    9.7.3  使用CNN提取图像特征    259

    9.7.4  使用VGG-16加载权重值并进行推理    260

    9.7.5  学习词向量    264

    9.7.6  为LSTM模型准备字幕数据    265

    9.7.7  生成LSTM的数据    266

    9.7.8  定义LSTM    267

    9.7.9  定量评估结果    270

    9.7.10  为测试图像集生成字幕    273

    9.7.11  使用TensorFlow RNN API和预训练的GloVe词向量    276

    9.8  总结    284

    第10章  情感分析    286

    10.1  认识情感分析    286

    10.2  情感分析的问题    288

    10.3  情感文档分类    291

    10.4  句子主观性与情感分类    292

    10.5  基于方面(Aspect)的情感分析    293

    10.6  情感词典生成    293

    10.7  意见摘要    294

    10.8  比较观点分析    294

    10.9  意见搜索    295

    10.10  垃圾评论检测    295

    10.10.1  垃圾评论概述    295

    10.10.2  垃圾评论的类型    296

    10.10.3  可观察到的信息    297

    10.10.4  数据样本    298

    10.10.5  垃圾评论检测方法    299

    10.11  评论的质量    302

    10.12  利用TensorFlow进行中文情感分析实现    304

    10.12.1  训练语料    304

    10.12.2  分词和切分词    304

    10.12.3  索引长度标准化    305

    10.12.4  反向切分词    305

    10.12.5  准备词向量矩阵    306

    10.12.6  填充和截短    306

    10.12.7  构建模型    306

    10.12.8  结论    307

    10.13  总结    308

    第11章  机器翻译    310

    11.1  机器翻译简介    311

    11.2  基于规则的翻译    312

    11.2.1  基于转换的机器翻译    312

    11.2.2  语际机器翻译    314

    11.2.3  基于字典的机器翻译    317

    11.3  统计机器翻译    318

    11.3.1  统计机器翻译的基础    318

    11.3.2  基于词的翻译    319

    11.3.3  基于短语的翻译    319

    11.3.4  基于句法的翻译    320

    11.3.5  基于分层短语的翻译    321

    11.3.6  统计机器翻译的优势与不足    321

    11.4  神经网络机器翻译    321

    11.4.1  发展背景    321

    11.4.2  神经网络机器翻译的特性    323

    11.4.3  通过例子来认识神经网络机器翻译(NMT)模型的结构    323

    11.4.4  神经网络机器翻译(NMT)模型结构详解    323

    11.5  神经网络机器翻译(NMT)系统的前期准备工作    326

    11.5.1  训练阶段    326

    11.5.2  反转源语句    327

    11.5.3  测试阶段    328

    11.6  BLEU评分——评估机器翻译系统    329

    11.6.1  BLEU简述    329

    11.6.2  BLEU度量    330

    11.6.3  BLEU的调整和惩罚因子    332

    11.6.4  BLEU得分总结    333

    11.7  完整实现神经网络机器翻译——德语到英语翻译    333

    11.7.1  关于样本数据    334

    11.7.2  预处理数据    334

    11.7.3  学习词向量    335

    11.7.4  定义编码器和解码器    336

    11.7.5  定义端到端输出计算    338

    11.7.6  神经网络机器翻译系统运行结果(部分)的展示    339

    11.8  结合词向量训练神经网络机器翻译系统    342

    11.8.1  最大化数据集词汇和预训练词向量之间的匹配    342

    11.8.2  为词嵌入层定义TensorFlow变量    344

    11.9  优化神经网络机器翻译系统    346

    11.9.1  Teacher Forcing算法    346

    11.9.2  深度 LSTM    348

    11.9.3  注意力模型    349

    11.10  实现注意力机制    356

    11.10.1  定义权重值    356

    11.10.2  计算注意力    357

    11.10.3  含有注意力机制的神经网络机器翻译的部分翻译结果    358

    11.11  可视化源语句和目标语句的注意力    361

    11.12  历史性突破——BERT模型    362

    11.12.1  BERT模型简述    362

    11.12.2  BERT模型结构    363

    11.13  总结    364

    第12章  智能问答系统    366

    12.1  概要    366

    12.2  基于知识库的问答    367

    12.2.1  信息抽取    367

    12.2.2  语义分析模式    371

    12.2.3  信息抽取与语义分析小结    374

    12.2.4  挑战    374

    12.3  机器理解中的深度学习    375

    12.3.1  任务描述    375

    12.3.2  基于特征工程的机器理解方法    378

    12.3.3  机器理解中的深度学习方法    381

    12.4  利用TensorFlow实现问答任务    386

    12.4.1  bAbI数据集    386

    12.4.2  分析GloVe并处理未知令牌    387

    12.4.3  已知或未知的数据部分    388

    12.4.4  定义超参数    390

    12.4.5  神经网络结构部分    391

    12.4.6  输入部分    392

    12.4.7  问题部分    392

    12.4.8  情景记忆部分    392

    12.4.9  注意力部分    393

    12.4.10  答案模块    394

    12.4.11  模型优化    395

    12.4.12  训练模型并分析预测    395

    12.5  总结    397
查看详情
相关图书 / 更多
TensorFlow与自然语言处理应用
TensorFlow机器学习实用指南
Alexia;Audevart
TensorFlow与自然语言处理应用
TensorFlow 2.x高级计算机视觉
[美]克里斯南杜·卡尔 著;周玉兰 译
TensorFlow与自然语言处理应用
TensorFlow全栈开发工程实践——做一个全智全能算法工程师
王艳铭
TensorFlow与自然语言处理应用
TensorFlow+Android经典模型从理论到实战(微课视频版)
董相志;曲海平;董飞桐
TensorFlow与自然语言处理应用
TensorFlow 2机器学习实战:聚焦经济金融科研与产业的深度学习模型
[瑞典]以赛亚·赫尔(Isaiah Hull)著 朱文强 译
TensorFlow与自然语言处理应用
Technical and Vocational Education in China
Wu Xueping Ye Yiqun
TensorFlow与自然语言处理应用
TensorFlow工程化项目实战活页式教程
李占仓
TensorFlow与自然语言处理应用
TensorFlow.NET 实战
仇华
TensorFlow与自然语言处理应用
TensorFlow与神经网络——图解深度学习的框架搭建、算法机制和场景应用
李昂
TensorFlow与自然语言处理应用
Teichmüller 理论与 Grothendieck-Teichmüller 理论
Lizhen Ji;Athanase
TensorFlow与自然语言处理应用
TensorFlow AI移动项目开发实战
[美]杰夫·唐(Jeff Tang)
TensorFlow与自然语言处理应用
TensorFlow深度学习实例教程
平震宇 匡亮