
作者:方林 陈海波
页数:267
出版社:机械工业出版社
出版日期:2021
ISBN:9787111673590
电子书格式:pdf/epub/txt
内容简介
本书以Python语言和Tensorflow为工具,由浅入深地讲述了深度学习程序设计的基本原理、算法和思考问题的方法,内容包括自顶向下的程序设计、递归程序设计、面向对象的程序设计、反向传播算法、三层神经网络、卷积神经网络、循环神经网络、生成式对抗网络和目标检测等。本书重在研究代码背后深刻的计算机理论和数学原理,试图说明代码是对理论和思想的实现手段,而不是目的。学以致用是本书的宗旨,提高读者编程水平和动手能力是本书的目的。本书通过大量有趣的实例,说明了理论对深度学习程序设计实践的指导意义。
目录
前言
第1 章 程序设计方法…00
1.1 自顶向下的程序设计…00
1.1.1 问题分解和自顶向下的程序设计方法…00
1.1.2 五猴分桃问题…00
1.1.3 猜姓氏问题…00
1.1.4 囚犯问题…00
1.1.5 扑克牌问题…0
1.2 递归程序设计…0
1.2.1 河内塔问题…0
1.2.2 兔子问题…0
1.2.3 字符串匹配问题…0
1.2.4 组合问题…0
1.2.5 人字形铁路问题…0
1.3 面向对象的程序设计…0
1.3.1 方法重定义和分数…0
1.3.2 二十四点问题…0
1.4 结束语…0
第2 章 反向传播算法…0
2.1 导数和导数的应用…0
2.1.1 导数…0
2.1.2 梯度下降法求函数的最小值…0
2.1.3 牛顿法求平方根…0
2.1.4 复合函数和链式法则…0
2.1.5 多元函数和全微分方程…0
2.1.6 反向传播算法…0
2.1.7 梯度…0
2.1.8 分段求导…0
2.2 自动求导和人工智能框架…0
2.2.1 表达式和自动求偏导…0
2.2.2 表达式求值…0
2.2.3 求解任意方程…0
2.2.4 求解任意方程组…0
2.2.5 求解任意函数的极小值…0
2.2.6 张量、计算图和人工智能框架…0
2.3 结束语…0
第3 章 神经元网络初步…0
3.1 Tensorflow基本概念…0
3.1.1 计算图、张量、常数和变量…0
3.1.2 会话、运行…0
3.1.3 占位符…0
3.1.4 矩阵算术运算…0
3.1.5 矩阵运算的广播…0
3.1.6 TF矩阵运算…0
3.1.7 形状和操作…0
3.1.8 关系运算和逻辑运算…0
3.2 优化器和计算图…0
3.2.1 梯度和优化器…0
3.2.2 求解平方根…0
3.2.3 计算图…0
3.3 三层神经网络…0
3.3.1 神经元网络训练算法…0
3.3.2 线性变换和激活函数…0
3.3.3 矩阵乘法和全连接…0
3.3.4 激活函数…0
3.3.5 全连接和Relu的梯度…0
3.3.6 求正弦…0
3.3.7 BGD、SGD和MBGD…0
3.3.8 三层神经网络模型…0
3.4 用三层神经网络拟合任意一个函数…0
3.4.1 三层神经网络拟合一元函数…0
3.4.2 样本、训练和预测…0
3.4.3 中间层神经元个数和样本数量之间
的关系…0
3.4.4 自变量越界会发生什么…0
3.4.5 同时拟合cos(x)、sin(x)…0
3.4.6 拟合多元函数…0
3.4.7 过拟合…0
3.5 手写数字识别…0
3.5.1 手写数字样本集合MNIST…0
3.5.2 独热向量…0
3.5.3 3种损失函数…0
3.5.4 softmax函数…0
3.5.5 保存和恢复模型…0
3.5.6 验证模型…0
3.5.7 测试和使用模型…0
3.6 结束语…0
第4 章 卷积神经网络…0
4.1 卷积…0
4.1.1 一维卷积…0
4.1.2 二维卷积…
4.1.3 通道…
4.1.4 TF对卷积的第一种实现…
4.1.5 TF对卷积的第二种实现…
4.1.6 卷积的实质…
4.2 池化操作…
4.2.1 最大值池化和平均值池化…
4.2.2 池化操作的梯度…
4.3 用CNN实现手写数字识别…
4.3.1 模型的结构…
4.3.2 模型参数数量和计算量…
4.3.3 关于全连接和Dropout…
4.3.4 用Tensorboard监视训练…
4.4 手写数字生成…
4.4.1 生成问题…
4.4.2 VAE模型和语义…
4.4.3 反卷积操作…
4.4.4 网络的结构…
4.4.5 动量…
4.4.6 控制依赖…
4.4.7 预测…
4.5 条件VAE模型…
4.5.1 CVAE模型…
4.5.2 条件式手写数字生成模型…
4.6 使用GPU…
4.6.1 单GPU和nvidia-smi命令…
4.6.2 多GPU和重名问题…
4.6.3 多GPU的梯度…
4.6.4 多GPU训练…
4.6.5 多GPU预测…
4.7 残差神经网络…
4.7.1 残差神经网络的实现…
4.7.2 BN操作…
4.8 表情识别…
4.8.1 样本…
4.8.2 通用超级框架…
4.8.3 模型…
4.9 人脸识别和人脸对比…
4.9.1 人脸识别…
4.9.2 简单人脸对比…
4.9.3 简单人脸对比的实现…
4.9.4 法向量和夹角余弦…
4.9.5 基于夹角余弦的人脸对比…
4.10 语义分割和实例分割…
4.10.1 什么是语义分割和实例分割…
4.10.2 多分类问题…
4.10.3 U型网络…
4.10.4 语义分割和实例分割的实现…
4.10.5 点到点的语义分割和实例分割…
4.11 其他CNN模型…
4.12 优化器…
4.12.1 GradientDescentOptimizer…
4.12.2 MomentumOptimizer…
4.12.3 RMSPropOptimizer…
4.12.4 AdamOptimizer…
4.12.5 AdagradOptimizer…
4.12.6 AdadeltaOptimizer…
4.13 结束语…
第5 章 循环神经网络…
5.1 什么是循环神经网络…
5.2 RNN的结构…
5.2.1 简单RNN模型…
5.2.2 多层RNN…
5.3 诗歌生成器…
5.3.1 样本预处理…
5.3.2 字向量…
5.3.3 可洗牌的DataSet…
5.3.4 生成诗歌…
5.4 LSTM模型…
5.4.1 基本LSTM模型…
5.4.2 LSTM变体之一——Peephole…
5.4.3 LSTM变体之二——GRU…













