【无标题】torch.optim.SGD参数详解

torch.optim.SGD是PyTorch中实现的Stochastic Gradient Descent(SGD)优化器,用于更新神经网络中的参数,以最小化损失函数,从而提高模型的精度。它的一些重要参数如下:

- lr:学习率(learning rate),控制每次参数更新的步长。默认值为0.001。
- momentum:动量(momentum),加速SGD在相关方向上前进,抑制震荡。常常取值为0.9。若设为0,则为经典的SGD算法。
- dampening:阻尼(dampening),用于防止动量的发散。默认值为0。
- weight_decay:权重衰减(weight decay),也称权重衰减(weight regularization),用于防止过拟合。默认值为0。
- nesterov:采用Nesterov加速梯度法(Nesterov accelerated gradient,NAG)。默认值为False。
下面是一个例子,展示如何使用torch.optim.SGD:
import torch
import torch.nn as nn
import torch.optim as optim

# 定义模型和损失函数
model = nn.Linear(10, 1)
loss_fn = nn.MSELoss()

# 定义优化器
optimizer = optim.SGD(model.parameters(), lr=0.01, momentum=0.9)

# 定义一些训练数据
inputs = torch.randn(100, 10)

猜你喜欢

转载自blog.csdn.net/weixin_40895135/article/details/130458778