偏差-方差分解

2019-07-24  本文已影响0人  单调不减

偏差-方差分解的内容其实在看西瓜书的时候已经学习过,但印象并不深刻(可能和西瓜书上的符号比较繁琐有关吧),此次重温,脉络清晰了不少。

为避免过拟合,我们经常会在模型的拟合能力和复杂度之间进行权衡。拟合能力强的模型一般复杂度会比较高,易导致过拟合。相反,如果限制模型的复杂度,降低其拟合能力,又可能会导致欠拟合。因此,如何在模型能力和复杂度之间取得一个较好的平衡对一个机器学习算法来讲十分重要。偏差-方差分解(Bias-Variance Decomposition)为我们提供一个很好的分析和指导工具。

假设样本的真实分布为p_r(x, y),并采用平方损失函数,模型f(x)的期望错误为:

\mathcal{R}(f)=\mathbb{E}_{(\mathbf{x}, y) \sim p_{r}(\mathbf{x}, y)}\left[(y-f(\mathbf{x}))^{2}\right]

那么最优的模型为:

f^{*}(\mathbf{x})=\mathbb{E}_{y \sim p_{r}(y | \mathbf{x})}[y]

其中p_r(y|x)为样本的真实条件分布,f^∗(x)为使用平方损失作为优化目标的最优模型,其损失为:

\varepsilon=\mathbb{E}_{(\mathbf{x}, y) \sim p_{r}(\mathbf{x}, y)}\left[\left(y-f^{*}(\mathbf{x})\right)^{2}\right]

损失ε通常是由于样本分布以及噪声引起的,无法通过优化模型来减少。

期望误差可以分解为:

\begin{aligned} \mathcal{R}(f) &=\mathbb{E}_{(\mathbf{x}, y) \sim p_{r}(\mathbf{x}, y)}\left[\left(y-f^{*}(\mathbf{x})+f^{*}(\mathbf{x})-f(\mathbf{x})\right)^{2}\right] \\ &=\mathbb{E}_{\mathbf{x} \sim p_{r}(\mathbf{x})}\left[\left(f(\mathbf{x})-f^{*}(\mathbf{x})\right)^{2}\right]+\varepsilon \end{aligned}

其中第一项是当前模型和最优模型之间的差距,是机器学习算法可以优化的真实目标。

在实际训练一个模型f(x)时,训练集D是从真实分布p_r(x, y)上独立同分布地采样出来的有限样本集合。不同的训练集会得到不同的模型。令f_D(x)表示在训练集D学习到的模型,一个机器学习算法(包括模型以及优化算法)的能力可以用不同训练集上的模型的平均性能来评价

对于单个样本x,不同训练集D得到模型f_D(x)和最优模型f^∗(x)的上的期望误差为:

\begin{aligned} \mathbb{E}_{\mathcal{D}} &\left[\left(f_{\mathcal{D}}(\mathrm{x})-f^{*}(\mathrm{x})\right)^{2}\right] \\ &=\mathbb{E}_{\mathcal{D}}\left[\left(f_{\mathcal{D}}(\mathrm{x})-\mathbb{E}_{\mathcal{D}}\left[f_{\mathcal{D}}(\mathrm{x})\right]+\mathbb{E}_{\mathcal{D}}\left[f_{\mathcal{D}}(\mathrm{x})\right]-f^{*}(\mathrm{x})^{2}\right]\right.\\ &=\left(\mathbb{E}_{\mathcal{D}}\left[f_{\mathcal{D}}(\mathrm{x})\right]-f^{*}(\mathrm{x})\right)^{2}+\mathbb{E}_{\mathcal{D}}\left[\left(f_{\mathcal{D}}(\mathrm{x})-\mathbb{E}_{\mathcal{D}}\left[f_{\mathcal{D}}(\mathrm{x})\right]\right)^{2}\right] \end{aligned}

其中第一项为偏差(Bias),是指一个模型的在不同训练集上的平均性能和最优模型的差异。偏差可以用来衡量一个模型的拟合能力;第二项是方差(Variance),是指一个模型在不同训练集上的差异,可以用来衡量一个模型是否容易过拟合。

综上,期望误差可以分解为:

\mathcal{R}(f)=(\text { bias })^{2}+\text { variance }+\varepsilon

下图给出给出了机器学习算法的偏差和方差的四种不同组合情况:

上一篇 下一篇

猜你喜欢

热点阅读