3-模型选择的详细过程-机器学习

    已经清楚了模型选择的理论,接下来探讨实际中,如何选择模型?
任务: 给定假设空间,损失函数,训练数据集,判断给出的各个模型,哪个更优秀

场景一:训练数据集容量足够大。
方案一:使用经验风险最小化ERM策略
推理过程:
大前提:当训练数据集接近总体数据集时,可以认为经验损失是接近期望损失的。
小前提:期望损失越小,模型越优秀。
结论:当训练数据集接近总体数据集时,经验损失越小,模型越优秀。【经验风险最小化(empirical risk minimization,ERM)
           训练数据集接近总体数据集 ≈ 训练数据集的容量足够大

场景二:训练数据集容量较小。
方案一:在ERM基础上加入表示模型复杂度的正则化项regularizer
推理过程:
    这个时候,便不能再使用场景一的ERM策略了。因为场景一的大前提已经不成立,也就是当训练数据集较小时,经验损失已经不能代表期望损失了。因为当训练数据集较小时,使用任何一个模型,都容易产生过拟合问题,导致经验损失很小,对期望损失的代表性变差。
    其逻辑链是这样的:模型越复杂==>过拟合越严重==>得到的经验损失越小==>经验损失越不能代表期望损失==>对由于模型复杂度带来的偏差进行纠正==>加上表示模型复杂度的正则化项(regularizer)/罚项(penalty term),模型越复杂,正则化项越大。
    正则化项是一个模型复杂程度的增函数。
3-模型选择的详细过程-机器学习
3-模型选择的详细过程-机器学习

3-模型选择的详细过程-机器学习

方案二:重复使用给定的样本数据,做多次学习,然后取平均效果得到最终的模型。
方法 内容 优点 缺点
s折交叉验证法(s-fold cross validation) 将样本随机均为K等份,随机选择1份做验证集,剩余K-1份做测试集。这样可以进行K次训练/验证,得到K个模型,最后取均值。    
留一法(leave-one-out,简称LOO) 当K=样本容量时,s折交叉验证法退化为留一法。 其训练集近似初始数据集,被认为评估结果较为准确 样本量大时,开销大
自助法(bootstrapping) 对给定样本进行重复抽样,得到一个容量大小一样的样本,作为训练集。
据估计,初始样本中约有30%数据不在新样本中,这部分作为验证集。
多次进行该过程。
有利于集成学习。 重复抽样会让新样本的分布不同于初始样本,引入偏差

参考:李航《统计学习方法》