损失函数
对于输入X,模型的输出值为f(X),实际值为Y,可以定义如下损失函数
0-1损失函数
L(Y,f(X))={1,Y=f(X)0,Y=f(X)
平方损失函数
L(Y,f(X))=(Y−f(X))2
绝对损失函数
L(Y,f(X))=∣Y−f(X)∣
对数损失函数
L(Y,P(Y∣X))=−logP(Y∣X)
假设模型的输入和输出为遵循联合分布P(X,Y)的随机变量,可以得到损失函数的期望(期望风险,expected risk)为
Rexp(f)=EP[L(Y,f(X))]=∫X×YL(y,f(x))P(x,y)dxdy
实际问题中,由于联合分布P(X,Y)未知,一般通过训练样本取近似总体的联合分布P(X,Y),不妨设训练样本为
T=(x1,y1),(x2,y2),…,(xN,yN)
定义经验风险(empircal risk)Remp为
Remp=N1i=1∑NL(yi,f(xi))
期望风险和经验风险的关系如下
RempN→∞Rexp
风险最小化
当样本容量足够大时,可以使用Remp最小化策略进行建模(ERM),比如极大似然估计,但是当样本容量较小时,该策略会产生过拟合.
结构风险最小化
SRM是为了防止过拟合而提出的策略,在ERM加上了表示模型复杂程度的正则化项
Rsrm(f)=N1i=1∑NL(yi,f(xi))+λJ(f)
SRM等价于最大后验概率估计,如贝叶斯估计中的最大后验概率估计(MAP).
训练误差与测试误差
设学习到的模型为f^(X),训练误差是模型Y=f^(X)关于训练数据集的平均损失
Remp(f^)=N1i=1∑NL(yi,f^(xi))
测试误差是关于测试数据集的平均损失
etest=N′1i=1∑N′L(yi,f^(xi))
过拟合与模型选择
在确定模型复杂度的情况下,根据ERM策略,求解模型参数
设M次多项式为
fM(x,w)=w0+w1x+⋯+wMxM=j=0∑Mwjxj
优化目标函数为
L(w)=21i=1∑N(fM(x,w)−yi)2
模型复杂度与误差之间的关系如下
可以发现,当模型的复杂度过大时,会发生过拟合现象,为了选择出复杂度合适的模型,需要进行正则化与交叉验证.