过拟合指模型把训练数据背下来了、遇到新数据就失灵;正则化是一套给它加约束、防止死记硬背的办法。
机器学习的终极目标不是把练习题做满,而是考试也行。过拟合就是「练习题满分、考试不及格」:模型把训练数据里的噪声和巧合也当成规律记住了。
看两组数字的差距:训练误差很低,而留出没见过的数据上误差明显更高,而且越训练差距越大。这时模型复杂度超过了数据所能支撑的程度。
思路都是给「死记硬背」增加成本,逼模型去找更普适的规律。 - L2 正则:在损失里加上参数平方和的惩罚,抑制个别权重变得特别大,让模型输出更平滑、更温和。 - L1 正则:加参数绝对值之和,倾向把一部分权重压到零,顺带起到筛选特征的作用。 - Dropout:训练时随机「关掉」一部分神经元,逼网络不要依赖某个固定搭配,学出更冗余、更稳的表达。 - 早停:在留出数据上的表现开始变差时就停止训练,别硬练到底。 - 数据增强:把训练样本做合理变换(图像翻转裁剪、文本改写替换)来变相扩数据,通常是最划算的一招。 - 控制容量:减小模型、减少参数、降低有效复杂度,从源头限制记忆能力。
一个在实验室刷出漂亮分数的模型,如果在真实场景里不能用,就没有价值。正则化和「训练集 / 验证集 / 测试集」的划分一起,构成了模型可靠性的基本保障:模型好不好,要拿它没见过的数据说话。