TensorFlow深度学习 数学原理与Python实战进阶
作者:(印)桑塔努 帕塔纳雅克著
出版时间: 2020年版
内容简介
本书重点在帮你掌握深度学习所要求的数学原理和编程实战经验,使你能快速使用TensorFlow轻松部署产品中的深度学习解决方案,并形成开发深度学习架构和解决方案时所需的数学理解和直觉。 本书提供了丰富的理论和实战动手经验,使你可以从零开始掌握深度学习,并能快速部署有价值的深度学习解决方案。本书重点讲解了与多个行业相关的深度学习实践方面的专业知识。通过这些实战经验,你将能够使用原型来构建新的深度学习应用程序。本书适合谁 正在研究深度学习解决方案以解决复杂业务问题的数据科学家和机器学习专业人员。 通过TensorFlow开发深度学习解决方案的软件开发人员。 渴望不断学习的师生和人工智能爱好者。
目录
原书前言
第1章 数学基础//1
1.1 线性代数//2
1.1.1 向量//2
1.1.2 标量//2
1.1.3 矩阵//3
1.1.4 张量//3
1.1.5 矩阵的运算和操作//4
1.1.6 向量的线性独立//6
1.1.7 矩阵的秩//8
1.1.8 单位矩阵或恒等运算符//8
1.1.9 矩阵的行列式//9
1.1.10 逆矩阵//10
1.1.11 向量的范数(模)//11
1.1.12 伪逆矩阵//12
1.1.13 以特定向量为方向的单位向量//12
1.1.14 一个向量在另一个向量方向上的投影(或射影)//12
1.1.15 特征向量//12
1.2 微积分//17
1.2.1 微分//17
1.2.2 函数的梯度//17
1.2.3 连续偏导数//18
1.2.4 海森矩阵//18
1.2.5 函数的极大值和极小值//18
1.2.6 局部极小值和全局最小值//20
1.2.7 半正定以及正定矩阵//21
1.2.8 凸集//21
1.2.9 凸函数//22
1.2.10 非凸函数//22
1.2.11 多变量凸函数以及非凸函数范例//23
1.2.12 泰勒级数//24
1.3 概率//24
1.3.1 并集、交集和条件概率//25
1.3.2 事件交集概率的链式法则//26
1.3.3 互斥事件//26
1.3.4 事件独立性//27
1.3.5 事件条件独立性//27
1.3.6 贝叶斯定理(公式)//27
1.3.7 概率质量函数//28
1.3.8 概率密度函数//28
1.3.9 随机变量的数学期望//28
1.3.10 随机变量的方差//28
1.3.11 偏度和峰度//29
1.3.12 协方差//30
1.3.13 相关性系数//31
1.3.14 一些常见的概率分布//31
1.3.15 似然函数//34
1.3.16 最大似然估计//35
1.3.17 假设检验和p值//36
1.4 机器学习算法的制定与优化算法//38
1.4.1 监督学习//38
1.4.2 无监督学习//45
1.4.3 机器学习的优化算法//45
1.4.4 约束优化问题//53
1.5 机器学习中的几个重要主题//54
1.5.1 降维方法//54
1.5.2 正则化//5
1.5.3 约束优化问题中的正则化//59
1.6 总结//60
第2章 深度学习概念和TensorFlow介绍//61
2.1 深度学习及其发展//61
2.2 感知机和感知机学习算法//63
2.2.1 感知机学习的几何解释//65
2.2.2 感知机学习的局限性//66
2.2.3 非线性需求//68
2.2.4 隐藏层感知机的非线性激活函数//69
2.2.5 神经元或感知机的不同激活函数//70
2.2.6 多层感知机网络的学习规则//74
2.2.7 梯度计算的反向传播//75
2.2.8 反向传播方法推广到梯度计算//76
2.3 TensorFlow //82
2.3.1 常见的深度学习包//82
2.3.2 TensorFlow的安装//83
2.3.3 TensorFlow的开发基础//83
2.3.4 深度学习视角下的梯度下降优化方法//86
2.3.5 随机梯度下降的小批量方法中的学习率//90
2.3.6 TensorFlow中的优化器//90
2.3.7 TensorFlow实现XOR//96
2.3.8 TensorFlow中的线性回归//100
2.3.9 使用全批量梯度下降的SoftMax函数多分类//103
2.3.10 使用随机梯度下降的SoftMax函数多分类//105
2.4 GPU //107
2.5 总结//108
第3章 卷积神经网络//109
3.1 卷积操作//109
3.1.1 线性时不变和线性移不变系统//109
3.1.2 一维信号的卷积//111
3.2 模拟信号和数字信号//112
3.2.1 二维和三维信号//113
3.3 二维卷积//114
3.3.1 二维单位阶跃函数//114
3.3.2 LSI系统中单位阶跃响应信号的二维卷积//115
3.3.3 不同的LSI系统中图像的二维卷积//117
3.4 常见的图像处理滤波器//120
3.4.1 均值滤波器//120
3.4.2 中值滤波器//122
3.4.3 高斯滤波器//122
3.4.4 梯度滤波器//123
3.4.5 Sobel边缘检测滤波器//125
3.4.6 恒等变换//127
3.5 卷积神经网络//128
3.6 卷积神经网络的组成部分//128
3.6.1 输入层//129
3.6.2 卷积层//129
3.6.3 池化层//131
3.7 卷积层中的反向传播//131
3.8 池化层中的反向传播//134
3.9 卷积中的权值共享及其优点//136
3.10 平移同变性//136
3.11 池化的平移不变性//137
3.12 舍弃层和正则化//138
3.13 MNIST数据集上进行手写数字识别的卷积神经网络//140
3.14 用来解决现实问题的卷积神经网络//144
3.15 批规范化//151
3.16 卷积神经网络中的几种不同的网络架构//153
3.16.1 LeNet//153
3.16.2 AlexNet//154
3.16.3 VGG16//155
3.16.4 ResNet//156
3.17 迁移学习//157
3.17.1 迁移学习的使用指导//158
3.17.2 使用谷歌InceptionV3网络进行迁移学习//159
3.17.3 使用预训练的VGG16网络迁移学习//162
3.18 总结//166
第4章 基于循环神经网络的自然语言处理//167
4.1 向量空间模型//167
4.2 单词的向量表示//170
4.3 Word2Vec//170
4.3.1 CBOW //171
4.3.2 CBOW 在TensorFlow中的实现//173
4.3.3 词向量嵌入的Skip-gram模型//176
4.3.4 Skip-gram在TensorFlow中的实现//178
4.3.5 基于全局共现方法的词向量//181
4.3.6 GloVe//186
4.3.7 词向量类比法//188
4.4 循环神经网络的介绍//191
4.4.1 语言建模//193
4.4.2 用循环神经网络与传统方法预测句子中的下一个词的对比//193
4.4.3 基于时间的反向传播//194
4.4.4 循环神经网络中的梯度消失与爆炸问题//196
4.4.5 循环神经网络中的梯度消失与爆炸问题的解决方法//198
4.4.6 LSTM//199
4.4.7 LSTM在减少梯度爆炸和梯度消失问题中的应用//200
4.4.8 在TensorFlow中使用循环神经网络进行MNIST数字识别//201
4.4.9 门控循环单元//210
4.4.10 双向循环神经网络//211
4.5 总结//212
第5章 用受限玻尔兹曼机和自编码器进行无监督学习//214
5.1 玻尔兹曼分布//214
5.2 贝叶斯推断:似然、先验和后验概率分布//215
5.3 MCMC采样方法//219
5.3.11 Metropolis算法//222
5.4 受限玻尔兹曼机//226
5.4.1 训练受限玻尔兹曼机//229
5.4.2 吉布斯采样//233
5.4.3 块吉布斯采样//234
5.4.4 Burn-in阶段和吉布斯采样中的样本生成//235
5.4.5 基于吉布斯采样的受限玻尔兹曼机//235
5.4.6 对比散度//236
5.4.7 受限玻尔兹曼机的TensorFlow实现//237
5.4.8 基于受限玻尔兹曼机的协同过滤//239
5.4.9 深度置信网络//244
5.5 自编码器//248
5.5.1 基于自编码器的监督式特征学习//250
5.5.2 KL散度//251
5.5.3 稀疏自编码器//251
5.5.4 稀疏自编码器的TensorFlow实现//253
5.5.5 去噪自编码器//255
5.5.6 去噪自编码器的TensorFlow实现//256
5.6 PCA和ZCA白化//262
5.7 总结//264
第6章 高级神经网络//265
6.1 图像分割//265
6.1.1 基于像素强度直方图的二元阈值分割方法//265
6.1.2 大津法//266
6.1.3 用于图像分割的分水岭算法//268
6.1.4 使用K-means聚类进行图像分割//272
6.1.5 语义分割//274
6.1.6 滑动窗口方法//274
6.1.7 全卷积网络//275
6.1.8 全卷积网络的下采样和上采样//277
6.1.9 U-Net//281
6.1.10 在TensorFlow中使用全卷积神经网络进行语义分割//283
6.2 图像分类和定位网络//290
6.3 物体检测//292
6.3.1 R-CNN//293
6.3.2 Fast和Faster-CNN//294
6.4 生成式对抗网络//295
6.4.1 极大极小和极小极大问题//295
6.4.2 零和博弈//297
6.4.3 极小极大和鞍点//298
6.4.4 生成式对抗网络的损失函数和训练//300
6.4.5 生成器的梯度消弭//302
6.4.6 生成式对抗网络的TensorFlow实现//302
6.5 生成环境下的TensorFlow模型应用//305
6.6 总结//308