MLP实现mnist手写数字识别
1.mnis数据集
2.one-hot编码
3.多层感知机(MLP)
多层感知机在单层神经网络的基础上引入了一到多个隐藏层(hidden layer)。隐藏层位于输入层和输出层之间。图展示了一个多层感知机的神经网络图。
我们先来看一种含单隐藏层的多层感知机的设计。其输出的计算为
4.softmax函数
5.MLP实现mnists手写数字识别
import torch
import torch.nn as nn
import torchvision
import torchvision.transforms as transforms
# 设备配置
device = torch.device('cuda:0' if torch.cuda.is_available() else 'cpu')
# Net Hyper-parameters
input_size = 784
hidden_size=200
num_classes = 10
num_epochs = 5
batch_size = 100
learning_rate = 0.001
# MNIST dataset (images and labels)
train_dataset = torchvision.datasets.MNIST(root='../../data',
train=True,
transform=transforms.ToTensor(),
download=True)
test_dataset = torchvision