PyTorch 学习机制:自动求导、优化器与过拟合处理
1. PyTorch 自动求导与训练验证
在 PyTorch 中,自动求导(autograd)是一个强大的工具,它能帮助我们自动计算梯度,避免手动计算导数的繁琐。以下是一个简单的训练循环示例,展示了自动求导的使用:
# In[10]:
training_loop(
n_epochs = 5000,
learning_rate = 1e-2,
params = torch.tensor([1.0, 0.0], requires_grad=True),
t_u = t_un,
t_c = t_c
)
运行结果如下:
Epoch 500, Loss 7.860116
Epoch 1000, Loss 3.828538
Epoch 1500, Loss 3.092191
Epoch 2000, Loss 2.957697
Epoch 2500, Loss 2.933134
Epoch 3000, Loss 2.928648
Epoch 3500, Loss 2.927830
Epoch 4000, Loss 2.927679
Epoch 4500, Loss 2.927652
Epoch 5000, Loss 2.927647
tensor([5.3671, -17.3012], requires_grad=True)
这表明我们不再需要手动计算导数,自动求导能高效地完成这一任务。
超级会员免费看
订阅专栏 解锁全文
4726

被折叠的 条评论
为什么被折叠?



