目录 基础篇 第1章深度学习简介 1.1计算机视觉 1.1.1定义 1.1.2基本任务 1.1.3传统方法 1.1.4仿生学与深度学习 1.1.5现代深度学习 1.1.6小结 1.2自然语言处理 1.2.1自然语言处理的基本问题 1.2.2传统方法与神经网络方法的比较 1.2.3发展趋势 1.3强化学习 1.3.1什么是强化学习 1.3.2强化学习算法简介 1.3.3强化学习的应用 第2章深度学习框架 2.1Caffe 2.1.1Caffe简介 2.1.2Caffe的特点 2.1.3Caffe概述 2.2TensorFlow 2.2.1TensorFlow简介 2.2.2数据流图 2.2.3TensorFlow的特点 2.2.4TensorFlow概述 2.3PyTorch 2.3.1PyTorch简介 2.3.2PyTorch的特点 2.3.3PyTorch概述 2.4三者的比较 2.4.1Caffe 2.4.2TensorFlow 2.4.3PyTorch 第3章机器学习基础知识 3.1模型评估与模型参数选择 3.1.1验证 3.1.2正则化 3.2监督学习与非监督学习 3.2.1监督学习 3.2.2非监督学习 第4章PyTorch深度学习基础 4.1Tensor对象及其运算 4.2Tensor的索引和切片 4.3Tensor的变换、拼接和拆分 4.4PyTorch的Reduction操作 4.5PyTorch的自动微分 第5章Logistic回归 5.1线性回归 5.2Logistic回归 5.3用PyTorch实现Logistic回归 5.3.1数据准备 5.3.2线性方程 5.3.3激活函数 5.3.4损失函数 5.3.5优化算法 5.3.6模型可视化 第6章神经网络基础 6.1基础概念 6.2感知器 6.2.1单层感知器 6.2.2多层感知器 6.3BP神经网络 6.3.1梯度下降 6.3.2后向传播 6.4Dropout正则化 6.5批标准化 6.5.1Batch Normalization的实现方式 6.5.2Batch Normalization的使用方法 第7章卷积神经网络与计算机视觉 7.1卷积神经网络的基本思想 7.2卷积操作 7.3池化层 7.4卷积神经网络 7.5经典网络结构 7.5.1VGG网络 7.5.2InceptionNet 7.5.3ResNet 7.6用PyTorch进行手写数字识别 第8章神经网络与自然语言处理 8.1语言建模 8.2基于多层感知机的架构 8.3基于循环神经网络的架构 8.3.1循环单元 8.3.2通过时间后向传播 8.3.3带有门限的循环单元 8.3.4循环神经网络语言模型 8.3.5神经机器翻译 8.4基于卷积神经网络的架构 8.5基于Transformer的架构 8.5.1多头注意力 8.5.2非参位置编码 8.5.3编码器单元与解码器单元 8.6表示学习与预训练技术 8.6.1词向量 8.6.2加入上下文信息的特征表示 8.6.3网络预训练 8.7小结 实战篇 第9章搭建卷积神经网络进行图像分类 9.1实验数据准备 9.2数据预处理和准备 9.2.1数据集的读取 9.2.2重载data.Dataset类 9.2.3transform数据预处理 9.3模型构建 9.3.1ResNet50 9.3.2bottleneck的实现 9.3.3ResNet50卷积层定义 9.3.4ResNet50 forward实现 9.3.5预训练参数装载 9.4模型训练与结果评估 9.4.1训练类的实现 9.4.2优化器的定义 9.4.3学习率衰减 9.4.4训练 9.5总结 第10章图像风格迁移 10.1VGG模型 10.2图像风格迁移介绍 10.3内容损失函数 10.3.1内容损失函数的定义 10.3.2内容损失模块的实现 10.4风格损失函数 10.4.1风格损失函数的定义 10.4.2计算Gram矩阵函数的实现 10.4.3风格损失模块的实现 10.5优化过程 10.6图像风格迁移主程序的实现 10.6.1图像预处理 10.6.2参数定义 10.6.3模型初始化 10.6.4运行风格迁移的主函数 10.6.5利用VGG网络建立损失函数 10.6.6风格迁移的优化过程 10.6.7运行风格迁移 第11章基于RNN的文本分类 11.1数据准备 11.2将名字转换为张量 11.3构建神经网络 11.4训练 11.4.1准备训练 11.4.2训练RNN网络 11.5绘制损失变化图 11.6预测结果 11.7预测用户输入 第12章基于CNN的视频行为识别 12.1问题描述 12.2源码结构 12.3数据准备 12.4模型搭建与训练 12.5特征图可视化 第13章实现对抗性样本生成 13.1威胁模型 13.2快速梯度符号攻击 13.3代码实现 13.3.1输入 13.3.2受到攻击的模型 13.3.3FGSM攻击 13.3.4测试功能 13.3.5运行攻击 13.3.6结果分析 13.4对抗示例 13.5小结 第14章实现基于LSTM的情感分析 14.1情感分析常用的Python工具库 14.1.1PyTorch 14.1.2tqdm 14.1.3Pandas 14.1.4Gensim 14.1.5collections 14.2数据样本分析 14.3数据预处理 14.4算法模型 14.4.1循环神经网络 14.4.2长短期记忆神经网络 14.4.3模型实现 14.5小结 第15章实现DCGAN 15.1生成对抗网络 15.2DCGAN介绍 15.3初始化代码 15.3.1初始化相关库 15.3.2数据加载 15.4模型实现 15.4.1权重初始化 15.4.2生成器 15.4.3判别器 15.4.4判别器代码 15.4.5损失函数和优化器 15.4.6训练 15.5结果 15.5.1损失与训练迭代次数关系图 15.5.2生成器G的训练进度 15.5.3真实图像与假图像 15.6小结 第16章视觉问答 16.1视觉问答简介 16.2基于BottomUp Attention的联合嵌入模型 16.3准备工作 16.3.1下载数据 16.3.2安装必备的软件包 16.3.3使用配置文件 16.4实现基础模块 16.4.1FCNet模块 16.4.2SimpleClassifier模块 16.5实现问题嵌入模块 16.5.1词嵌入 16.5.2RNN 16.6实现TopDown Attention模块 16.7组装完整的VQA系统 16.8运行VQA实验 16.8.1训练 16.8.2可视化 附录APyTorch环境搭建 A.1Linux平台下PyTorch环境搭建 A.2Windows平台下PyTorch环境搭建 附录B深度学习的数学基础 B.1线性代数 B.2概率论 参考文献