模式识别(一)多层感知器识别MNIST数据集

这里用到torch模块,可以在线下载数据集。识别十个数字。
前几次迭代期结果已经达到95%以上的准确率,最终结果在96%左右稳定,过拟合和欠拟合风险较小。CPU训练速度有些慢。

import torch.nn as nn
import torch
import torchvision
from torch.utils.data import DataLoader
import time
 
print("start")
EPOCH = 50  # 总的训练次数
BATCH_SIZE = 20  # 批次的大小
LR = 0.03  # 学习率(交叉熵损失函数不需要太大的学习率)
DOWNLOAD_MNIST = False  # 运行代码的时候是否下载数据集(需要下载数据集改为True)

cuda_available = torch.cuda.is_available()  # 获取GPU是否可用,可用的话就用GPU进行训练和测试
# #对于这样的网络,可能cpu更快一些
cuda_available = False  # 即使gpu可用,也可以执行这一句,测试训练在cpu上的训练速度
# 设置一个转换的集合,先把数据转换到tensor,再归一化为均值.5,标准差.5的正态分布
trans = torchvision.transforms.Compose(
    [
        torchvision.transforms.ToTensor(),  # ToTensor方法把[0,255]变成[0,1]
        torchvision.transforms.Normalize([0.5], [0.5])  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值