本节主要介绍了机器学习(ML)的优化,围绕Loss展开:
训练集Loss较大
model bias 模型偏差
model bias主要是由于模型本身过于简单导致的。简单的模型对应的假设空间也较小,目标的最优函数可能不在假设空间里,因此永远无法搜索到最优函数。 此时通常需要重新设计model,给model更大的弹性。 常用的方法有两种: 1、增加输入的特征(feature)数量; 2、用deep learning的方法,增加模型的核、层。
optimization issue 优化问题
此时,搜索的最优解存在于假设空间中,只是模型的优化算法并没有将其找到。这种情况应该调整优化算法。
model bias v.s. optimization issue
当训练模型找不到training Loss较低的function时,通常会怀疑发生了上述两种情况。如何判断具体是发生了哪种情况呢? 根据两种情况各自的特点,可以适当增加模型的层数,改用深度学习的方法,如果Loss改进较大,即可判断是optimization issue。 实验时,建议先使用简单的、非深度学习的方法,这样可以较容易进行调优。如果此时的训练Loss较大,增加模型的层数,如果增加层数的模型仍旧没有获得更低的Loss,即可判断为是挑优问题。
训练集Loss较小,测试集Loss较大
Overfitting 过拟合
训练出的曲线过度符合训练集,没有学会数据的一般性质。 解决过拟合问题的方法一般有: 1、通过收集数据,增加模型的训练材料; 2、利用现有数据集扩充训练数据; 3、给模型增加一些限制,使其不要拥有过分的弹性,具体方法如下图所示。
mismatch
这种情况往往是由于训练材料和测试材料的差异造成的,不能通过扩充训练数据解决,影响结果的正确性。(后续应该会讲如何处理这种情况)
训练集Loss较小,测试集Loss较小
训练完成?
|