一起对话式学习-机器学习03——模型评估与模型选择
【一】前言
这一部分其实已在第二节中介绍到,这节起到回顾归纳的作用。
【二】训练误差与测试误差
首先,在分类问题中,有误差率和准确率两个概念,二者和为1。
误差率:分类错误的样本数占总数的比例。
其次,在回归问题中,则有训练误差和测试误差两个概念,顾名思义不再多说,可详见02。而在未知新样本上也就是进行预测时产生的误差称为泛化误差,这是我们要追求使之最小化的,即预测最准确的。
【三】过拟合和模型选择
已在02详细介绍过概念,指出几点:欠拟合较好克服,增加训练轮数,增加模型复杂性就好,而过拟合往往是机器学习面临的关键障碍且无法避免只能尽量缓解。
与02所述一致,以测试误差可以作为泛化误差进行求解,但如果数据较少可以进行数据重利用:留出法、交叉验证法与自助法,之后会详细介绍。
接下来举个拟合多项式函数的例子方便理解:
如图M代表目标函数的项数,下面有公式辅助理解,四张图不变的那条曲线可以看作标准答案模型,当然我们在实际建模时几乎不可能做到完美,那看看第几个最好?不难看出是第三个,第四个明显过拟合,第一二个欠拟合。
针对这个问题,实际求解的过程是怎样的?首先确定模型项数(基本形式)后,列出损失函数使用测试数据利用最小二乘法(因为设定未知参数幂次为1,所以是线性问题用最小二乘法)得出一组未知参数解,最后计算一下其训练误差。就这样对于每个项数/复杂度的模型皆如此得出下图:
肯定要选二者都较低的复杂度,如何选择呢?其实02已经给出标准答案,可以用正则化与交叉验证。