模型训练的技巧

1、 将损失和循环次数画出来,有利于debug
2、调超参的时候,可以先设置较大步数,然后找一个表现比较好的小区间,这样一步步进行,区间越来越窄,最后选出表现最好的参数,
而且我们一般使用随机数来从区间中选取超参数来验证,而不是按确定的步长去参数。
3、训练的时候可以先训练一小部分数据来验证模型有没有异常,确认你可以对这小部分数据过拟合即对这小部分数据的预测达到100%准确,这样的话就验证了我们的反向传播算法等等是正确的,然后就可以开始训练大量数据了;
4、权值增量和当前权值的比值不能太大或太小,太大的话考虑降低学习率,太小的话考虑增加学习率,一般比值为1e-3左右比较合理
5、从数据集中抽出一部分正向传播看loss,然后反向传播得到梯度来微调权值矩阵,这样反复抽取部分数据(进行有放回的操作收敛速度更快)进行微调直到loss收敛为止
6、了解错误的一个策略是,绘制训练过程中的损失函数,以及训练及验证数据集的精确度
另一个策略是可视化第一层神经网络中学习到的权重
7、如果训练数据集和验证数据集之间的准确率几乎一样小,那么我们设计的神经网络容量太小了,但是如果我们的神经网络容量过大的话,会出现过拟合问题,训练数据集准确率远大于验证数据及测试数据集
8、对图片抽取出合适的特征,再进行训练,会比直接根据图片像素进行训练得到的效果要好
9,如果训练了一定epoch,loss几乎没变,那就是初始学习率设置太高了 

猜你喜欢

转载自blog.csdn.net/u011070767/article/details/80574874