目录
第1章人工智能绪论
微课视频25分钟
1.1人工智能
1.1.1人工智能简介
1.1.2机器学习
1.1.3神经网络与深度学习
1.2神经网络发展简史
1.2.1浅层神经网络
1.2.2深度学习
1.3深度学习特点
1.3.1数据量
1.3.2算力
1.3.3网络规模
1.3.4通用智能
1.4深度学习应用
1.4.1计算机视觉
1.4.2自然语言处理
1.4.3强化学习
1.5深度学习框架
1.5.1主流框架
1.5.2静态图和动态图
1.5.3功能演示
1.6开发环境安装
1.6.1安装Anaconda
1.6.2安装CUDA
1.6.3安装PyTorch
1.6.4常用编辑器安装
第2章回归问题
微课视频32分钟
2.1神经元模型
2.2优化方法
2.3线性模型实战
2.4线性回归
第3章分类问题
微课视频17分钟
3.1手写数字图片数据集
3.2模型构建
3.3误差计算
3.4真的解决了吗
3.5非线性模型
3.6表达能力
3.7优化方法
3.8手写数字图片识别体验
3.8.1网络搭建
3.8.2模型训练
第4章PyTorch基础
微课视频149分钟
4.1数据类型
4.1.1数值类型
4.1.2布尔类型
4.2数值精度
4.2.1读取精度
4.2.2类型转换
4.3待优化张量
4.4创建张量
4.4.1从数组、列表对象创建
4.4.2创建全0或全1张量
4.4.3创建自定义数值张量
4.4.4创建已知分布的张量
4.4.5创建序列
4.5张量的典型应用
4.5.1标量
4.5.2向量
4.5.3矩阵
4.5.4三维张量
4.5.5四维张量
4.6索引与切片
4.6.1索引
4.6.2切片
4.6.3小结
4.7维度变换
4.7.1改变视图
4.7.2增加和删除维度
4.7.3交换维度
4.7.4复制数据
4.8Broadcasting机制
4.9数学运算
4.9.1加、减、乘、除运算
4.9.2乘方运算
4.9.3指数和对数运算
4.9.4矩阵相乘运算
4.10前向传播实战
第5章PyTorch进阶
微课视频54分钟
5.1合并与分割
5.1.1合并
5.1.2分割
5.2数据统计
5.2.1向量范数
5.2.2最值、均值、和
5.3张量比较
5.4填充与复制
5.4.1填充
5.4.2复制
5.5数据限幅
5.6高级操作
5.6.1索引采样
5.6.2掩码采样
5.6.3gather采样函数
5.6.4where采样函数
5.6.5scatter写入函数
5.6.6meshgrid网格函数
5.7经典数据集加载
5.7.1预处理
5.7.2随机打散
5.7.3批训练
5.7.4循环训练
5.8MNIST测试实战
第6章神经网络
6.1感知机
6.2全连接层
6.2.1张量方式实现
6.2.2层方式实现
6.3神经网络
6.3.1张量方式实现
6.3.2层方式实现
6.3.3优化目标
6.4激活函数
6.4.1Sigmoid
6.4.2ReLU
6.4.3LeakyReLU
6.4.4tanh
6.5输出层设计
6.5.1普通实数空间
6.5.2[0,1]区间
6.5.3[0,1]区间,和为1
6.5.4(-1,1)区间
6.6误差计算
6.6.1均方误差函数
6.6.2交叉熵误差函数
6.7神经网络类型
6.7.1卷积神经网络
6.7.2循环神经网络
6.7.3注意力(机制)网络
6.7.4图卷积神经网络
6.8汽车油耗预测实战
6.8.1数据集
6.8.2创建网络
6.8.3训练与测试
第7章反向传播算法
微课视频136分钟
7.1导数与梯度
7.2导数常见性质
7.2.1基本函数的导数
7.2.2常用导数性质
7.2.3导数求解实战
7.3激活函数导数
7.3.1Sigmoid函数导数
7.3.2ReLU函数导数
7.3.3LeakyReLU函数导数
7.3.4tanh函数梯度
7.4损失函数梯度
7.4.1均方误差函数梯度
7.4.2交叉熵损失函数梯度
7.5全连接层梯度
7.5.1单神经元梯度
7.5.2全连接层梯度
7.6链式法则
7.7反向传播算法
7.8Himmelblau函数优化实战
7.9反向传播算法实战
7.9.1数据集
7.9.2网络层
7.9.3网络模型
7.9.4网络训练
7.9.5网络性能
第8章PyTorch高级用法
微课视频89分钟
8.1常见功能模块
8.1.1常见网络层类
8.1.2网络容器
8.2模型创建、训练与测试
8.2.1模型创建
8.2.2模型训练
8.2.3模型测试
8.3模型保存与加载
8.3.1张量方式
8.3.2网络方式
8.4自定义网络
8.4.1自定义网络层
8.4.2自定义网络
8.5模型乐园
8.5.1加载模型
8.5.2微调模型
8.6测量工具
8.6.1新建测量器
8.6.2写入数据
8.6.3统计数据
8.6.4清除状态
8.6.5准确率统计实战
8.7可视化
8.7.1模型端
8.7.2浏览器端
第9章过拟合
微课视频72分钟
9.1模型的容量
9.2欠拟合与过拟合
9.2.1欠拟合
9.2.2过拟合
9.3数据集划分
9.3.1验证集与超参数
9.3.2提前停止
9.4模型设计
9.5正则化
9.5.1L0正则化
9.5.2L1正则化
9.5.3L2正则化
9.5.4正则化效果
9.6Dropout
9.7数据增强
9.7.1随机旋转
9.7.2随机翻转
9.7.3随机裁剪
9.7.4生成数据
9.7.5其他方式
9.8过拟合问题实战
9.8.1构建数据集
9.8.2Pytorch lightning库
9.8.3网络层数的影响
9.8.4Dropout的影响
9.8.5正则化的影响
第10章卷积神经网络
微课视频162分钟
10.1全连接网络的问题
10.1.1局部相关性
10.1.2权值共享
10.1.3卷积运算
10.2卷积神经网络
10.2.1单通道输入和单卷积核
10.2.2多通道输入和单卷积核
10.2.3多通道输入和多卷积核
10.2.4步长
10.2.5填充
10.3卷积层实现
10.3.1自定义权值
10.3.2卷积层类
10.4LeNet5实战
10.5表示学习
10.6梯度传播
10.7池化层
10.8BatchNorm层
10.8.1前向传播
10.8.2反向更新
10.8.3BN层实现
10.9经典卷积网络
10.9.1AlexNet
10.9.2VGG系列
10.9.3GoogLeNet
10.10VGG13实战
10.10.1CIFAR数据集
10.10.2VGG模型
10.11卷积层变种
10.11.1空洞卷积
10.11.2转置卷积
10.11.3分离卷积
10.12深度残差网络
10.12.1ResNet原理
10.12.2ResBlock实现
10.13DenseNet
10.14ResNet18实战
第11章循环神经网络
微课视频117分钟
11.1序列表示方法
11.1.1Embedding层
11.1.2预训练的词向量
11.2循环神经网络
11.2.1全连接层可行吗
11.2.2共享权值
11.2.3全局语义
11.2.4循环神经网络
11.3梯度传播
11.4RNN层使用方法
11.4.1RNNCell
11.4.2多层RNNCell网络
11.4.3RNN层
11.5RNN情感分类问题实战
11.5.1数据集
11.5.2网络模型
11.5.3训练与测试
11.6梯度弥散和梯度爆炸
11.6.1梯度裁剪
11.6.2梯度弥散
11.7RNN短时记忆
11.8LSTM原理
11.8.1遗忘门
11.8.2输入门
11.8.3刷新Memory
11.8.4输出门
11.8.5小结
11.9LSTM层使用方法
11.9.1LSTMCell
11.9.2LSTM层
11.10GRU简介
11.10.1复位门
11.10.2更新门
11.10.3GRU使用方法
11.11LSTM/GRU情感分类问题再战
11.11.1LSTM模型
11.11.2GRU模型
第12章自编码器
12.1自编码器原理
12.2Fashion MNIST图片重建实战
12.2.1Fashion MNIST数据集
12.2.2编码器
12.2.3解码器
12.2.4自编码器
12.2.5网络训练
12.2.6图片重建
12.3自编码器变种
12.3.1Denoising AutoEncoder
12.3.2Dropout AutoEncoder
12.3.3Adversarial AutoEncoder
12.4变分自编码器
12.4.1VAE原理
12.4.2Reparameterization Trick
12.5VAE图片生成实战
12.5.1VAE模型
12.5.2Reparameterization函数
12.5.3网络训练
12.5.4图片生成
第13章生成对抗网络
微课视频145分钟
13.1博弈学习实例
13.2GAN原理
13.2.1网络结构
13.2.2网络训练
13.2.3统一目标函数
13.3DCGAN实战
13.3.1动漫图片数据集
13.3.2生成器
13.3.3判别器
13.3.4训练与可视化
13.4GAN变种
13.4.1DCGAN
13.4.2InfoGAN
13.4.3CycleGAN
13.4.4WGAN
13.4.5Equal GAN
13.4.6SelfAttention GAN
13.4.7BigGAN
13.5纳什均衡
13.5.1判别器状态
13.5.2生成器状态
13.5.3纳什均衡点
13.6GAN训练难题
13.6.1超参数敏感
13.6.2模式崩塌
13.7WGAN原理
13.7.1JS散度的缺陷
13.7.2EM距离
13.7.3WGANGP
13.8WGANGP实战
第14章自定义数据集
14.1精灵宝可梦数据集
14.2自定义数据集加载
14.2.1创建编码表
14.2.2创建样本和标签表格
14.2.3数据集划分
14.3宝可梦数据集实战
14.3.1创建Dataset对象
14.3.2样本预处理
14.3.3创建模型
14.3.4网络训练与测试
14.4迁移学习
14.4.1迁移学习原理
14.4.2迁移学习实战