Pytorch入门教程
小鹿学长
一个AI菜鸟&吃货学长
展开
-
9. Pytorch入门教程——在Kaggle给出的更大的测试集进行预测
原始的CIFAR10数据集有60000张图,其中训练集50000张,测试集10000张。然而,kaggle提供了300000张图的大型数据集用来测试CIFAR10.这里是kaggle网站关于这些图片的介绍:“为了阻止某些形式的作弊(如手动标签),我们在测试集中添加了290,000张垃圾图片。这些图片在评分中被忽略。我们还对官方的10,000个测试图像做了一些微不足道的修改,以防止通过文件哈希查找它们。这些修改不会明显影响得分。你应该预测所有300,000个图像的标签。”一、对于Kaggle测试图片,创建原创 2020-05-26 12:45:56 · 1203 阅读 · 0 评论 -
8. Pytorch入门教程——使用单个模型和集成模型在数据集上进行验证,预测
我们为最终的Densenet和Resnet模型加载两个文件,并在测试集上进行评估transfer_densenet = load_chkpoint('densenet_cifar10_chkpoint_file')load_chkpoint: best accuracy = 93.190set_transfer_model: self.Model set to DenseNetsetting optim Ada DeltaDenseNet: setting head: inputs: 1024原创 2020-05-26 12:38:20 · 3136 阅读 · 2 评论 -
7. Pytorch入门教程——在Cifar10数据集上训练两个不同的预训练迁移模型
现在我们可以继续进行测试和实验。但在此之前,我们应该将代码移动到.py文件并将其作为模块导入。**总共创建了四个文件:model.py (包含核心Network类)fc.py (包含FC类)cv_model.py (包含TransferNetworkImg类)utils.py (包含所有不属于任何类的实用函数)**我们还应该使用我们的Jupyter notebook的一个特殊指令,监视并重新加载所有导入的文件。如果我们出于某些原因(如修复bug)而修改任何文件,这将派上用场。from my原创 2020-05-26 12:37:04 · 1115 阅读 · 0 评论 -
6. Pytorch入门教程——创建一个派生自基类的迁移学习类
现在,我们准备创建从基类派生的迁移学习类。实现迁移学习现在会变得非常简单,因为所有需要的机制都已经到位了。迁移学习给予torchvision.models模块,包含支持下载和使用几个预先训练的计算机视觉网络架构。我们将添加三个模型的支持:Densenet121,简称DensenetResent34和ResNet50我们可以选择使用模型的预训练版本(默认 pretrained = True),我们可以获得架构+权重,或者仅仅是没有权重的架构,然后从头开始训练它们。大多数预训练版本在torchv原创 2020-05-26 12:32:50 · 422 阅读 · 0 评论 -
5. Pytorch入门教程——创建一个派生自基类的全连接类
现在,我们已经准备好创建第一个派生类,全连接神经网络。传统上,全连通网络被称为多层感知器(MLP)。在大多数深度学习框架(包括Pytorch)中,它们被简单地称为线性层。全连接网络依赖Pytorch nn.Linear模块nn.Linear模块由三部分组成:输入;全连接的隐藏层,每个隐藏层后面都有一个非线性转换(将非线性视为隐藏层的一部分,而不是将其视为一个单独的层);输出层和输出数量。一、全连接网络需求创建这样一个类需要下列需求:能够指定任意数量的隐藏层;能够指定模型的输入和输原创 2020-05-26 11:28:28 · 598 阅读 · 0 评论 -
4. Pytorch入门教程——创建一个基类来构建一个基本的神经网络
现在我们已经准备好了Dataloaders,之后要定义神经网络并训练它。为了定义一个神经网络,最好的方法是定义类来分离和抽象所有类型网络的通用功能,如训练循环,验证,评估,预测,设置不同的超参数等。我们还需要定义实现特定类型网络的类,例如专门用于迁移学习的类,或为全连接操作的类等等。记住这一点,我们将创建三个主要类:从Pytorch的核心类nn.Module派生的神经网络的基类,它是Pytorch中任何神经网络的基础;派生自我们创建的基类的一个类,实现迁移学习的功能;派生自我们创建的基类的一个类,原创 2020-05-26 11:24:50 · 1063 阅读 · 0 评论 -
3. Pytorch入门教程——数据集预处理,准备训练
在这个部分,将介绍以下内容:理解数据载入器的概念和Pytorch数据载入器API;将图片数据集分成训练,验证和测试集;创建Pytorch Dataloaders加载图片用于训练,验证和测试;使用Pytorch API来定义变换(Transforms)进行数据集预处理,更有效的进行训练;使用Pytorch API将所有图片转变成Pytorch Tensors;使用图片的平均值和标准差来归一化数据集。一、数据载入器(Data Loaders)1. Pytorch Dataloaders充当P原创 2020-05-26 11:20:55 · 12166 阅读 · 1 评论 -
2. Pytorch入门教程——创建Cifar10 Pytorch数据集
我们使用一个很经典的数据集Cifar10,而该数据集可以直接通过Pytorch内置函数获取到。一、导入所需的库import torch ## pytorchimport torchvision ## 迁移学习模型和许多其他视觉相关类from torch import nn ## Pytorch核心神经网络模型类from torch import optim ## 包含几个Pytorch优化器类import torch.nn.functional as F ## 包含几个Pytorch提供的实用函原创 2020-05-26 11:15:35 · 823 阅读 · 0 评论 -
1. Pytorch入门教程——总览
最近正式开始学习深度学习,而现在最流行的深度学习框架自然是PyTorch。PyTorch是Facebook的官方深度学习框架之一,相信使用过的人都会被其轻便和快速等特点深深吸引,因此这个博客系列介绍了如何快速入门PyTorch。学习一门新的语言或者框架最快速的方法自然是边看代码边看教程,于是我遍寻GitHub,终于找到了一个既简单又详细的PyTorch入门教程。该教程提供了完整的代码并添加了详细的注释,一步步循循善诱的引导读者快速入门PyTorch。但教程中有一些错误而且是全英文注释,因此我将此教程进行了原创 2020-05-26 12:53:34 · 622 阅读 · 1 评论