pyTorch框架使用CNN进行手写数字识别

目录

1.导包

2.torchvision数据处理的方法 

3.下载加载手写数字的训练数据集 

4.下载加载手写数字的测试数据集  

5. 将训练数据与测试数据 转换成dataloader

6.转成迭代器取数据 

7.创建模型 

8. 把model拷到GPU上面去

9. 定义损失函数

10. 定义优化器

11. 定义训练过程

12.最终运行测试 


 

1.导包

import torch
import torch.nn as nn
import torch.nn.functional as F
import torch.optim as optim
import numpy as np
import matplotlib.pyplot as plt
torch.__version__
'2.4.1+cu121'
# 检查GPU是否可用
torch.cuda.is_available()
True
device = torch.device('cuda:0' if torch.cuda.is_available() else 'cpu')

device
device(type='cuda', index=0)

# pytorch中使用GPU进行训练的主要流程注意点:
#1. 把模型转移到GPU上. 
#2. 将每一批次的训练数据转移到GPU上.  

# torchvision 内置了常用的数据集和常见的模型. 
#使用pyTorch框架 整迁移学习时,可以从torchvision中加载出来 

2.torchvision数据处理的方法 

import torchvision

from torchvision import datasets, transforms

 # transforms.ToTensor  的作用如下:
# 1. 把数据转化为tensor
# 2. 数据的值转化为0到1之间. 
# 3. 会把channel放到第一个维度上.

# transforms用来做数据增强, 数据预处理等功能的. 
#Compose()可以将很多数据处理的方法组合起来, 用列表来组合
transformation = transforms.Compose([transforms.ToTensor(),])

3.下载加载手写数字的训练数据集 

#下载获取手写数字数据集MNIST  ,获取其中的训练数据集
#train=True表示获取训练数据集
train_ds = datasets.MNIST('./', train=True, transform=transformation, download=True)

datasets
<module 'torchvision.datasets' from 'D:\\anaconda3\\lib\\site-packages\\torchvision\\datasets\\__init__.py'>

4.下载加载手写数字的测试数据集  

# 下载获取 手写数字的 测试数据集
#train=False表示获取测试数据集
test_ds = datas
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值