Diagnosing Bias vs. Variance
讲完模型选择,我们接下来讲讲如何去诊断我们算法出现的问题到底是一个high bias(underfitting)的问题还是一个high variance(overfitting)的问题又或者同时两个问题同时存在,因为几乎所有的导致test error不理想的原因都来自于这三种情况中的一种。
我们还是从我们最熟悉的一张图引入(线性拟合):
左图欠拟合,右图过拟合,中间刚刚好。
那么现在我们换一张图来看看这三种情况的呈现形式
其实线性回归中,次方代表的就是参数个数,次方低表示参数少,次方高代表参数多。那么上图就是参数个数-error曲线图。
- 欠拟合
J t r a i n ( Θ ) ≈ J c v ( Θ ) J_{train}(\Theta)\approx J_{cv}(\Theta) Jtrain(Θ)≈Jcv(Θ),并且它们都很大,即验证集和训练集的error都很高(这里cv代表的是验证集) - 过拟合
J t r a i n ( Θ ) J_{train}(\Theta) Jtrain(Θ) 很小,同时 J c v ( Θ ) J_{cv}(\Theta) Jcv