线性回归
nn库的神经网络构建函数:
优化器函数:
1 | trainer = torch.optim.SGD(net.parameters(), lr=0.03) |
SGD为一个优化器函数,做的是均值损失,数学公式如下:
$\eta$是学习率,$B$是样本个数.
torch.optim.SGD的指定优化的参数是通过net.parameters()从设置的模型中获取.
神经网络搭建函数:
1 | net = nn.Sequential(nn.Linear(2, 1)) |
Sequential内部可以根据自己需要放入任意层数的神经网络曾.
神经网络层函数:
1 | nn.Linear(2, 1) |
2为输入的元素个数,1为输出的元素个数,linear为全连接层.
数据加载函数:
1 | data.DataLoader(dataset, batch_szie, shuffle=True) |
softmax计算公式:
softmax使用的损失函数:交叉熵损失函数:
对于任何标签$\mathbf{y}$和模型预测$\hat{\mathbf{y}}$,损失函数为:
进一步推导得到:
数据集读取函数和部分注意事项:
transforms.ToTensor()
- transforms.ToTensor() 将numpy的ndarray或PIL.Image读的图片转换成形状为(C,H, W)的Tensor格式,且/255归一化到[0,1.0]之间
- 通道的具体顺序与cv2读的还是PIL.Image读的图片有关系:cv2:(B,G,R);PIL.Image:(R, G, B)
torchvision.datasets.FashionMNIST
具体使用方法查看该连接 「学习笔记」torchvision.datasets.MNIST 参数解读/中文使用手册_江南蜡笔小新的博客-CSDN博客_torchvision.datasets.mnist](https://blog.csdn.net/ftimes/article/details/105202039?ops_request_misc=%7B%22request%5Fid%22%3A%22164803883416780357269449%22%2C%22scm%22%3A%2220140713.130102334..%22%7D&request_id=164803883416780357269449&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~baidu_landing_v2~default-4-105202039.142^v3^pc_search_result_control_group,143^v4^control&utm_term=torchvision.datasets.FashionMNIST&spm=1018.2226.3001.4187))