 迁移学习-自定义数据集实战自定义数据集实战 主讲:龙良曲 Pokemon Go! Pokemon Dataset https://www.pyimagesearch.com/2018/04/16/keras-and-convolutional-neural-networks-cnns/ Download ▪ 链接: https://pan.baidu.com/s/1V_ZJ7ufjUUFZwD2NHSNMFw0 码力 | 16 页 | 719.15 KB | 1 年前3 迁移学习-自定义数据集实战自定义数据集实战 主讲:龙良曲 Pokemon Go! Pokemon Dataset https://www.pyimagesearch.com/2018/04/16/keras-and-convolutional-neural-networks-cnns/ Download ▪ 链接: https://pan.baidu.com/s/1V_ZJ7ufjUUFZwD2NHSNMFw0 码力 | 16 页 | 719.15 KB | 1 年前3
 【PyTorch深度学习-龙龙老师】-测试版202112第 2 章 回归问题 2.1 神经元模型 2.2 优化方法 2.3 线性模型实战 2.4 线性回归 2.5 参考文献 第 3 章 分类问题 3.1 手写数字图片数据集 3.2 模型构建 3.3 误差计算 3.4 真的解决了吗 3.5 非线性模型 3.6 表达能力 3.7 优化方法 3.8 手写数字图片识别体验 3.9 小结 3.10 前向传播实战 4.11 参考文献 第 5 章 PyTorch 进阶 5.1 合并与分割 5.2 数据统计 5.3 张量比较 5.4 填充与复制 5.5 数据限幅 5.6 高级操作 5.7 经典数据集加载 5.8 MNIST 测试实战 5.9 参考文献 第 6 章 神经网络 6.1 感知机 6.2 全连接层 6.3 神经网络 6 4 自定义类 8.5 模型乐园 8.6 测量工具 8.7 可视化 8.8 参考文献 第 9 章 过拟合 9.1 模型的容量 9.2 过拟合与欠拟合 9.3 数据集划分 9.4 模型设计 9.5 正则化 9.6 Dropout 9.7 数据增强 9.8 过拟合问题实战 9.9 参考文献 第 10 章 卷积神经网络 10.1 全连接网络的问题0 码力 | 439 页 | 29.91 MB | 1 年前3 【PyTorch深度学习-龙龙老师】-测试版202112第 2 章 回归问题 2.1 神经元模型 2.2 优化方法 2.3 线性模型实战 2.4 线性回归 2.5 参考文献 第 3 章 分类问题 3.1 手写数字图片数据集 3.2 模型构建 3.3 误差计算 3.4 真的解决了吗 3.5 非线性模型 3.6 表达能力 3.7 优化方法 3.8 手写数字图片识别体验 3.9 小结 3.10 前向传播实战 4.11 参考文献 第 5 章 PyTorch 进阶 5.1 合并与分割 5.2 数据统计 5.3 张量比较 5.4 填充与复制 5.5 数据限幅 5.6 高级操作 5.7 经典数据集加载 5.8 MNIST 测试实战 5.9 参考文献 第 6 章 神经网络 6.1 感知机 6.2 全连接层 6.3 神经网络 6 4 自定义类 8.5 模型乐园 8.6 测量工具 8.7 可视化 8.8 参考文献 第 9 章 过拟合 9.1 模型的容量 9.2 过拟合与欠拟合 9.3 数据集划分 9.4 模型设计 9.5 正则化 9.6 Dropout 9.7 数据增强 9.8 过拟合问题实战 9.9 参考文献 第 10 章 卷积神经网络 10.1 全连接网络的问题0 码力 | 439 页 | 29.91 MB | 1 年前3
 动手学深度学习 v2.0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 2.2.1 读取数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 2.2.2 处理缺失值 . . . . . . . . . . . . . . . . . . . . 95 3.2.1 生成数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 3.2.2 读取数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 3.3.1 生成数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 3.3.2 读取数据集 . . . . . . . . . . . . . . . . . . . . . . . . .0 码力 | 797 页 | 29.45 MB | 1 年前3 动手学深度学习 v2.0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 2.2.1 读取数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 2.2.2 处理缺失值 . . . . . . . . . . . . . . . . . . . . 95 3.2.1 生成数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 3.2.2 读取数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 3.3.1 生成数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 3.3.2 读取数据集 . . . . . . . . . . . . . . . . . . . . . . . . .0 码力 | 797 页 | 29.45 MB | 1 年前3
 Keras: 基于 Python 的深度学习库. . . . . 31 3.3.9 如何用 Keras 处理超过内存的数据集? . . . . . . . . . . . . . . . . . . . . 32 3.3.10 在验证集的误差不再下降时,如何中断训练? . . . . . . . . . . . . . . . . 32 3.3.11 验证集划分是如何计算的? . . . . . . . . . . . . . . . 3.3.12 在训练过程中数据是否会混洗? . . . . . . . . . . . . . . . . . . . . . . . . 32 3.3.13 如何在每个 epoch 后记录训练集和验证集的误差和准确率? . . . . . . . . 32 3.3.14 如何「冻结」网络层? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 12 常用数据集 Datasets 154 12.1 CIFAR10 小图像分类数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 12.2 CIFAR100 小图像分类数据集 . . . . . . . . . . . . . . . . . .0 码力 | 257 页 | 1.19 MB | 1 年前3 Keras: 基于 Python 的深度学习库. . . . . 31 3.3.9 如何用 Keras 处理超过内存的数据集? . . . . . . . . . . . . . . . . . . . . 32 3.3.10 在验证集的误差不再下降时,如何中断训练? . . . . . . . . . . . . . . . . 32 3.3.11 验证集划分是如何计算的? . . . . . . . . . . . . . . . 3.3.12 在训练过程中数据是否会混洗? . . . . . . . . . . . . . . . . . . . . . . . . 32 3.3.13 如何在每个 epoch 后记录训练集和验证集的误差和准确率? . . . . . . . . 32 3.3.14 如何「冻结」网络层? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 12 常用数据集 Datasets 154 12.1 CIFAR10 小图像分类数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 12.2 CIFAR100 小图像分类数据集 . . . . . . . . . . . . . . . . . .0 码力 | 257 页 | 1.19 MB | 1 年前3
 机器学习课程-温州大学-03深度学习-PyTorch入门重复使用,但不参与求导的场景 下 tensor.detach() 共享 否 常用在神经网络中仅要利用张量 数值,而不需要追踪导数的场景 下 tensor.clone().detach() 新建 否 只做简单的数据复制,既不数据 共享,也不对梯度共享,从此两 个张量无关联。 2. Autograd自动求导 19 2. Autograd自动求导 在训练一个神经网络时,梯度的计算是一个关键的步骤,它为神经 网络的优化提供了关键数据。 定义网络层 构建网络 前向传播 反向传播 优化参数 3. 神经网络 30 3. 神经网络 神经网络的典型训练过程如下: • 定义神经网络模型,它有一些可学习的参数(或者权重); • 在数据集上迭代; • 通过神经网络处理输入; • 计算损失(输出结果和正确值的差距大小) • 将梯度反向传播回网络的参数; • 更新网络的参数,主要使用如下简单的更新原则: weight = weight 02 Autograd自动求导 03 神经网络 04 训练一个分类器 35 4. 训练一个分类器 训练一个分类器流程 加载训练集和测试集 定义一个卷积神经网络 定义损失函数 在训练集上训练网络 在测试集上测试网络 36 4. 训练一个分类器 torch.nn.Linear PyTorch的nn.Linear()是用于设置网络中的全连接层的,需要注意的是全连接0 码力 | 40 页 | 1.64 MB | 1 年前3 机器学习课程-温州大学-03深度学习-PyTorch入门重复使用,但不参与求导的场景 下 tensor.detach() 共享 否 常用在神经网络中仅要利用张量 数值,而不需要追踪导数的场景 下 tensor.clone().detach() 新建 否 只做简单的数据复制,既不数据 共享,也不对梯度共享,从此两 个张量无关联。 2. Autograd自动求导 19 2. Autograd自动求导 在训练一个神经网络时,梯度的计算是一个关键的步骤,它为神经 网络的优化提供了关键数据。 定义网络层 构建网络 前向传播 反向传播 优化参数 3. 神经网络 30 3. 神经网络 神经网络的典型训练过程如下: • 定义神经网络模型,它有一些可学习的参数(或者权重); • 在数据集上迭代; • 通过神经网络处理输入; • 计算损失(输出结果和正确值的差距大小) • 将梯度反向传播回网络的参数; • 更新网络的参数,主要使用如下简单的更新原则: weight = weight 02 Autograd自动求导 03 神经网络 04 训练一个分类器 35 4. 训练一个分类器 训练一个分类器流程 加载训练集和测试集 定义一个卷积神经网络 定义损失函数 在训练集上训练网络 在测试集上测试网络 36 4. 训练一个分类器 torch.nn.Linear PyTorch的nn.Linear()是用于设置网络中的全连接层的,需要注意的是全连接0 码力 | 40 页 | 1.64 MB | 1 年前3
 机器学习课程-温州大学-12机器学习-关联规则Apriori算法利用频繁项集生成关联规则。它基于频繁项集的子集也 必须是频繁项集的概念。 频繁项集是支持值大于阈值(support)的项集。 Apriori算法就是基于一个先验: 如果某个项集是频繁的,那么它的所有子集也是频繁的。 11 2.Apriori算法 算法流程 输入:数据集合D,支持度阈值? 输出:最大的频繁k项集 1)扫描整个数据集,得到所有出现过的数据,作为候选频繁1项集。k=1,频繁0项集为空集。 频繁0项集为空集。 2)挖掘频繁k项集 a) 扫描数据计算候选频繁k项集的支持度 b) 去除候选频繁k项集中支持度低于阈值的数据集,得到频繁k项集。如果得到的频繁k项集 为空,则直接返回频繁k-1项集的集合作为算法结果,算法结束。如果得到的频繁k项集 只有一项,则直接返回频繁k项集的集合作为算法结果,算法结束。 c) 基于频繁k项集,连接生成候选频繁k+1项集。 3) 令k=k+1,转入步骤2。 令k=k+1,转入步骤2。 12 2.Apriori算法 算法案例 第一次迭代:假设支持度阈值为2,创建大小为1的项集并计算它们的支持度。 订单编号 项目 T1 1 3 4 T2 2 3 5 T3 1 2 3 5 T4 2 5 T5 1 3 5 项集 支持度 {1} 3 {2} 3 {3} 4 {4} 1 {5} 4 C1 13 2.Apriori算法0 码力 | 49 页 | 1.41 MB | 1 年前3 机器学习课程-温州大学-12机器学习-关联规则Apriori算法利用频繁项集生成关联规则。它基于频繁项集的子集也 必须是频繁项集的概念。 频繁项集是支持值大于阈值(support)的项集。 Apriori算法就是基于一个先验: 如果某个项集是频繁的,那么它的所有子集也是频繁的。 11 2.Apriori算法 算法流程 输入:数据集合D,支持度阈值? 输出:最大的频繁k项集 1)扫描整个数据集,得到所有出现过的数据,作为候选频繁1项集。k=1,频繁0项集为空集。 频繁0项集为空集。 2)挖掘频繁k项集 a) 扫描数据计算候选频繁k项集的支持度 b) 去除候选频繁k项集中支持度低于阈值的数据集,得到频繁k项集。如果得到的频繁k项集 为空,则直接返回频繁k-1项集的集合作为算法结果,算法结束。如果得到的频繁k项集 只有一项,则直接返回频繁k项集的集合作为算法结果,算法结束。 c) 基于频繁k项集,连接生成候选频繁k+1项集。 3) 令k=k+1,转入步骤2。 令k=k+1,转入步骤2。 12 2.Apriori算法 算法案例 第一次迭代:假设支持度阈值为2,创建大小为1的项集并计算它们的支持度。 订单编号 项目 T1 1 3 4 T2 2 3 5 T3 1 2 3 5 T4 2 5 T5 1 3 5 项集 支持度 {1} 3 {2} 3 {3} 4 {4} 1 {5} 4 C1 13 2.Apriori算法0 码力 | 49 页 | 1.41 MB | 1 年前3
 机器学习课程-温州大学-05深度学习-深度学习实践深度学习-深度学习实践 黄海广 副教授 2 01 数据集划分 02 数据集制作 03 数据归一化/标准化 04 正则化 05 偏差和方差 本章目录 3 训练集(Training Set):帮助我们训练模型,简单的说就是通过 训练集的数据让我们确定拟合曲线的参数。 验证集(Validation Set):也叫做开发集( Dev Set ),用来做 模型选择(model 用来辅助我们的模型的构建,即训练超参数,可选; 测试集(Test Set): 为了测试已经训练好的模型的精确度。 三者划分:训练集、验证集、测试集 机器学习:60%,20%,20%;70%,10%,20% 深度学习:98%,1%,1% (假设百万条数据) 数据集划分 数据集 训练集 验证集 测试集 4 交叉验证 1. 使用训练集训练出10个模型 2. 用10个模型分别对交叉验证集 计算得出交叉验证误差(代价函 计算得出交叉验证误差(代价函 数的值) 3. 选取代价函数值最小的模型 4. 用步骤3中选出的模型对测试 集计算得出推广误差(代价函数 的值) 5 数据集制作 PyTorch的dataloader是用于读取训练数据的工具,它可以自动将数据分割 成小batch,并在训练过程中进行数据预处理。 6 数据集制作 class MyDataset(Dataset): def __init__(self0 码力 | 19 页 | 1.09 MB | 1 年前3 机器学习课程-温州大学-05深度学习-深度学习实践深度学习-深度学习实践 黄海广 副教授 2 01 数据集划分 02 数据集制作 03 数据归一化/标准化 04 正则化 05 偏差和方差 本章目录 3 训练集(Training Set):帮助我们训练模型,简单的说就是通过 训练集的数据让我们确定拟合曲线的参数。 验证集(Validation Set):也叫做开发集( Dev Set ),用来做 模型选择(model 用来辅助我们的模型的构建,即训练超参数,可选; 测试集(Test Set): 为了测试已经训练好的模型的精确度。 三者划分:训练集、验证集、测试集 机器学习:60%,20%,20%;70%,10%,20% 深度学习:98%,1%,1% (假设百万条数据) 数据集划分 数据集 训练集 验证集 测试集 4 交叉验证 1. 使用训练集训练出10个模型 2. 用10个模型分别对交叉验证集 计算得出交叉验证误差(代价函 计算得出交叉验证误差(代价函 数的值) 3. 选取代价函数值最小的模型 4. 用步骤3中选出的模型对测试 集计算得出推广误差(代价函数 的值) 5 数据集制作 PyTorch的dataloader是用于读取训练数据的工具,它可以自动将数据分割 成小batch,并在训练过程中进行数据预处理。 6 数据集制作 class MyDataset(Dataset): def __init__(self0 码力 | 19 页 | 1.09 MB | 1 年前3
 机器学习课程-温州大学-05机器学习-机器学习实践01 数据集划分 02 评价指标 03 正则化、偏差和方差 本章目录 3 01 数据集划分 02 评价指标 1.数据集划分 03 正则化、偏差和方差 4 训练集(Training Set):帮助我们训练模型,简单的说就是通过 训练集的数据让我们确定拟合曲线的参数。 验证集(Validation Set):也叫做开发集( Dev Set ),用来做 用来辅助我们的模型的构建,即训练超参数,可选; 测试集(Test Set): 为了测试已经训练好的模型的精确度。 三者划分:训练集、验证集、测试集 机器学习:60%,20%,20%;70%,10%,20% 深度学习:98%,1%,1% (假设百万条数据) 1.数据集划分 数据集 训练集 验证集 测试集 5 交叉验证 1. 使用训练集训练出k个模型 2. 用k个模型分别对交叉验证集计算得 出交叉验证误差(代价函数的值) 出交叉验证误差(代价函数的值) 3. 选取代价函数值最小的模型 4. 用步骤3中选出的模型对测试集计算得出 推广误差(代价函数的值) 6 数据不平衡是指数据集中各类样本数量不均衡的情况. 常用不平衡处理方法有采样和代价敏感学习 采样欠采样、过采样和综合采样的方法 不平衡数据的处理 7 SMOTE(Synthetic Minority Over-sampling Technique)算法是过采样 中比0 码力 | 33 页 | 2.14 MB | 1 年前3 机器学习课程-温州大学-05机器学习-机器学习实践01 数据集划分 02 评价指标 03 正则化、偏差和方差 本章目录 3 01 数据集划分 02 评价指标 1.数据集划分 03 正则化、偏差和方差 4 训练集(Training Set):帮助我们训练模型,简单的说就是通过 训练集的数据让我们确定拟合曲线的参数。 验证集(Validation Set):也叫做开发集( Dev Set ),用来做 用来辅助我们的模型的构建,即训练超参数,可选; 测试集(Test Set): 为了测试已经训练好的模型的精确度。 三者划分:训练集、验证集、测试集 机器学习:60%,20%,20%;70%,10%,20% 深度学习:98%,1%,1% (假设百万条数据) 1.数据集划分 数据集 训练集 验证集 测试集 5 交叉验证 1. 使用训练集训练出k个模型 2. 用k个模型分别对交叉验证集计算得 出交叉验证误差(代价函数的值) 出交叉验证误差(代价函数的值) 3. 选取代价函数值最小的模型 4. 用步骤3中选出的模型对测试集计算得出 推广误差(代价函数的值) 6 数据不平衡是指数据集中各类样本数量不均衡的情况. 常用不平衡处理方法有采样和代价敏感学习 采样欠采样、过采样和综合采样的方法 不平衡数据的处理 7 SMOTE(Synthetic Minority Over-sampling Technique)算法是过采样 中比0 码力 | 33 页 | 2.14 MB | 1 年前3
 全连接神经网络实战. pytorch 版构建自己的数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 4.1 自定义 Variable 数据与网络训练 19 4.2 准确率的可视化 22 4.3 分类结果的可视化 23 4.4 自定义 Dataset 数据集 25 3 data.Dataset 以及 torch.utils.data.DataLoader。 Dataset 存储样本以及它们的标签等信息,Dataset 可以使用预加载的数据集(例如 mnist), 也可以使用自定义的数据集;而 DataLoader 是把样本进行访问和索引的工具,它实现了迭代器 功能,也就是说它可以依次将 batch_size 数量的样本导出。 注意,前面已经导入过的 python 类,在子类中实现一些固定 功能的函数,这样就相当于封装了自己的数据为 Dataset 类型。为了方便起见,我们先描述如何 使用预加载数据,然后第二章就开始构建神经网络模型。等第四章我们再描述如何自定义数据集。 我们一次写一个完整的程序来把数据可视化一下: from torchvision import datasets from torchvision . transforms import ToTensor0 码力 | 29 页 | 1.40 MB | 1 年前3 全连接神经网络实战. pytorch 版构建自己的数据集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 4.1 自定义 Variable 数据与网络训练 19 4.2 准确率的可视化 22 4.3 分类结果的可视化 23 4.4 自定义 Dataset 数据集 25 3 data.Dataset 以及 torch.utils.data.DataLoader。 Dataset 存储样本以及它们的标签等信息,Dataset 可以使用预加载的数据集(例如 mnist), 也可以使用自定义的数据集;而 DataLoader 是把样本进行访问和索引的工具,它实现了迭代器 功能,也就是说它可以依次将 batch_size 数量的样本导出。 注意,前面已经导入过的 python 类,在子类中实现一些固定 功能的函数,这样就相当于封装了自己的数据为 Dataset 类型。为了方便起见,我们先描述如何 使用预加载数据,然后第二章就开始构建神经网络模型。等第四章我们再描述如何自定义数据集。 我们一次写一个完整的程序来把数据可视化一下: from torchvision import datasets from torchvision . transforms import ToTensor0 码力 | 29 页 | 1.40 MB | 1 年前3
 机器学习课程-温州大学-12深度学习-自然语言处理和词嵌入第二步,你可以用这些词嵌入模型把它迁移到你的新的只有少量标注训练集的任 务中,比如说用这个300维的词嵌入来表示你的单词。这样做的一个好处就是你 可以用更低维度的特征向量代替原来的10000维的one-hot向量,现在你可以用 一个300维更加紧凑的向量。 第三步,当你在你新的任务上训练模型时,在你的命名实体识别任务上,只有少 量的标记数据集上,你可以自己选择要不要继续微调,用新的数据调整词嵌入。 Word2Vec (下图左边为CBOW,右边为Skip-Gram) CBOW对小型数据库比较合适,而Skip-Gram在大型语料中表现更好。 17 3.Word2Vec 我们实际构建和训练模型的数据集将如下所示: 这被称为连续词袋结构,并在word2vec论文 one of the word2vec papers 中进行过描述。 18 3.Word2Vec 负采样 计算的角度来看,Sk 训练步骤到此结束。我们从这一步骤中得到稍微好一点的嵌入(`not` ,`thou`,`aaron`和`taco`)。我们现在进行下一步(下一个正样本及 其相关的负样本),并再次执行相同的过程。 当我们循环遍历整个数据集多次时,嵌入继续得到改进。然后我们可以停 止训练过程,丢弃`Context`矩阵,并使用`Embeddings`矩阵作为下一个任务 的预训练嵌入。 27 4.GloVe 03 Word2Vec0 码力 | 44 页 | 2.36 MB | 1 年前3 机器学习课程-温州大学-12深度学习-自然语言处理和词嵌入第二步,你可以用这些词嵌入模型把它迁移到你的新的只有少量标注训练集的任 务中,比如说用这个300维的词嵌入来表示你的单词。这样做的一个好处就是你 可以用更低维度的特征向量代替原来的10000维的one-hot向量,现在你可以用 一个300维更加紧凑的向量。 第三步,当你在你新的任务上训练模型时,在你的命名实体识别任务上,只有少 量的标记数据集上,你可以自己选择要不要继续微调,用新的数据调整词嵌入。 Word2Vec (下图左边为CBOW,右边为Skip-Gram) CBOW对小型数据库比较合适,而Skip-Gram在大型语料中表现更好。 17 3.Word2Vec 我们实际构建和训练模型的数据集将如下所示: 这被称为连续词袋结构,并在word2vec论文 one of the word2vec papers 中进行过描述。 18 3.Word2Vec 负采样 计算的角度来看,Sk 训练步骤到此结束。我们从这一步骤中得到稍微好一点的嵌入(`not` ,`thou`,`aaron`和`taco`)。我们现在进行下一步(下一个正样本及 其相关的负样本),并再次执行相同的过程。 当我们循环遍历整个数据集多次时,嵌入继续得到改进。然后我们可以停 止训练过程,丢弃`Context`矩阵,并使用`Embeddings`矩阵作为下一个任务 的预训练嵌入。 27 4.GloVe 03 Word2Vec0 码力 | 44 页 | 2.36 MB | 1 年前3
共 47 条
- 1
- 2
- 3
- 4
- 5













