在模型训练前,为了防止出现训练了两天两夜才发现这个模型根本不能用的逆天问题,我们要在训练前对模型进行一个基本的验证,即Sanity Check。
在dataloader定义后
if debug: # 只用第一个 batch 数据
train_loader = [next(iter(train_loader))]
test_loader = [next(iter(test_loader))]
然后在训练前
if debug: # 一个 batch 只有两个样本
batch_size = 2
epoch = 100
如果这种情况下loss都不降低,模型都不过拟合的话,那么代码一定会有问题,需要调试修改。