深度学习入门之PyTorch


深度学习入门之PyTorch

文章插图
深度学习入门之PyTorch【深度学习入门之PyTorch】《深度学习入门之PyTorch》一书由廖星宇编着 , 电子工业出版社2017年月出版
内容提要《深度学习入门之PyTorch》深度学习如今已经成为科技领域最炙手可热的技术 , 在《深度学习入门之PyTorch》中 , 我们将帮助你入门深度学习 。《深度学习入门之PyTorch》将从机器学习和深度学习的基础理论入手 , 从零开始学习 PyTorch , 了解 PyTorch 基础 , 以及如何用 PyTorch 框架搭建模型 。通过阅读《深度学习入门之PyTorch》 , 你将学到机器学习中的线性回归和 Logistic 回归、深度学习的最佳化方法、多层全连线神经网路、卷积神经网路、循环神经网路 , 以及生成对抗网路 , 最后通过实战了解深度学习前沿的研究成果 , 以及 PyTorch 在实际项目中的套用 。《深度学习入门之PyTorch》将理论和代码相结合 , 帮助读者更好地入门深度学习 , 适合任何对深度学习感兴趣的人阅读 。目录第 1 章 深度学习介绍 11.1 人工智慧 11.2 数据挖掘、机器学习与深度学习21.2.1 数据挖掘 31.2.2 机器学习 31.2.3 深度学习 41.3 学习资源与建议 8第 2 章 深度学习框架 112.1 深度学习框架介绍 . 112.2 PyTorch 介绍. 132.2.1 什幺是 PyTorch. 132.2.2 为何要使用 PyTorch 142.3 配置 PyTorch 深度学习环境 152.3.1 作业系统的选择. 152.3.2 Python 开发环境的安装 162.3.3 PyTorch 的安装. 18第 3 章 多层全连线神经网路 243.1 热身:PyTorch 基础 243.1.1 Tensor(张量). 243.1.2 Variable(变数)263.1.3 Dataset(数据集)283.1.4 nn.Module(模组) 293.1.5 torch.optim(最佳化) 303.1.6 模型的保存和载入 313.2 线性模型 323.2.1 问题介绍 323.2.2 一维线性回归333.2.3 多维线性回归343.2.4 一维线性回归的代码实现. 353.2.5 多项式回归 383.3 分类问题 423.3.1 问题介绍 423.3.2 Logistic 起源 423.3.3 Logistic 分布 423.3.4 二分类的 Logistic 回归 433.3.5 模型的参数估计. 443.3.6 Logistic 回归的代码实现453.4 简单的多层全连线前向网路 . 493.4.1 模拟神经元 493.4.2 单层神经网路的分类器 503.4.3 激活函式 513.4.4 神经网路的结构. 543.4.5 模型的表示能力与容量 553.5 深度学习的基石:反向传播算法573.5.1 链式法则 573.5.2 反向传播算法583.5.3 Sigmoid 函式举例583.6 各种最佳化算法的变式593.6.1 梯度下降法 593.6.2 梯度下降法的变式 623.7 处理数据和训练模型的技巧 . 643.7.1 数据预处理 643.7.2 权重初始化 663.7.3 防止过拟合 673.8 多层全连线神经网路实现 MNIST 手写数字分类 693.8.1 简单的三层全连线神经网路703.8.2 添加激活函式703.8.3 添加批标準化713.8.4 训练网路 71第 4 章 卷积神经网路 764.1 主要任务及起源 764.2 卷积神经网路的原理和结构 . 774.2.1 卷积层804.2.2 池化层844.2.3 全连线层 854.2.4 卷积神经网路的基本形式. 854.3 PyTorch 卷积模组 . 874.3.1 卷积层874.3.2 池化层884.3.3 提取层结构 904.3.4 如何提取参数及自定义初始化 914.4 卷积神经网路案例分析. 924.4.1 LeNet. 934.4.2 AlexNet944.4.3 VGGNet 954.4.4 GoogLeNet . 984.4.5 ResNet1004.5 再实现 MNIST 手写数字分类 . 1034.6 图像增强的方法 1054.7 实现 cifar10 分类 107第 5 章 循环神经网路 1115.1 循环神经网路1115.1.1 问题介绍 1125.1.2 循环神经网路的基本结构. 1125.1.3 存在的问题 1155.2 循环神经网路的变式:LSTM 与 GRU 1165.2.1 LSTM. 1165.2.2 GRU. 1195.2.3 收敛性问题 1205.3 循环神经网路的 PyTorch 实现 1225.3.1 PyTorch 的循环网路模组1225.3.2 实例介绍 1275.4 自然语言处理的套用1315.4.1 词嵌入1315.4.2 词嵌入的 PyTorch 实现 1335.4.3 N Gram 模型 1335.4.4 单词预测的 PyTorch 实现134 5.4.5 词性判断 1365.4.6 词性判断的 PyTorch 实现1375.5 循环神经网路的更多套用1405.5.1 Many to one 1405.5.2 Many to Many(shorter)1415.5.3 Seq2seq1415.5.4 CNN+RNN . 142第 6 章 生成对抗网路 1446.1 生成模型 1446.1.1 自动编码器 1456.1.2 变分自动编码器. 1506.2 生成对抗网路1536.2.1 何为生成对抗网路 1536.2.2 生成对抗网路的数学原理. 1606.3 Improving GAN1646.3.1 Wasserstein GAN. 1646.3.2 Improving WGAN1676.4 套用介绍 1686.4.1 Conditional GAN. 1686.4.2 Cycle GAN . 170第 7 章 深度学习实战 1737.1 实例一——猫狗大战:运用预训练卷积神经网路进行特徵提取与预测 . 1737.1.1 背景介绍 1747.1.2 原理分析 1747.1.3 代码实现 1777.1.4 总结. 1837.2 实例二——Deep Dream:探索卷积神经网路眼中的世界1837.2.1 原理介绍 1847.2.2 预备知识:backward . 1857.2.3 代码实现 1907.2.4 总结. 1957.3 实例三——Neural-Style:使用 PyTorch 进行风格迁移1967.3.1 背景介绍 1967.3.2 原理分析 1977.3.3 代码实现 1997.3.4 总结. 2057.4 实例四——Seq2seq:通过 RNN 实现简单的 Neural Machine Translation . 2057.4.1 背景介绍 2067.4.2 原理分析 2067.4.3 代码实现 2097.4.4 总结. 221