美文网首页
偏差-方差分解

偏差-方差分解

作者: 单调不减 | 来源:发表于2019-07-24 14:53 被阅读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

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

  • 图(a)给出了一种理想情况,方差和偏差都比较小。

  • 图(b)为高偏差低方差的情况,表示模型的泛化能力很好,但拟合能力不足。

  • 图(c)为低偏差高方差的情况,表示模型的拟合能力很好,但泛化能力比较差。当训练数据比较少时会导致过拟合。

  • 图(d)为高偏差高方差的情况,是一种最差的情况。

相关文章

  • 偏差方差分解

  • 偏差-方差分解

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

  • 方差-偏差分解

    偏差-方差分析是(bias-variance decomposition)是解释算法学习泛化性能的一种重要工具。我...

  • 机器学习基础 | 偏差与方差

    一、什么是偏差和方差 在监督学习中,模型的泛化误差可分解为偏差、方差与噪声之和。 偏差与方差分别是用于衡量一个模型...

  • 理解方差与偏差分解

    假设存在一个真实(但未知)的的分布,它输出带有噪声的数据。我们用由产生的集合中的个样本来估计,待估计的模型表示为。...

  • 机器学习 | GBDT与集成学习

    待完善 1、偏差与方差 我们对学习算法的期望泛化错误率进行拆解,以回归任务为例。 假设 泛化误差可分解为偏差、方差...

  • 模型评估之偏差-方差分解

      为了避免过拟合,我们经常会在模型的拟合能力和复杂度之间进行权衡。拟合能力强的模型一般复杂度会比较高,容易导致过...

  • 机器学习相关问题

    Q1:偏差和方差 偏差:预测值与真实值的偏差方差:预测值的离散程度关系:此消彼涨 ​ 偏差大: 欠拟合, 问题:模...

  • 机器学习应用建议(二)

    偏差和方差的判别 高偏差和高方差本质上为学习模型的欠拟合和过拟合问题。 对于高偏差和高方差问题,即学习模型的欠拟合...

  • 方差偏差

    [高方差] 采集更多的样本数据[高方差] 减少特征数量,去除非主要的特征[高偏差] 引入更多的相关特征[高偏差] ...

网友评论

      本文标题:偏差-方差分解

      本文链接:https://www.haomeiwen.com/subject/jsjtrctx.html