#coding=utf-8
import torch
from torch import nn
#导入PyTorch库中的初始化函数的语句
from torch.nn import init
import numpy as np
from d2l import torch as d2l
num_inputs=784
num_outputs=10
num_hiddens=256
#模型的定义
#用于创建一个顺序模型,顺序模型是一个包含多个线性层(或任何其他类型的层)的模型,这些层按顺序堆叠在一起
net = nn.Sequential(
torch.nn.Flatten(),
nn.Linear(num_inputs,num_hiddens),
nn.ReLU(),
nn.Linear(num_hiddens,num_outputs)
)
for params in net.parameters():
init.normal_(params,mean=0,std=0.01)
#模型训练
batch_size=256
train_iter,test_iter=d2l.load_data_fashion_mnist(batch_size)
loss=torch.nn.CrossEntropyLoss()
optimizer=torch.optim.SGD(net.parameters(),lr=0.1)
num_epochs=10
d2l.train_ch3(net,train_iter,test_iter,loss,num_epochs,optimizer)
d2l.plt.show()
多层感知机的简单实现
最新推荐文章于 2025-02-21 14:00:53 发布