期望风险,经验风险和结构化风险,以及交叉验证

  1. 损失函数
  • 0-1损失函数

  • 平方损失函数

  • 绝对损失函数

  • 对数损失函数

损失函数的期望(风险函数或期望损失)

学习的目标是选择期望风险最小的模型。由于联合分布  是未知的,  不能直接计算。实际上,如果知道联合分布  ,可以直接从联合分布直接求出条件概率分布 ,也就不需要学习了。正因为不知道联合概率分布,所以才需要学习。

一方面根据期望风险最小学习模型要用到联合分布,另一方面联合分布又是未知的,所以监督学习就成为一个病态问题。

经验风险或经验损失(关于训练数据集的平均损失)

根据大数定理,当样本容量  趋于无穷时,经验风险  趋于期望风险  。

但是现实中训练样本数目有限,甚至很小,所以用经验风险估计期望风险并不理想,要对经验风险进行一定的矫正。监督问题就变成了经验风险或结构风险函数是最优化的目标函数。

2. 经验风险最小化和结构风险最小化(基本策略)

在假设空间、损失函数以及训练数据集确定的情况下,经验风险函数式就可以确定。

  • 经验风险最小化(ERM):经验风险最小的模型就是最优模型

当样本容量足够大时,效果较好。比如MLE,当模型是条件概率分布,损失函数是对数损失函数时,经验风险最小化就等价于极大似然估计。当样本容量很小时,容易产生“过拟合”现象。

  • 结构风险最小化(SRM):为了防止过拟合,等价于正则化。(regularizetion)

其中  为模型的复杂度,是定义在假设空间  上的泛函。模型  越复杂,复杂度就越大。结构风险小的模型往往对训练数据以及未知的测试数据都有较好地预测。比如贝叶斯估计中的最大后验概率估计MAP,当模型是条件概率分布、损失函数是对数损失函数、模型复杂度由模型的先验概率表示时,结构风险最小化就等价于最大后验概率估计。

3. 模型评估和模型选择(正则化和交叉验证)

统计学习的目的是使学到的模型不仅对一直数据而且对未知数据都能有很好地预测能力。

过拟合:学习时选择的模型所包含的参数过多,以致于出现这一模型对已知数据预测的很好,但对未知数据预测得很差的现象。

解决过拟合问题,应该如何处理?

  • 减少预测模型的特征,可以根据经验,也可以使用一些算法(PCA、LDA)
  • 正则化。正则化是结构风险最小化策率的实现

正则化一般形式: 

正则化符合奥卡姆剃刀原理。在所有可能选择的模型中,能够很好地解释一直数据并且十分简单才是最好的模型。从贝叶斯估计的角度来看,正则化对应于模型的先验概率,可以假设复杂的模型有较小的先验概率,简单的模型有较大的先验概率。

 

交叉验证(cross validation)

训练集(training set):训练模型

验证集(validation set):模型的选择

测试集(test set):学习方法的评估

  • 简单交叉验证: 70%训练集,30%测试集
  • S折交叉验证:随机地将已知数据分为S个互不相交的大小相同的子集;然后利用S-1个子集的数据训练模型,利用余下的子集测试模型
  • 留一交叉验证:每个子集包含一个样本的S折交叉验证,数据集较小时使用
  • 自助法(bootstrapping):给定包含m个样本的数据集  ,我们对它进行采样产生数据集  :每次随机从  中挑选一个样本,将其拷贝到  中,将该样本放回初始数据集中,下次采样仍可能被采到,重复m次后,可以得到包含m个样本的数据集  ,使用  做训练集,剩下的用做测试集。样本始终不被采到的概率  取极限得:  。自助法在数据集较小,难以有效划分训练/测试集时很有用,但是改变了初始数据集的分布,会引入估计偏差,所以数据量足够时,使用留出法和交叉验证法好一些

你可能感兴趣的:(ML,Interview)