在深度学习中,学习率调度器(Learning Rate Scheduler)是一个重要的工具,它可以帮助我们在训练过程中调整学习率,从而优化模型的性能。
以下是一个简单的学习率调度器示例代码:
import torch.optim as optim
# 初始化模型和优化器
model = YourModel()
optimizer = optim.SGD(model.parameters(), lr=0.01)
# 定义学习率调度器
scheduler = optim.lr_scheduler.StepLR(optimizer, step_size=30, gamma=0.1)
# 训练模型
for epoch in range(num_epochs):
# 前向传播
output = model(input_data)
loss = criterion(output, target)
# 反向传播
optimizer.zero_grad()
loss.backward()
optimizer.step()
# 更新学习率
scheduler.step()
print(f'Epoch {epoch+1}/{num_epochs}, Loss: {loss.item()}, LR: {scheduler.get_last_lr()[0]}')
更多关于学习率调度器的信息,您可以参考深度学习优化器。
深度学习学习率调度器