主编推荐语
本书介绍TensorFlow构建知识图谱的核心技术,帮助读者掌握使用深度学习构建知识图谱的方法,以及使用神经网络的技术要点和基于深度学习的应用程序编写技巧。
内容简介
大数据时代的到来,为人工智能的飞速发展带来前所未有的数据红利。在大数据的“喂养”下,大量知识不断涌现,如何有效地发掘这些知识呢?知识图谱横空出世。
本书是一本讲解如何使用TensorFlow2构建知识图谱的入门教程,引导读者掌握基于深度学习的知识图谱构建概念、理论和方法。
本书分为13章:第1章从搭建环境开始,包含TensorFlowCPU版本和GPU版本的安装,并通过一个知识图谱的例子引导读者开始学习;第2-4章介绍TensorFlowAPI的使用;第5章是DatasetAPI,学习使用原生API处理数据的方法;第6-8章是实战准备部分,介绍ResNet模型、词嵌入(wordembedding)模型、情感分类;第9-10章在“注意力模型”基础上搭建了“编码器模型”;第11-13章搭建了知识图谱联合抽取模型,利用本书所学知识实战知识图谱的搭建过程和性能提升方案。
本书内容详尽、示例丰富,适合作为知识图谱和深度学习读者的参考书,同时也适合开设人工智能专业的大中专院校师生阅读,还可作为高等院校计算机及相关专业教材使用。
目录
- 版权信息
- 内容简介
- 前言
- 第1章 知识图谱的前世今生
- 1.1 何谓自然语言处理
- 1.1.1 自然语言处理是门技术
- 1.1.2 传统的自然语言处理
- 1.2 自然语言处理为什么难
- 1.2.1 自然语言处理的难点
- 1.2.2 自然语言处理小练习:酒店评论的情感分类
- 1.3 知识图谱到底是什么
- 1.3.1 知识图谱的应用
- 1.3.2 知识图谱中的三元组
- 1.4 搭建环境1:安装Python
- 1.4.1 Anaconda的下载与安装
- 1.4.2 PyCharm的下载与安装
- 1.4.3 Python代码小练习:计算softmax函数
- 1.5 搭建环境2:安装TensorFlow 2.X的GPU版本
- 1.5.1 10/20/30系列显卡选择的GPU版本
- 1.5.2 TensorFlow 2.4 GPU版本基础显卡推荐和前置软件安装
- 1.5.3 TensorFlow小练习:Hello TensorFlow
- 1.6 实战
- 1.6.1 第一步:数据的准备
- 1.6.2 第二步:数据的处理
- 1.6.3 第三步:知识图谱的展示
- 1.6.4 第四步:更多的连线
- 1.6.5 一个需要解决的小问题
- 1.7 本章小结
- 第2章 TensorFlow和Keras快速入门
- 2.1 Keras让一切变简单
- 2.1.1 深度学习,始于模型
- 2.1.2 使用Keras API实现鸢尾花分类的例子(顺序模型)
- 2.1.3 使用Keras函数式编程实现鸢尾花分类的例子(重点)
- 2.1.4 使用保存的Keras模式对模型进行复用
- 2.1.5 使用TensorFlow标准化编译对iris模型进行拟合
- 2.1.6 多输入单一输出TensorFlow编译方法(选学)
- 2.1.7 多输入多输出TensorFlow编译方法(选学)
- 2.2 全连接层详解
- 2.2.1 全连接层的定义与实现
- 2.2.2 使用TensorFlow自带的API实现全连接层
- 2.2.3 打印显示已设计的model结构和参数
- 2.3 懒人的福音
- 2.3.1 ResNet50模型和参数的载入
- 2.3.2 使用ResNet作为特征提取层建立模型
- 2.4 本章小结
- 第3章 深度学习的理论基础
- 3.1 BP神经网络简介
- 3.2 BP神经网络两个基础算法详解
- 3.2.1 最小二乘法(LS算法)详解
- 3.2.2 道士下山的故事——梯度下降算法
- 3.2.3 最小二乘法的梯度下降算法及其Python实现
- 3.3 反馈神经网络反向传播算法介绍
- 3.3.1 深度学习基础
- 3.3.2 链式求导法则
- 3.3.3 反馈神经网络原理与公式推导
- 3.3.4 反馈神经网络原理的激活函数
- 3.3.5 反馈神经网络原理的Python实现
- 3.4 本章小结
- 第4章 卷积神经网络实战
- 4.1 卷积运算基本概念
- 4.1.1 卷积运算
- 4.1.2 TensorFlow中卷积函数实现详解
- 4.1.3 池化运算
- 4.1.4 softmax激活函数
- 4.1.5 卷积神经网络原理
- 4.2 卷积实战:MNIST手写体识别
- 4.2.1 MNIST数据集
- 4.2.2 MNIST数据集特征和标签介绍
- 4.2.3 TensorFlow 2.X编程实战:MNIST数据集
- 4.2.4 使用自定义的卷积层实现MNIST识别
- 4.3 本章小结
- 第5章 Datasets数据集和TensorBoard可视化
- 5.1 TensorFlow Datasets简介
- 5.1.1 Datasets数据集的安装
- 5.1.2 Datasets数据集的使用
- 5.2 Datasets数据集的使用
- 5.2.1 FashionMNIST数据集下载与展示
- 5.2.2 模型的建立与训练
- 5.3 使用Keras对FashionMNIST数据集进行处理
- 5.3.1 获取数据集
- 5.3.2 数据集的调整
- 5.3.3 使用Python类函数建立模型
- 5.3.4 Model的查看和参数打印
- 5.3.5 模型的训练和评估
- 5.4 使用TensorBoard可视化训练过程
- 5.4.1 TensorBoard文件夹设置
- 5.4.2 TensorBoard的显式调用(推荐使用Chrome或Edge浏览器)
- 5.4.3 TensorBoard的使用
- 5.5 本章小结
- 第6章 ResNet实现神经网络的飞跃
- 6.1 ResNet基础原理与程序设计基础
- 6.1.1 ResNet诞生的背景
- 6.1.2 模块工具的TensorFlow实现——不要重复造轮子
- 6.1.3 TensorFlow高级模块layers用法简介
- 6.2 ResNet实战:CIFAR100数据集分类
- 6.2.1 CIFAR100数据集简介
- 6.2.2 ResNet残差模块的实现
- 6.2.3 ResNet网络的实现
- 6.2.4 使用ResNet对CIFAR100数据集进行分类
- 6.3 本章小结
- 第7章 有趣的词嵌入
- 7.1 文本数据处理
- 7.1.1 数据集介绍和数据清洗
- 7.1.2 停用词的使用
- 7.1.3 词向量训练模型word2vec使用介绍
- 7.1.4 文本主题的提取:基于TF-IDF(选学)
- 7.1.5 文本主题的提取:基于TextRank(选学)
- 7.2 更多的word embedding方法
- 7.2.1 fastText的原理与基础算法
- 7.2.2 fastText训练以及与TensorFlow 2.X的协同使用
- 7.2.3 使用其他预训练参数做TensorFlow词嵌入矩阵(中文)
- 7.3 针对文本的卷积神经网络模型简介
- 7.3.1 字符(非单词)文本的处理
- 7.3.2 卷积神经网络文本分类模型的实现——conv1d(一维卷积)
- 7.4 针对文本的卷积神经网络模型
- 7.4.1 单词的文本处理
- 7.4.2 卷积神经网络文本分类模型的实现——conv2d(二维卷积)
- 7.5 使用卷积对文本分类的补充内容
- 7.5.1 汉字的文本处理
- 7.5.2 其他的一些细节
- 7.6 本章小结
- 第8章 情感分类
- 8.1 GRU与情感分类
- 8.1.1 使用GRU的情感分类
- 8.1.2 什么是GRU
- 8.1.3 TensorFlow中的GRU层详解
- 8.1.4 单向不行就双向
- 8.2 实战:情感分类
- 8.2.1 使用TensorFlow自带的模型做文本分类
- 8.2.2 使用自定义的DPCNN做模型分类
- 8.3 本章小结
- 第9章 编码器
- 9.1 编码器的核心
- 9.1.1 输入层——初始词向量层和位置编码器层
- 9.1.2 自注意力层
- 9.1.3 ticks和LayerNormalization
- 9.1.4 多头自注意力
- 9.2 编码器的实现
- 9.2.1 前馈层的实现
- 9.2.2 编码器的实现
- 9.3 实战编码器:汉字拼音转化模型
- 9.3.1 汉字拼音数据集处理
- 9.3.2 汉字拼音转化模型的确定
- 9.3.3 模型训练部分的编写
- 9.3.4 推断函数的编写
- 9.4 本章小结
- 第10章 BERT
- 10.1 预训练模型BERT
- 10.1.1 BERT基本架构与应用
- 10.1.2 BERT预训练任务与Fine-Tuning
- 10.2 实战BERT:中文文本分类
- 10.2.1 使用Hugging face获取BERT预训练模型
- 10.2.2 BERT实战文本分类
- 10.3 更多的预训练模型
- 10.4 本章小结
- 第11章 知识图谱实战1:多标签文本分类
- 11.1 多标签文本基本内容
- 11.1.1 多标签分类不等于多分类
- 11.1.2 多标签分类的激活函数——sigmoid
- 11.2 多标签文本实战
- 11.2.1 第一步:数据的获取与处理
- 11.2.2 第二步:选择特征抽取模型
- 11.2.3 第三步:训练模型的建立
- 11.2.4 第四步:多标签文本分类的训练与预测
- 11.3 本章小结
- 第12章 知识图谱实战2:命名实体识别
- 12.1 命名实体识别的基本内容
- 12.1.1 什么是命名实体识别
- 12.1.2 深度学习在命名实体识别中的应用
- 12.1.3 命名实体识别CRF层简介
- 12.1.4 命名实体识别一般的模型架构详解
- 12.2 方法一:BERT命名实体识别实战
- 12.2.1 第一步:数据的获取与处理
- 12.2.2 第二步:BERT模型设计
- 12.2.3 第三步:完整的BERT模型训练
- 12.2.4 第四步:使用BERT命名实体识别模型进行预测
- 12.3 方法二:BiLSTM-CRF命名实体识别实战
- 12.3.1 第一步:数据的获取与处理
- 12.3.2 第二步:BiLSTM-CRF模型设计
- 12.3.3 第三步:BiLSTM-CRF模型的训练
- 12.3.4 第四步:使用BiLSTM的预测
- 12.4 本章小结
- 第13章 知识图谱实战3:基于联合抽取的知识图谱模型
- 13.1 基于联合抽取的知识图谱模型实战
- 13.1.1 什么是联合抽取
- 13.1.2 第一步:数据的处理
- 13.1.3 第二步:模型的设计
- 13.1.4 第三步:联合抽取模型的训练
- 13.2 知识图谱模型提升
- 13.2.1 更换预训练模型进行提升
- 13.2.2 更换损失函数进行提升
- 13.2.3 使用Mixture-of-Experts修正联合抽取模型
- 13.3 本章小结
出版方
清华大学出版社
清华大学出版社成立于1980年6月,是由教育部主管、清华大学主办的综合出版单位。植根于“清华”这座久负盛名的高等学府,秉承清华人“自强不息,厚德载物”的人文精神,清华大学出版社在短短二十多年的时间里,迅速成长起来。清华大学出版社始终坚持弘扬科技文化产业、服务科教兴国战略的出版方向,把出版高等学校教学用书和科技图书作为主要任务,并为促进学术交流、繁荣出版事业设立了多项出版基金,逐渐形成了以出版高水平的教材和学术专著为主的鲜明特色,在教育出版领域树立了强势品牌。