机器学习中的泛化误差

方差-偏差困境,一般来说偏差和方差冲突称为方差-偏差困境。在机器学习中,用来衡量模型在未知数据上的准确率的指标,叫做泛化误差(Generalization error)。一个集成模型( f f f)在未知数据集( D D D)上的泛化误差 E ( f ; D ) E(f;D) E(f;D),由方差( v a r var var),偏差( b i a s bias bias)和噪声( ε \varepsilon ε)共同决定。其中方差是模型的稳定性决定,偏差是训练集上的拟合程度决定,噪音是不可控的,泛化误差越小,模型就越理想。
E ( f ; D ) = b i a s 2 + v a r + ε 2 (1) E(f;D)=bias^2+var+\varepsilon^2 \tag{1} E(f;D)=bias2+var+ε2(1)
对于测试样本 x x x,令 y D y_D yD x x x在数据集中的标记(可能存在噪声导致标记值和真实值不同), y y y x x x的真实值, f ( x ; D ) f(x;D) f(x;D)在训练集 D D D上学得模型 f f f x x x上的预测值,以回归为例子:

预测值的期望 y ˉ ( x ) \bar{y}(x) yˉ(x)为:
y ˉ ( x ) = E ( f ( x ; D ) ) (2) \bar{y}(x)=E(f(x;D)) \tag{2} yˉ(x)=E(f(x;D))(2)
y ˉ ( x ) \bar{y}(x) yˉ(x)是所有预测值的平均值。

方差( v a r var var)的计算为:
v a r ( x ) = E [ ( f ( x ; D ) − y ˉ ( x ) ) 2 ] (3) var(x)=E[(f(x;D)-\bar{y}(x))^2] \tag{3} var(x)=E[(f(x;D)yˉ(x))2](3)
方差表示在某测试数据集上的方差,都是测试数据集上的预测值与其平均值的关系,与真实值没有关系。

噪声 ( ε ) (\varepsilon) (ε)的计算:
ε 2 = E [ ( y D − y ) 2 ] (4) \varepsilon^2=E[(y_D-y)^2] \tag{4} ε2=E[(yDy)2](4)
标记值与真实值差平方的期望,一般忽略噪声值。

偏差 ( b i a s ) (bias) (bias)的计算:
b i a s 2 ( x ) = ( y ˉ ( x ) − y ) 2 (5) bias^2(x)=(\bar{y}(x)-y)^2 \tag{5} bias2(x)=(yˉ(x)y)2(5)
偏差表示预测的期望值与真实值的差别,一般考虑偏差最小的

偏差度量了学习算法的预测值期望与真实结果的偏离程度,刻画了算法本身对数据的拟合能力也就是训练数据的样本与训练出来的模型的匹配程度;方差度量了训练集的变化导致学习性能的变化,描述了数据扰动造成的影响;噪声则表示任何学习算法泛化能力的下界,描述了学习问题本身的难度。

泛化误差曲线如下:
机器学习中的泛化误差_第1张图片

你可能感兴趣的:(机器学习,机器学习)