展开全部

主编推荐语

基于TensorFlow深度学习,掌握自然语言处理及其应用。

内容简介

自然语言处理(NLP)是计算机科学、人工智能、语言学关注计算机和人类(自然)语言之间的相互作用的领域。自然语言处理是机器学习的应用之一,用于分析、理解和生成自然语言,它与人机交互有关,最终实现人与计算机之间更好的交流。

本书分为12章,内容包括自然语言处理基础、深度学习基础、TensorFlow、词嵌入(Word Embedding)、卷积神经网络(CNN)与句子分类、循环神经网络(RNN)、长短期记忆(LSTM)、利用LSTM实现图像字幕自动生成、情感分析、机器翻译及智能问答系统。

本书适合TensorFlow自然语言处理技术的初学者、NLP应用开发人员、NLP研究人员,也适合高等院校和培训学校相关专业的师生教学参考。

目录

  • 版权信息
  • 内容简介
  • 前言
  • 本书主要内容
  • 代码下载与技术支持
  • 致谢
  • 第1章 自然语言处理基础
  • 1.1 认识自然语言处理
  • 1.2 自然语言处理方面的任务
  • 1.3 第一阶段:偏理论的理性主义
  • 1.4 第二阶段:偏实践应用的经验主义
  • 1.5 第三阶段:深度学习阶段
  • 1.6 NLP中深度学习的局限性
  • 1.7 NLP的应用场景
  • 1.8 NLP的发展前景
  • 1.9 总结
  • 第2章 深度学习基础
  • 2.1 深度学习介绍
  • 2.2 深度学习演变简述
  • 2.2.1 深度学习早期
  • 2.2.2 深度学习的发展
  • 2.2.3 深度学习的爆发
  • 2.3 神经网络介绍
  • 神经元
  • 2.4 神经网络的基本结构
  • 2.5 两层神经网络(多层感知器)
  • 2.5.1 简述
  • 2.5.2 两层神经网络结构
  • 2.6 多层神经网络(深度学习)
  • 2.6.1 简述
  • 2.6.2 多层神经网络结构
  • 2.7 编码器-解码器网络
  • 2.8 随机梯度下降
  • 2.9 反向传播
  • 2.10 总结
  • 第3章 TensorFlow
  • 3.1 TensorFlow概念解读
  • 3.2 TensorFlow主要特征
  • 3.2.1 自动求微分
  • 3.2.2 多语言支持
  • 3.2.3 高度的灵活性
  • 3.2.4 真正的可移植性
  • 3.2.5 将科研和产品联系在一起
  • 3.2.6 性能最优化
  • 3.3 TensorFlow安装
  • 在Linux上安装TensorFlow
  • 3.4 TensorFlow计算图
  • 3.5 TensorFlow张量和模型会话
  • 3.5.1 张量
  • 3.5.2 会话
  • 3.6 TensorFlow工作原理
  • 3.7 通过一个示例来认识TensorFlow
  • 3.8 TensorFlow客户端
  • 3.9 TensorFlow中常见元素解读
  • 3.9.1 在TensorFlow中定义输入
  • 3.9.2 在TensorFlow中定义变量
  • 3.9.3 定义TensorFlow输出
  • 3.9.4 定义TensorFlow运算或操作
  • 3.10 变量作用域机制
  • 3.10.1 基本原理
  • 3.10.2 通过示例解读
  • 3.11 实现一个神经网络
  • 3.11.1 数据准备
  • 3.11.2 定义TensorFlow计算图
  • 3.11.3 运行神经网络
  • 3.12 总结
  • 第4章 词嵌入
  • 4.1 分布式表示
  • 4.1.1 分布式表示的直观认识
  • 4.1.2 分布式表示解读
  • 4.2 Word2vec模型(以Skip-Gram为例)
  • 4.2.1 直观认识Word2vec
  • 4.2.2 定义任务
  • 4.2.3 从原始文本创建结构化数据
  • 4.2.4 定义词嵌入层和神经网络
  • 4.2.5 整合
  • 4.2.6 定义损失函数
  • 4.2.7 利用TensorFlow实现Skip-Gram模型
  • 4.3 原始Skip-Gram模型和改进Skip-Gram模型对比分析
  • 4.3.1 原始的Skip-Gram算法的实现
  • 4.3.2 将原始Skip-Gram与改进后的Skip-Gram进行比较
  • 4.4 CBOW模型
  • 4.4.1 CBOW模型简述
  • 4.4.2 利用TensorFlow实现CBOW 算法
  • 4.5 Skip-Gram和CBOW对比
  • 4.5.1 Skip-Gram和CBOW模型结构分析
  • 4.5.2 代码层面对比两模型性能
  • 4.5.3 Skip-Gram和CBOW模型孰优
  • 4.6 词嵌入算法的扩展
  • 4.6.1 使用Unigram分布进行负采样
  • 4.6.2 降采样
  • 4.6.3 CBOW 和其扩展类型比较
  • 4.7 结构化Skip-Gram和连续窗口模型
  • 4.7.1 结构化Skip-Gram算法
  • 4.7.2 连续窗口模型
  • 4.8 GloVe模型
  • 4.8.1 共现矩阵
  • 4.8.2 使用GloVe模型训练词向量
  • 4.8.3 GloVe模型实现
  • 4.9 使用Word2Vec进行文档分类
  • 4.9.1 数据集
  • 4.9.2 使用词向量对文档进行分类
  • 4.9.3 小结
  • 4.10 总结
  • 第5章 卷积神经网络与句子分类
  • 5.1 认识卷积神经网络
  • 5.1.1 卷积神经网络的历史演变
  • 5.1.2 卷积神经网络结构简述
  • 5.2 输入层
  • 5.3 卷积运算层
  • 5.3.1 标准卷积
  • 5.3.2 带步幅的卷积
  • 5.3.3 带填充的卷积
  • 5.3.4 转置卷积
  • 5.3.5 参数共享机制
  • 5.4 激活函数
  • 5.4.1 常见激活函数及选择
  • 5.4.2 各个非线性激活函数对比分析
  • 5.5 池化层
  • 5.5.1 理解池化
  • 5.5.2 池化作用
  • 5.5.3 最大池化
  • 5.5.4 平均池化
  • 5.6 全连接层
  • 5.7 整合各层并使用反向传播进行训练
  • 5.8 常见经典卷积神经网络
  • 5.8.1 AlexNet
  • 5.8.2 VGGNet
  • 5.8.3 Google Inception Net
  • 5.8.4 ResNet网络
  • 5.9 利用CNN对MNIST数据集进行图片分类
  • 5.9.1 数据样本
  • 5.9.2 实现CNN
  • 5.9.3 分析CNN产生的预测结果
  • 5.10 利用CNN进行句子分类
  • 5.10.1 CNN结构部分
  • 5.10.2 池化运算
  • 5.10.3 利用CNN实现句子分类
  • 5.11 总结
  • 第6章 循环神经网络
  • 6.1 计算图及其展开
  • 6.2 RNN解读
  • 6.2.1 序列数据模型
  • 6.2.2 数学层面简要解读RNN
  • 6.3 通过时间的反向传播算法
  • 6.3.1 反向传播工作原理
  • 6.3.2 直接使用反向传播的局限性
  • 6.3.3 通过反向传播训练RNN
  • 6.3.4 截断BPTT
  • 6.3.5 BPTT的局限性——梯度消失和梯度爆炸
  • 6.4 RNN的应用类型
  • 6.4.1 一对一的RNN
  • 6.4.2 一对多的RNN
  • 6.4.3 多对一的RNN
  • 6.4.4 多对多的RNN
  • 6.5 利用RNN生成文本
  • 6.5.1 定义超参数
  • 6.5.2 随着时间的推移展开截断BPTT的输入
  • 6.5.3 定义验证数据集
  • 6.5.4 定义权重值和偏差
  • 6.5.5 定义状态永久变量
  • 6.5.6 使用展开的输入计算隐藏状态和输出
  • 6.5.7 计算损失
  • 6.5.8 在新文本片段的开头重置状态
  • 6.5.9 计算验证输出
  • 6.5.10 计算梯度和优化
  • 6.6 输出新生成的文本片段
  • 6.7 评估RNN的文本结果输出
  • 6.8 困惑度——文本生成结果质量的度量
  • 6.9 具有上下文特征的循环神经网络——RNN-CF
  • 6.9.1 RNN-CF的技术说明
  • 6.9.2 RNN-CF的实现
  • 6.9.3 定义RNN-CF超参数
  • 6.9.4 定义输入和输出占位符
  • 6.9.5 定义RNN-CF的权重值
  • 6.9.6 用于维护隐藏层和上下文状态的变量和操作
  • 6.9.7 计算输出
  • 6.9.8 计算损失
  • 6.9.9 计算验证输出
  • 6.9.10 计算测试输出
  • 6.9.11 计算梯度和优化
  • 6.10 使用RNN-CF生成的文本
  • 6.11 总结
  • 第7章 长短期记忆
  • 7.1 LSTM简述
  • 7.2 LSTM工作原理详解
  • 7.2.1 梯度信息如何无损失传递
  • 7.2.2 将信息装载入长时记忆细胞
  • 7.2.3 更新细胞状态可能产生的问题及解决方案
  • 7.2.4 LSTM模型输出
  • 7.3 LSTM与标准RNN的区别
  • 7.4 LSTM如何避免梯度消失和梯度爆炸问题
  • 7.5 优化LSTM
  • 7.5.1 贪婪采样
  • 7.5.2 集束搜索
  • 7.5.3 使用词向量
  • 7.5.4 双向LSTM
  • 7.6 LSTM的其他变体
  • 7.6.1 窥视孔连接
  • 7.6.2 门控循环单元
  • 7.7 总结
  • 第8章 利用LSTM自动生成文本
  • 8.1 文本到文本的生成
  • 8.1.1 文本摘要
  • 8.1.2 句子压缩与融合
  • 8.1.3 文本复述生成
  • 8.2 意义到文本的生成
  • 8.2.1 基于深层语法的文本生成
  • 8.2.2 基于同步文法的文本生成
  • 8.3 数据到文本的生成
  • 8.4 文本自动生成前的数据准备
  • 8.4.1 数据集
  • 8.4.2 预处理数据
  • 8.5 实现LSTM
  • 8.5.1 定义超参数
  • 8.5.2 定义参数
  • 8.5.3 定义LSTM细胞及其操作
  • 8.5.4 定义输入和标签
  • 8.5.5 定义处理序列数据所需的序列计算
  • 8.5.6 定义优化器
  • 8.5.7 随着时间的推移衰减学习率
  • 8.5.8 进行预测
  • 8.5.9 计算困惑度(损失)
  • 8.5.10 重置状态
  • 8.5.11 贪婪采样打破重复性
  • 8.5.12 生成新文本
  • 8.5.13 示例生成的文本
  • 8.6 标准LSTM与带有窥视孔连接和GRU的LSTM的比较
  • 8.6.1 标准LSTM
  • 8.6.2 门控循环单元
  • 8.6.3 带窥视孔连接的LSTM
  • 8.6.4 随着时间的推移训练和验证困惑度
  • 8.7 优化LSTM——集束搜索
  • 8.7.1 实现集束搜索
  • 8.7.2 使用集束搜索生成文本的示例
  • 8.8 改进LSTM——使用词而不是n-gram生成文本
  • 8.8.1 维度问题
  • 8.8.2 完善Word2vec
  • 8.8.3 使用Word2vec生成文本
  • 8.8.4 使用LSTM-Word2vec和集束搜索生成文本的示例
  • 8.8.5 困惑度随着时间推移的变化情况
  • 8.9 使用TensorFlow RNN API
  • 8.10 总结
  • 第9章 利用LSTM实现图像字幕自动生成
  • 9.1 简要介绍
  • 9.2 发展背景
  • 9.3 利用深度学习框架从图像中生成字幕
  • 9.3.1 End-to-End 框架
  • 9.3.2 组合框架
  • 9.3.3 其他框架
  • 9.4 评估指标和基准
  • 9.5 近期研究
  • 9.6 图像字幕的产业布局
  • 9.7 详解图像字幕自动生成任务
  • 9.7.1 认识数据集
  • 9.7.2 用于图像字幕自动生成的深度学习管道
  • 9.7.3 使用CNN提取图像特征
  • 9.7.4 使用VGG-16加载权重值并进行推理
  • 9.7.5 学习词向量
  • 9.7.6 为LSTM模型准备字幕数据
  • 9.7.7 生成LSTM的数据
  • 9.7.8 定义LSTM
  • 9.7.9 定量评估结果
  • 9.7.10 为测试图像集生成字幕
  • 9.7.11 使用TensorFlow RNN API和预训练的GloVe词向量
  • 9.8 总结
  • 第10章 情感分析
  • 10.1 认识情感分析
  • 情感分析的应用
  • 10.2 情感分析的问题
  • 问题的定义
  • 10.3 情感文档分类
  • 10.4 句子主观性与情感分类
  • 10.5 基于方面(Aspect)的情感分析
  • 10.6 情感词典生成
  • 10.7 意见摘要
  • 10.8 比较观点分析
  • 10.9 意见搜索
  • 10.10 垃圾评论检测
  • 10.10.1 垃圾评论概述
  • 10.10.2 垃圾评论的类型
  • 10.10.3 可观察到的信息
  • 10.10.4 数据样本
  • 10.10.5 垃圾评论检测方法
  • 10.11 评论的质量
  • 10.12 利用TensorFlow进行中文情感分析实现
  • 10.12.1 训练语料
  • 10.12.2 分词和切分词
  • 10.12.3 索引长度标准化
  • 10.12.4 反向切分词
  • 10.12.5 准备词向量矩阵
  • 10.12.6 填充和截短
  • 10.12.7 构建模型
  • 10.12.8 结论
  • 10.13 总结
  • 第11章 机器翻译
  • 11.1 机器翻译简介
  • 11.2 基于规则的翻译
  • 11.2.1 基于转换的机器翻译
  • 11.2.2 语际机器翻译
  • 11.2.3 基于字典的机器翻译
  • 11.3 统计机器翻译
  • 11.3.1 统计机器翻译的基础
  • 11.3.2 基于词的翻译
  • 11.3.3 基于短语的翻译
  • 11.3.4 基于句法的翻译
  • 11.3.5 基于分层短语的翻译
  • 11.3.6 统计机器翻译的优势与不足
  • 11.4 神经网络机器翻译
  • 11.4.1 发展背景
  • 11.4.2 神经网络机器翻译的特性
  • 11.4.3 通过例子来认识神经网络机器翻译(NMT)模型的结构
  • 11.4.4 神经网络机器翻译(NMT)模型结构详解
  • 11.5 神经网络机器翻译(NMT)系统的前期准备工作
  • 11.5.1 训练阶段
  • 11.5.2 反转源语句
  • 11.5.3 测试阶段
  • 11.6 BLEU评分——评估机器翻译系统
  • 11.6.1 BLEU简述
  • 11.6.2 BLEU度量
  • 11.6.3 BLEU的调整和惩罚因子
  • 11.6.4 BLEU得分总结
  • 11.7 完整实现神经网络机器翻译——德语到英语翻译
  • 11.7.1 关于样本数据
  • 11.7.2 预处理数据
  • 11.7.3 学习词向量
  • 11.7.4 定义编码器和解码器
  • 11.7.5 定义端到端输出计算
  • 11.7.6 神经网络机器翻译系统运行结果(部分)的展示
  • 11.8 结合词向量训练神经网络机器翻译系统
  • 11.8.1 最大化数据集词汇和预训练词向量之间的匹配
  • 11.8.2 为词嵌入层定义TensorFlow变量
  • 11.9 优化神经网络机器翻译系统
  • 11.9.1 Teacher Forcing算法
  • 11.9.2 深度LSTM
  • 11.9.3 注意力模型
  • 11.10 实现注意力机制
  • 11.10.1 定义权重值
  • 11.10.2 计算注意力
  • 11.10.3 含有注意力机制的神经网络机器翻译的部分翻译结果
  • 11.11 可视化源语句和目标语句的注意力
  • 11.12 历史性突破——BERT模型
  • 11.12.1 BERT模型简述
  • 11.12.2 BERT模型结构
  • 11.13 总结
  • 第12章 智能问答系统
  • 12.1 概要
  • 12.2 基于知识库的问答
  • 12.2.1 信息抽取
  • 12.2.2 语义分析模式
  • 12.2.3 信息抽取与语义分析小结
  • 12.2.4 挑战
  • 12.3 机器理解中的深度学习
  • 12.3.1 任务描述
  • 12.3.2 基于特征工程的机器理解方法
  • 12.3.3 机器理解中的深度学习方法
  • 12.4 利用TensorFlow实现问答任务
  • 12.4.1 bAbI数据集
  • 12.4.2 分析GloVe并处理未知令牌
  • 12.4.3 已知或未知的数据部分
  • 12.4.4 定义超参数
  • 12.4.5 神经网络结构部分
  • 12.4.6 输入部分
  • 12.4.7 问题部分
  • 12.4.8 情景记忆部分
  • 12.4.9 注意力部分
  • 12.4.10 答案模块
  • 12.4.11 模型优化
  • 12.4.12 训练模型并分析预测
  • 12.5 总结
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

清华大学出版社

清华大学出版社成立于1980年6月,是由教育部主管、清华大学主办的综合出版单位。植根于“清华”这座久负盛名的高等学府,秉承清华人“自强不息,厚德载物”的人文精神,清华大学出版社在短短二十多年的时间里,迅速成长起来。清华大学出版社始终坚持弘扬科技文化产业、服务科教兴国战略的出版方向,把出版高等学校教学用书和科技图书作为主要任务,并为促进学术交流、繁荣出版事业设立了多项出版基金,逐渐形成了以出版高水平的教材和学术专著为主的鲜明特色,在教育出版领域树立了强势品牌。