在深度学习中,学习率调度器(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]}')

更多关于学习率调度器的信息,您可以参考深度学习优化器

深度学习学习率调度器