优化是深度学习中至关重要的一环,它关系到模型的训练效率和最终性能。本教程将带你了解 PyTorch 中常用的优化方法。
常用优化器
PyTorch 提供了多种优化器,以下是一些常用的优化器:
- SGD (Stochastic Gradient Descent): 随机梯度下降,是最基础的优化器之一。
- Adam: 一种自适应学习率的优化器,广泛应用于深度学习模型。
- RMSprop: 一种基于均方误差的优化器,常用于语言模型。
代码示例
以下是一个使用 Adam 优化器的简单示例:
import torch
import torch.nn as nn
import torch.optim as optim
# 定义模型
model = nn.Linear(10, 1)
# 定义损失函数
criterion = nn.MSELoss()
# 定义优化器
optimizer = optim.Adam(model.parameters(), lr=0.001)
# 训练模型
for epoch in range(100):
optimizer.zero_grad()
output = model(torch.randn(64, 10))
loss = criterion(output, torch.randn(64, 1))
loss.backward()
optimizer.step()
扩展阅读
想要了解更多关于 PyTorch 优化器的信息,可以阅读 PyTorch 官方文档。