1. 过拟合的判断
过拟合是模型 “记住” 训练数据但泛化能力差的现象,核心判断方式是同步打印训练集和测试集的指标:
正常情况:训练集、测试集的损失(Loss)同步下降,准确率(或其他指标)同步上升;
过拟合情况:训练集损失持续下降、准确率持续上升,但测试集损失停止下降甚至上升、准确率停止提升。
2. 模型的保存和加载
PyTorch 中模型保存 / 加载有 3 种常见方式:
a. 仅保存权重(最常用)
保存:仅保存模型的参数(state_dict),文件小、灵活;
加载:需先初始化模型结构,再加载权重;
b. 保存权重和模型
保存:直接保存整个模型对象(包含结构 + 权重)
加载:直接加载模型
c. 保存全部信息(checkpoint)
保存:包含模型权重、优化器状态、训练轮数、损失等训练状态,支持 “断点续训”
加载:恢复模型 + 优化器状态,继续训练
3. 早停策略
早停是防止过拟合的常用方法:当测试集损失连续 N 轮不再下降时,提前停止训练。
核心逻辑:
记录当前最优测试集损失;
每轮训练后对比新的测试集损失;
若连续patience轮损失未下降,则停止训练。
作业:
@浙大疏锦行