关于机器学习中的经验风险、期望风险与结构风险
风险是在损失函数的基础上来说的。因此首先引出损失函数的概念。
损失函数是针对单个具体样本而言的。它表示的是模型的预测值与真实值之间的差距。
例如,输入样本特征向量为X,模型决策函数为f,那么模型的预测值可表示为f(X),真实值用Y表示。则损失函数可表示为L(Y,f(X))。
常用的损失函数有以下几种:
通过损失函数,我们只能知道模型决策函数f(X)对于某个具体样本的预测能力。
如果我们想知道模型对于整个训练集的预测能力。则可用经验风险来表示:
由上面的式子可以看出,所谓经验风险,实际上就是每个具体样本损失函数的累加平均值。
经验风险越小,说明模型对于训练数据的拟合程度就越好。
但是由此就会产生过拟合现象。
因为样本量永远都是有限的,以样本均值代替总体期望,就会陷入局部最优值。
由此,可以引出期望风险的概念。
期望风险,表示的是全局的概念。用以衡量模型对所有样本(包括已知或者未知的样本)的预测能力。
理想的模型决策函数应该是对所有的样本的损失函数最小,即期望风险最小。
但是在实际情况下,期望风险不能得到。
那么,经验风险会造成过拟合,期望风险又不可求。该怎么办呢?
结构风险由此产生,作为经验风险与期望风险的折中。
在经验风险函数后面加一个正则化项(惩罚项)便是结构风险了。如下式:
相比于经验风险,结构风险多了一个惩罚项,其中
是一个lamada是一个大于0的系数。J(f)表示的是是模型f的复杂度。