SoftMax指北

​ softmax函数,又称归一化指数函数。是将多分类的结果用概率的形式表示出来,而各种预测结果概率和为1,下图为SoftMax的计算方法。

​ e的zi次方保证了结果非负,除以总和保证了总和为1,这样就可以得出近似的概率。


代码示例

​ 这边选用Fashion-Mnist作为示例.

第一步下载数据集

1
2
3
4
train_data = torchvision.datasets.FashionMNIST("./data/mnist",train=True,download=True)
train_loader = torch.utils.data.DataLoader(train_data,batch_size = 8, shuffle = True)
val_data = torchvision.datasets.FashionMNIST("./data/mnist",train=False,download=True)
val_loader = torch.utils.data.DataLoader(val_data,batch_size = 8, shuffle = False)

第二步设置各种函数

简单设置了一个线性层,输入维度784,输出维度10

损失函数使用交叉熵

优化器用随机梯度下降法

1
2
3
4
net = nn.Sequential(nn.Linear(784,10))
net.to("cuda:0")
loss = nn.CrossEntropyLoss()
optimizer = torch.optim.SGD(net.parameters(),lr = 0.1)