趋近智
state_dict在学习了如何通过与 Keras 对比来定义 PyTorch 中的模型架构之后,我们现在转向这些模型的训练和评估过程。如果您习惯使用 TensorFlow Keras,您可能已经使用过 model.compile() 来指定优化器和损失函数,然后使用 model.fit() 来管理训练迭代。PyTorch 采用一种更清晰的方法,您需要从基础组成部分构建训练循环。这种方式提供了更大的灵活性,并让您对整个训练过程有更清晰的认识。
本章将指导您在 PyTorch 中构建这些自定义的训练和评估循环。我们将考察损失函数(来自 torch.nn 或 torch.nn.functional)和优化算法(在 torch.optim 包中)是如何实现和使用的,并将它们与 TensorFlow Keras 的对应部分进行比较。您将学习标准的 PyTorch 训练流程:执行前向传播以获取预测,计算损失,通过 loss.backward() 计算梯度,以及使用 optimizer.step() 更新模型参数。此外,我们还将讨论如何组织模型评估,有效地追踪性能指标,并引入类似于 Keras Callbacks 的训练控制机制。
4.1 训练模式:TensorFlow 的 fit 方法与 PyTorch 训练循环
4.2 TensorFlow 和 PyTorch 中的损失函数
4.3 优化算法:TensorFlow 和 PyTorch 优化器
4.4 PyTorch 中的梯度计算与权重更新
4.5 性能指标:Keras 指标与 PyTorch 对应的实现
4.6 PyTorch 中的模型评估循环
4.7 训练控制:Keras 回调与 PyTorch 自定义逻辑
4.8 动手实践:实现一个完整的训练和评估循环
© 2026 ApX Machine Learning用心打造