译者序
前言
审校者简介
致谢
第1章 计算图和TensorFlow
1.1 如何构建Python环境
1.1.1 创建环境
1.1.2 安装TensorFlow
1.1.3 Jupyter记事本
1.2 TensorFlow基本介绍
1.2.1 计算图
1.2.2 张量
1.2.3 创建和运行计算图
1.2.4 包含tf.constant的计算图
1.2.5 包含tf.Variable的计算图
1.2.6 包含tf.placeholder的计算图
1.2.7 运行和计算的区别
1.2.8 节点之间的依赖关系
1.2.9 创建和关闭会话的技巧
第2章 单一神经元
2.1 神经元结构
2.1.1 矩阵表示法
2.1.2 Python实现技巧:循环和NumPy
2.1.3 激活函数
2.1.4 代价函数和梯度下降:学习率的特点
2.1.5 学习率的应用示例
2.1.6 TensorFlow中的线性回归示例
2.2 逻辑回归示例
2.2.1 代价函数
2.2.2 激活函数
2.2.3 数据集
2.2.4 TensorFlow实现
2.3 参考文献
第3章 前馈神经网络
3.1 网络架构
3.1.1 神经元的输出
3.1.2 矩阵维度小结
3.1.3 示例:三层网络的方程
3.1.4 全连接网络中的超参数
3.2 用于多元分类的softmax函数
3.3 过拟合简要介绍
3.3.1 过拟合示例
3.3.2 基本误差分析
3.4 Zalando数据集
3.5 使用TensorFlow构建模型
3.5.1 网络架构
3.5.2 softmax函数的标签转换:独热编码
3.5.3 TensorFlow模型
3.6 梯度下降变体
3.6.1 批量梯度下降
3.6.2 随机梯度下降
3.6.3 小批量梯度下降
3.6.4 各种变体比较
3.7 预测示例
3.8 权重初始化
3.9 有效添加多个层
3.10 增加隐藏层的优点
3.11 比较不同网络
3.12 选择正确网络的技巧
第4章 训练神经网络
4.1 动态学习率衰减
4.1.1 迭代还是周期
4.1.2 阶梯式衰减
4.1.3 步长衰减
4.1.4 逆时衰减
4.1.5 指数衰减
4.1.6 自然指数衰减
4.1.7 TensorFlow实现
4.1.8 将方法应用于Zalando数据集
4.2 常用优化器
4.2.1 指数加权平均
4.2.2 Momentum
4.2.3 RMSProp
4.2.4 Adam
4.2.5 应该使用哪种优化器
4.3 自己开发的优化器示例
第5章 正则化
5.1 复杂网络和过拟合
5.2 什么是正则化
5.3 tp范数
5.4 t2正则化
5.4.1 t2正则化原理
5.4.2 TensorFlow实现
5.5 t1正则化
5.5.1 t1正则化原理与TensorFlow实现
5.5.2 权重真的趋于零吗
5.6 Dropout
5.7 Early Stopping
5.8 其他方法
第6章 指标分析
6.1 人工水平表现和贝叶斯误差
6.2 关于人工水平表现的故事
6.3 MNIST中的人工水平表现
6.4 偏差
6.5 指标分析图
6.6 训练集过拟合
6.7 测试集
6.8 如何拆分数据集
6.9 不平衡类分布:会发生什么
6.10 率、召回率和F1指标
6.11 不同分布的数据集
6.12 k折交叉验证
6.13 手动指标分析示例
第7章 超参数调优
7.1 黑盒优化
7.2 黑盒函数注意事项
7.3 超参数调优问题
7.4 黑盒问题示例
7.5 网格搜索
7.6 随机搜索
7.7 粗到细优化
7.8 贝叶斯优化
7.8.1 Nadaraya-Watson回归
7.8.2 高斯过程
7.8.3 平稳过程
7.8.4 用高斯过程预测
7.8.5 采集函数
7.8.6 上置信界(UCB)
7.8.7 示例
7.9 对数尺度采样
7.10 使用Zalando数据集的超参数调优
7.11 径向基函数注意事项
第8章 卷积神经网络和循环神经网络
8.1 卷积核和过滤器
8.2 卷积
8.3 卷积运算示例
8.4 池化
8.5 构建CNN块
8.5.1 卷积层
8.5.2 池化层
8.5.3 各层的叠加
8.5.4 CNN示例
8.6 RNN介绍
8.6.1 符号
8.6.2 RNN的基本原理
8.6.3 循环神经网络名称的由来
8.6.4 学会统计
第9章 研究项目
9.1 问题描述
9.2 数学模型
9.3 回归问题
9.4 数据准备
9.5 模型训练
第10章 从零开始进行逻辑回归
10.1 逻辑回归的数学背景
10.2 Python实现
10.3 模型测试
10.3.1 数据集准备
10.3.2 运行测试
10.4 结论