深度学习入门 : 基于Python的理论与实现


深度学习入门 : 基于Python的理论与实现

文章插图
深度学习入门 : 基于Python的理论与实现【深度学习入门 : 基于Python的理论与实现】《深度学习入门 : 基于Python的理论与实现》一书由斋藤康毅所着,陆宇杰所译,人民邮电出版社2018年7月出版 。
基本介绍书名:深度学习入门 : 基于Python的理论与实现
又名:基于Python的理论与实现
作者:斋藤康毅
原版名称:Deep Learning from Scratch
译者:陆宇杰
ISBN:9787115485588
页数:285
定价:59.00
出版社:人民邮电出版社
出版时间:2018-7
装帧:平装
内容简介本书是深度学习真正意义上的入门书,深入浅出地剖析了深度学习的原理和相关技术 。书中使用Python3,儘量不依赖外部库或工具,从基本的数学知识出发,带领读者从零创建一个经典的深度学习网路,使读者在此过程中逐步理解深度学习 。书中不仅介绍了深度学习和神经网路的概念、特徵等基础知识,对误差反向传播法、卷积神经网路等也有深入讲解,此外还介绍了深度学习相关的实用技巧,自动驾驶、图像生成、强化学习等方面的套用,以及为什幺加深层可以提高识别精度等“为什幺”的问题 。目录译者序 xiii前言 xv第1章 Python入门 11.1 Python是什幺 11.2 Python的安装 21.2.1 Python版本 21.2.2 使用的外部库 21.2.3 Anaconda发行版 31.3 Python解释器 41.3.1 算术计算 41.3.2 数据类型 51.3.3 变数 51.3.4 列表 61.3.5 字典 71.3.6 布尔型 71.3.7 if 语句 81.3.8 for 语句 81.3.9 函式 91.4 Python脚本档案 91.4.1 保存为档案 91.4.2 类 101.5 NumPy 111.5.1 导入NumPy 111.5.2 生成NumPy数组 121.5.3 NumPy 的算术运算 121.5.4 NumPy的N维数组 131.5.5 广播 141.5.6 访问元素 151.6 Matplotlib 161.6.1 绘製简单图形 161.6.2 pyplot 的功能 171.6.3 显示图像 181.7 小结 19第2章 感知机 212.1 感知机是什幺 212.2 简单逻辑电路 232.2.1 与门 232.2.2 与非门和或门 232.3 感知机的实现 252.3.1 简单的实现 252.3.2 导入权重和偏置 262.3.3 使用权重和偏置的实现 262.4 感知机的局限性 282.4.1 异或门 282.4.2 线性和非线性 302.5 多层感知机 312.5.1 已有门电路的组合 312.5.2 异或门的实现 332.6 从与非门到计算机 352.7 小结 36第3章 神经网路 373.1 从感知机到神经网路 373.1.1 神经网路的例子 373.1.2 複习感知机 383.1.3 激活函式登场 403.2 激活函式 423.2.1 sigmoid 函式 423.2.2 阶跃函式的实现 433.2.3 阶跃函式的图形 443.2.4 sigmoid 函式的实现 453.2.5 sigmoid 函式和阶跃函式的比较 463.2.6 非线性函式 483.2.7 ReLU函式 493.3 多维数组的运算 503.3.1 多维数组 503.3.2 矩阵乘法 513.3.3 神经网路的内积 553.4 3 层神经网路的实现 563.4.1 符号确认 573.4.2 各层间信号传递的实现 583.4.3 代码实现小结 623.5 输出层的设计 633.5.1 恆等函式和softmax 函式 643.5.2 实现softmax 函式时的注意事项 663.5.3 softmax 函式的特徵 673.5.4 输出层的神经元数量 683.6 手写数字识别 693.6.1 MNIST数据集 703.6.2 神经网路的推理处理 733.6.3 批处理 753.7 小结 79第4章 神经网路的学习 814.1 从数据中学习 814.1.1 数据驱动 824.1.2 训练数据和测试数据 844.2 损失函式 854.2.1 均方误差 854.2.2 交叉熵误差 874.2.3 mini-batch 学习 884.2.4 mini-batch 版交叉熵误差的实现 914.2.5 为何要设定损失函式 924.3 数值微分 944.3.1 导数 944.3.2 数值微分的例子 964.3.3 偏导数 984.4 梯度 1004.4.1 梯度法 1024.4.2 神经网路的梯度 1064.5 学习算法的实现 1094.5.1 2 层神经网路的类 1104.5.2 mini-batch 的实现 1144.5.3 基于测试数据的评价 1164.6 小结 118第5章 误差反向传播法 1215.1 计算图 1215.1.1 用计算图求解 1225.1.2 局部计算 1245.1.3 为何用计算图解题 1255.2 链式法则 1265.2.1 计算图的反向传播 1275.2.2 什幺是链式法则 1275.2.3 链式法则和计算图 1295.3 反向传播 1305.3.1 加法节点的反向传播 1305.3.2 乘法节点的反向传播 1325.3.3 苹果的例子 1335.4 简单层的实现 1355.4.1 乘法层的实现 1355.4.2 加法层的实现 1375.5 激活函式层的实现 1395.5.1 ReLU层 1395.5.2 Sigmoid 层 1415.6 AffineSoftmax层的实现 1445.6.1 Affine层 1445.6.2 批版本的Affine层 1485.6.3 Softmax-with-Loss 层 1505.7 误差反向传播法的实现 1545.7.1 神经网路学习的全貌图 1545.7.2 对应误差反向传播法的神经网路的实现 1555.7.3 误差反向传播法的梯度确认 1585.7.4 使用误差反向传播法的学习 1595.8 小结 161第6章 与学习相关的技巧 1636.1 参数的更新 1636.1.1 探险家的故事 1646.1.2 SGD 1646.1.3 SGD的缺点 1666.1.4 Momentum 1686.1.5 AdaGrad 1706.1.6 Adam 1726.1.7 使用哪种更新方法呢 1746.1.8 基于MNIST数据集的更新方法的比较 1756.2 权重的初始值 1766.2.1 可以将权重初始值设为0 吗 1766.2.2 隐藏层的激活值的分布 1776.2.3 ReLU的权重初始值 1816.2.4 基于MNIST数据集的权重初始值的比较 1836.3 Batch Normalization 1846.3.1 Batch Normalization 的算法 1846.3.2 Batch Normalization 的评估 1866.4 正则化 1886.4.1 过拟合 1896.4.2 权值衰减 1916.4.3 Dropout 1926.5 超参数的验证 1956.5.1 验证数据 1956.5.2 超参数的最最佳化 1966.5.3 超参数最最佳化的实现 1986.6 小结 200第7章 卷积神经网路 2017.1 整体结构 2017.2 卷积层 2027.2.1 全连线层存在的问题 2037.2.2 卷积运算 2037.2.3 填充 2067.2.4 步幅 2077.2.5 3 维数据的卷积运算 2097.2.6 结合方块思考 2117.2.7 批处理 2137.3 池化层 2147.4 卷积层和池化层的实现 2167.4.1 4 维数组 2167.4.2 基于im2col 的展开 2177.4.3 卷积层的实现 2197.4.4 池化层的实现 2227.5 CNN的实现 2247.6 CNN的可视化 2287.6.1 第1 层权重的可视化 2287.6.2 基于分层结构的信息提取 2307.7 具有代表性的CNN 2317.7.1 LeNet 2317.7.2 AlexNet 2327.8 小结 233第8章 深度学习 2358.1 加深网路 2358.1.1 向更深的网路出发 2358.1.2 进一步提高识别精度 2388.1.3 加深层的动机 2408.2 深度学习的小历史 2428.2.1 ImageNet 2438.2.2 VGG 2448.2.3 GoogLeNet 2458.2.4 ResNet 2468.3 深度学习的高速化 2488.3.1 需要努力解决的问题 2488.3.2 基于GPU的高速化 2498.3.3 分散式学习 2508.3.4 运算精度的位数缩减 2528.4 深度学习的套用案例 2538.4.1 物体检测 2538.4.2 图像分割 2558.4.3 图像标题的生成 2568.5 深度学习的未来 2588.5.1 图像风格变换 2588.5.2 图像的生成 2598.5.3 自动驾驶 2618.5.4 Deep Q-Network(强化学习) 2628.6 小结 264附录A Softmax-with-Loss 层的计算图 267A.1 正向传播 268A.2 反向传播 270A.3 小结 277参考文献 279