Pytorch打怪路(一)pytorch进行CIFAR-10分类(4)训练
我的系列博文:
Pytorch打怪路(一)pytorch进行CIFAR-10分类(1)CIFAR-10数据加载和处理
Pytorch打怪路(一)pytorch进行CIFAR-10分类(2)定义卷积神经网络
Pytorch打怪路(一)pytorch进行CIFAR-10分类(3)定义损失函数和优化器
Pytorch打怪路(一)pytorch进行CIFAR-10分类(4)训练(本文)
Pytorch打怪路(一)pytorch进行CIFAR-10分类(5)测试
1、简述
2、代码
for epoch in range(2): # loop over the dataset multiple times 指定训练一共要循环几个epochrunning_loss = 0.0 #定义一个变量方便我们对loss进行输出for i, data in enumerate(trainloader, 0): # 这里我们遇到了第一步中出现的trailoader,代码传入数据# enumerate是python的内置函数,既获得索引也获得数据,详见下文# get the inputsinputs, labels = data # data是从enumerate返回的data,包含数据和标签信息,分别赋值给inputs和labels# wrap them in Variableinputs, labels = Variable(inputs), Variable(labels) # 将数据转换成Variable,第二步里面我们已经引入这个模块# 所以这段程序里面就直接使用了,下文会分析# zero the parameter gradientsoptimizer.zero_grad() # 要把梯度重新归零,因为反向传播过程中梯度会累加上一次循环的梯度# forward + backward + optimize outputs = net(inputs) # 把数据输进网络net,这个net()在第二步的代码最后一行我们已经定义了loss = criterion(outputs, labels) # 计算损失值,criterion我们在第三步里面定义了loss.backward() # loss进行反向传播,下文详解optimizer.step() # 当执行反向传播之后,把优化器的参数进行更新,以便进行下一轮# print statistics # 这几行代码不是必须的,为了打印出loss方便我们看而已,不影响训练过程running_loss += loss.data[0] # 从下面一行代码可以看出它是每循环0-1999共两千次才打印一次if i % 2000 == 1999: # print every 2000 mini-batches 所以每个2000次之类先用running_loss进行累加print('[%d, %5d] loss: %.3f' %(epoch + 1, i + 1, running_loss / 2000)) # 然后再除以2000,就得到这两千次的平均损失值running_loss = 0.0 # 这一个2000次结束后,就把running_loss归零,下一个2000次继续使用print('Finished Training')
3、分析
Pytorch打怪路(一)pytorch进行CIFAR-10分类(4)训练相关推荐
- Pytorch打怪路(三)Pytorch创建自己的数据集2
前面一篇写创建数据集的博文--- Pytorch创建自己的数据集1 是介绍的应用于图像分类任务的数据集,即输入为一个图像和它的类别数字标签,本篇介绍输入的标签label亦为图像的数据集,并包含一些常用 ...
- gitlab 迁移、升级打怪之路:8.8.5-- 8.10.8 -- 8.17.8 -- 9.5.9 -- 10.1.4 -- 10.2.5
gitlab 迁移.升级打怪之路:8.8.5--> 8.10.8 --> 8.17.8 --> 9.5.9 --> 10.1.4 --> 10.2.5 gitlab 数据 ...
- GPU信息查看以及确认Pytorch使用了GPU计算模块进行深度学习的训练
GPU信息查看以及确认Pytorch使用了GPU计算模块进行深度学习的训练 目录 GPU信息查看以及确认Pytorch使用了GPU计算模块进行深度学习的训练 GPU基础信息查看 Pytorch是否使用 ...
- pytorch 转换onnx_新版PyTorch发布!新增TorchScript API,扩展ONNX导出
铜灵 发自 凹非寺 量子位 出品 | 公众号 QbitAI 今天,PyTorch 1.2.0版正式发布. 官方表示,和1.1版本相比,新版本在使用体验上又往前迈进了一大步.主要新增/改动的功能包括: ...
- PyTorch框架学习八——PyTorch数据读取机制(简述)
PyTorch框架学习八--PyTorch数据读取机制(简述) 一.数据 二.DataLoader与Dataset 1.torch.utils.data.DataLoader 2.torch.util ...
- [PyTorch] 基于Python和PyTorch的MNIST的手写数字数据集的分类
文章目录 讲解 MNIST的介绍 须导入的函数库 检查 pytorch 的版本 定义超参数 下载 MNIST的数据集 定义网络 网络实例化 定义训练函数 定义测试函数 主函数 全部源代码 2020.0 ...
- [PyTorch] 基于Python和PyTorch的cifar-10分类
cifar-10数据集介绍 CIFAR-10数据集由10个类的60000个32x32彩色图像组成,每个类有6000个图像.有50000个训练图像和10000个测试图像. 数据集分为5个训练批次和1个测 ...
- 动物数据集+动物分类识别训练代码(Pytorch)
动物数据集+动物分类识别训练代码(Pytorch) 目录 动物数据集+动物分类识别训练代码(Pytorch) 1. 前言 2. Animals-Dataset动物数据集说明 (1)Animals90动 ...
- Pytorch实战:基于pytorch预测文章阅读量
介绍 这里用简单的网络来预测CSDN的阅读量. 我希望训练后的模型,给它前7天的阅读量,让它预测出第八天的阅读量. 阅读量的数据(很少)采用CSDN提供的excel文件: 这里采用xrld工具包来读取 ...
最新文章
- MEMS传感器科普文
- Webix 1.5发布:一个强大的JavaScript UI组件库
- php如何生成html,php生成html文件方法总结
- python提供的默认的构造方法是什么_Python面试常见问题,__init__是构造函数吗?...
- 09945 oracle 解决方法_ORACLE rman与RMAN-00054ORA-09945
- python在运维自动化的前景_现在学运维自动化python和大数据?
- 用toad实现oracle数据迁移,Oracle 使用TOAD实现导入导出Excel数据
- 复制Linux虚拟机后的网卡问题解决
- left join,right join,inner join,full join之间的区别
- java 注释 代码,如何在Java中注释代码块
- java在dos命令_JAVA中如何执行DOS命令
- python 批量爬取网页pdf_python爬取网页内容转换为PDF文件
- ST的硬盘固件门给数据恢复带来的巨大收益
- 【洛谷刷题笔记】P4093 [HEOI2016/TJOI2016] 序列
- 制作u盘winpe启动盘_u盘启动盘制作工具教程
- 指数型组织到底是什么
- 基于天牛须搜索算法的函数寻优算法
- 黄小宁罪大恶极!!!!!!!!!!黄小宁罪大恶极!!!!!!!!!!
- 自定义 Oh My Zsh 主题 cchi.zsh-theme
- win10 关闭自动更新