softmax多分类问题
python
import torch
from torchvision import datasets
from torch.utils.data import DataLoader
import torch.nn.functional as F# 激活函数
import torch.optim as optim
# optim.SGD (随机梯度下降):最基础的优化算法,通过沿着梯度的反方向更新参数。
# optim.Adam (自适应矩估计):一种常用的自适应优化算法,结合了动量和 RMSprop 的优点。
# optim.RMSprop (均方根传播):一种自适应优化算法,可以根据梯度的历史信息调整学习率。
# optim.Adagrad (自适应梯度算法):另一种自适应优化算法,可以为每个参数分配不同的学习率。
softmax回归在pytorch里面已经封装了激活,所以最后一层不做激活
当你需要预测的时候可以使用with使pytorch不产生计算图
python
model = Net()# softmax回归
def test():
correct = 0
total = 0
with torch.no_grad():
for data in test_loader:
images, labels = data
outputs = model(images)
_, predicted = torch.max(outputs.data, dim=1) # dim = 1 列是第0个维度,行是第1个维度
total += labels.size(0)
correct += (predicted == labels).sum().item() # 张量之间的比较运算