![]() ![]() |
深度学习原理与TensorFlow实践 读者对象:适合人工智能相关专业的学生和技术人员,以及人工智能领域兴趣爱好者。
本书采用“理论 +实践”的方式,全面系统地讲授了深度学习的基本原理以及使用 TensorFlow实现各类深度学习网络的方法。全书共 10章,第 1~3章主要介绍深度学习的基础知识,包括深度学习的概念和应用、深层神经网络的训练和优化、 TensorFlow的内涵和特点等内容;第 4~5章主要介绍 TensorFlow的安装,以及计算模型、数据模型、运行模型等 TensorFlow编程的基础知识;第 6~10章主要围绕 TensorFlow介绍各类深度学习网络,包括单个神经元、多层神经网络、卷积神经网络、循环神经网络、深度学习网络进阶等。全书在各个章节设置有大量的实验和实操案例,兼具知识性和实用性。
闭应洲,南宁师范大学教授,主要研究方向为智能计算、智能医学图像处理及社会计算。主持和参与了10多项科研项目的研究工作,发布论文50多篇。2012年2月至2013年2月在美国亚利桑那州立大学访学,重点研究从海量数据中获取知识所必需的理论和技术。
目 录
第 1章引言····················································································································1 1.1 人工智能简介······································································································1 1.2 机器学习简介······································································································2 1.2.1 机器学习的概念·····························································································2 1.2.2 机器学习的本质·····························································································2 1.2.3 机器学习的步骤·····························································································3 1.2.4 机器学习的关键点··························································································5 1.2.5 机器学习的实战·····························································································6 1.2.6 机器学习的教材·····························································································7 1.3 机器学习的分类 ··································································································8 1.3.1 有监督学习···································································································8 1.3.2 无监督学习···································································································9 1.3.3 半监督学习································································································.10 1.3.4 强化学习···································································································.11 1.4 本章小结··········································································································.12 第 2章深度学习的原理 ·······························································································.13 2.1 深度学习简介···································································································.13 2.1.1 深度学习的概念··························································································.13 2.1.2 深度学习的特点··························································································.13 2.2 深度学习的现实意义 ························································································.14 2.2.1 多层神经网络的模型结构 ··············································································.14 2.2.2 非线性处理能力··························································································.14 2.2.3 特征自动提取和转换····················································································.16 2.3 深度学习的应用领域 ························································································.16 2.3.1 计算机视觉································································································.17 2.3.2 自然语言处理·····························································································.20 2.3.3 语音识别···································································································.21 2.4 深层神经网络简介····························································································.22 2.4.1 神经元模型································································································.22 2.4.2 单层神经网络·····························································································.23 2.4.3 深层神经网络·····························································································.24 2.4.4 深层神经网络节点·······················································································.24 2.4.5 深层神经网络参数·······················································································.25 2.4.6 节点输出值计算··························································································.25 2.5 深层神经网络的训练与优化 ··············································································.26 2.5.1 深层神经网络的训练····················································································.26 2.5.2 深层神经网络的优化····················································································.32 2.6 本章小结··········································································································.35 第 3章深度学习框架简介 ····························································································.37 3.1 TensorFlow简介 ·······························································································.37 3.2 TensorFlow的特点····························································································.38 3.3 其他深度学习框架····························································································.38 3.4 本章小结··········································································································.41 第 4章 TensorFlow的安装···························································································.42 4.1 安装准备··········································································································.42 4.1.1 硬件检查···································································································.42 4.1.2 处理器推荐—GPU····················································································.44 4.1.3 系统选择—Linux ·····················································································.53 4.1.4 配合 Python语言使用···················································································.53 4.1.5 Anaconda的安装·························································································.54 4.2 TensorFlow的主要依赖包 ·················································································.55 4.2.1 Protocol Buffer····························································································.56 4.2.2 Bazel········································································································.57 4.3 Python安装 TensorFlow·····················································································.59 4.3.1 使用 pip安装 ·····························································································.59 4.3.2 从源代码编译并安装····················································································.59 4.4 TensorFlow的使用····························································································.60 4.4.1 向量求和···································································································.60 4.4.2 加载过程的问题··························································································.61 4.5 推荐使用 IDE ···································································································.61 4.6 本章小结··········································································································.62 第 5章 TensorFlow编程基础 ·······················································································.63 5.1 计算图与张量···································································································.63 5.1.1 初识计算图与张量·······················································································.63 5.1.2 TensorFlow的计算模型—计算图··································································.63 5.1.3 TensorFlow的数据模型—张量·····································································.66 5.2 TensorFlow的运行模型 —会话 ·······································································.68 5.2.1 TensorFlow的系统结构 ················································································.68 5.2.2 会话的使用································································································.69 5.2.3 使用 with/as进行上下文管理 ·········································································.70 5.2.4 会话的配置································································································.71 5.2.5 占位符······································································································.72 5.3 TensorFlow变量 ·······························································································.73 5.3.1 变量的创建································································································.73 5.3.2 变量与张量································································································.76 ·VI. 5.3.3 管理变量空间·····························································································.77 5.4 实验:识别图中模糊的手写数字 ·······································································.82 5.5 本章小结··········································································································.88 第 6章单个神经元 ······································································································.89 6.1 神经元拟合原理 ·······························································································.89 6.1.1 正向传播···································································································.90 6.1.2 反向传播···································································································.90 6.2 激活函数··········································································································.91 6.2.1 Sigmoid函数······························································································.91 6.2.2 Tanh函数··································································································.92 6.2.3 ReLU函数 ································································································.93 6.2.4 Swish函数 ································································································.96 6.3 Softmax算法与损失函数 ···················································································.96 6.3.1 Softmax算法······························································································.97 6.3.2 损失函数···································································································.98 6.3.3 综合应用实验·····························································································101 6.4 梯度下降··········································································································104 6.4.1 梯度下降方法·····························································································105 6.4.2 梯度下降函数·····························································································105 6.4.3 退化学习率································································································106 6.5 学习参数初始化 ·······························································································108 6.6 使用 Maxout网络扩展单个神经元 ·····································································109 6.6.1 Maxout简介 ······························································································109 6.6.2 使用 Maxout网络实现 MNIST分类 ·································································110 6.7 本章小结··········································································································111 第 7章多层神经网络 ···································································································112 7.1 线性问题与非线性问题 ·····················································································112 7.1.1 用线性逻辑回归处理二分类问题 ·····································································112 7.1.2 用线性逻辑回归处理多分类问题 ·····································································116 7.1.3 非线性问题浅析··························································································121 7.2 解决非线性问题 ·······························································································121 7.2.1 使用带隐藏层的神经网络拟合异或操作 ····························································121 7.2.2 非线性网络的可视化····················································································123 7.3 利用全连接神经网络将图片进行分类 ································································125 7.4 全连接神经网络模型的优化方法 ·······································································127 7.4.1 利用异或数据集演示过拟合问题 ·····································································127 7.4.2 通过正则化改善过拟合情况 ···········································································132 7.4.3 通过增大数据集改善过拟合 ···········································································134 7.4.4 基于 Dropout技术来拟合异或数据集 ·······························································135 7.4.5 全连接神经网络的深浅关系 ···········································································138 7.5 本章小结··········································································································139 第 8章卷积神经网络 ···································································································140 8.1 认识卷积神经网络····························································································140 8.1.1 全连接神经网络的局限性 ··············································································140 8.1.2 卷积神经网络简介·······················································································140 8.2 卷积神经网络的结构 ························································································141 8.2.1 网络结构简介·····························································································141 8.2.2 卷积层······································································································144 8.2.3 池化层······································································································147 8.3 卷积神经网络的相关函数 ·················································································147 8.3.1 卷积函数 tf.nn.conv2d···················································································147 8.3.2 池化函数 tf.nn.max_pool和 tf.nn.avg_pool··························································154 8.4 使用卷积神经网络对图片分类 ··········································································157 8.4.1 CIFAR数据集介绍及使用 ·············································································157 8.4.2 CIFAR数据集的处理 ···················································································160 8.4.3 建立一个卷积神经网络 ·················································································166 8.5 反卷积神经网络 ·······························································································168 8.5.1 反卷积计算································································································169 8.5.2 反池化计算································································································171 8.5.3 反卷积神经网络的应用 ·················································································171 8.6 卷积神经网络进阶····························································································171 8.6.1 函数封装库的使用·······················································································172 8.6.2 深度学习的模型训练技巧 ··············································································174 8.7 本章小结··········································································································182 第 9章循环神经网络 ···································································································183 9.1 循环神经网络的原理 ························································································183 9.1.1 循环神经网络的基本结构 ··············································································183 9.1.2 RNN的反向传播过程 ···················································································184 9.1.3 搭建简单 RNN····························································································186 9.2 改进的 RNN ·····································································································192 9.2.1 LSTM·······································································································193 9.2.2 改进的 LSTM ·····························································································196 9.2.3 Bi-RNN ····································································································198 9.2.4 CTC·········································································································200 9.3 RNN实战·········································································································200 9.3.1 cell类 ······································································································200 9.3.2 构建 RNN··································································································201 9.3.3 使用 RNN对 MNIST数据集分类 ····································································207 9.3.4 RNN的初始化 ····························································································213 9.3.5 RNN的优化 ·······························································································213 ·VIII. 9.3.6 利用 BiRNN实现语音识别 ············································································214 9.4 本章小结··········································································································228 第 10章深度学习网络进阶 ··························································································229 10.1深层神经网络 ·································································································229 10.1.1 深层神经网络介绍 ·····················································································229 10.1.2 GoogLeNet模型 ························································································230 10.1.3 ResNet模型 ·····························································································234 10.1.4 Inception-ResNet-v2模型 ·············································································235 10.1.5 TensorFlow中图片分类模型库 —slim ···························································235 10.1.6 slim深度网络模型实战图像识别 ···································································241 10.1.7 实物检测模型库 ························································································244 10.1.8 实物检测领域的相关模型 ············································································245 10.1.9 NASNet控制器 ·························································································246 10.2生成对抗神经网络 ··························································································247 10.2.1 什么是 GAN ·····························································································247 10.2.2 各种不同的 GAN ·······················································································248 10.2.3 GAN实践································································································253 10.2.4 GAN网络的高级接口 TFGAN ······································································263 10.3本章小结 ········································································································264
你还可能感兴趣
我要评论
|