标签:eps trade 红色 www 导致 red com 差分 曲线
先引入一个问题: Machine Learning 与 Curve Fitting 的区别是什么?1
Curve Fitting 是使用所有的数据拟合一条曲线; 而 Machine Learning 是采用真实世界中采样的一小部分数据,并且我们希望我们的模型能够对于未知数据有不错的泛化性能.因此涉及到Bias-Variance的权衡.
学习算法的预测误差, 或者说泛化误差(generalization error)可以分解为三个部分: 偏差(bias), 方差(variance) 和噪声(noise). 在估计学习算法性能的过程中, 我们主要关注偏差与方差. 因为噪声属于不可约减的误差 (irreducible error).
下面来用公式推导泛化误差与偏差与方差, 噪声之间的关系.
符号 | 涵义 |
---|---|
\(\mathbf{x}\) | 测试样本 |
\(D\) | 数据集 |
\(y_{D}\) | \(\mathbf{x}\) 在数据集中的标记 |
\(y\) | \(\mathbf{x}\) 的真实标记 |
\(f\) | 训练集 \(D\) 学得的模型 |
\(f(\mathbf{x}; D)\) | 由训练集 \(D\) 学得的模型 \(f\) 对 \(\mathbf{x}\) 的预测输出 |
\(\bar{f}(\mathbf{x})\) | 模型 \(f\) 对 \(\mathbf{x}\) 的 期望预测 输出 |
以回归任务为例, 学习算法的平方预测误差期望为:
\begin{equation}
Err(\mathbf{x}) = E\left[\left( y - f(\mathbf{x}; D) \right)^2\right]
\end{equation}
在一个训练集 \(D\) 上模型 \(f\) 对测试样本 \(\mathbf{x}\) 的预测输出为 \(f(\mathbf{x}; D)\), 那么学习算法 \(f\) 对测试样本 \(\mathbf{x}\) 的 期望预测 为:
\begin{equation}
\overline{f}(\mathbf{x}) = E_D\left[f\left(\mathbf{x}; D\right)\right]
\end{equation}
上面的期望预测也就是针对 不同 数据集 \(D\), \(f\) 对 \(\mathbf{x}\) 的预测值取其期望, 也被叫做 average predicted.
使用样本数相同的不同训练集产生的方差为:
\begin{equation}
\rm{var}(\mathbf{x}) = E_D\left[\left( f(\mathbf{x}; D) - \overline{f}(\mathbf{x}) \right)^2\right]
\end{equation}
噪声为真实标记与数据集中的实际标记间的偏差:
\begin{equation}
\varepsilon^2 = E_D\left[ (y_D - y)^2 \right]
\end{equation}
期望预测与真实标记的误差称为偏差(bias), 为了方便起见, 我们直接取偏差的平方:
\begin{equation}
\rm{bias}^2(\mathbf{x}) = \left( \overline{f}(\mathbf{x}) - y \right)^2
\end{equation}
对算法的期望泛化误差进行分解:
上面的公式2蓝色部分是对上面对应的等价替换, 然后对其展开后, 红色部分刚好为 0.
对最终的推导结果稍作整理:
至此, 继续来看一下偏差, 方差与噪声的含义 3:
偏差、方差、噪声
为了得到泛化性能好的模型,我们需要使偏差较小,即能充分拟合数据,并且使方差小,使数据扰动产生的影响小。但是偏差和方差在一定程度上是有冲突的,这称作为偏差-方差窘境。
下图给出了在模型训练不足时,拟合能力不够强,训练数据的扰动不足以使学习器产生显著变化,此时偏差主导泛化误差,此时称为欠拟合现象。当随着训练程度加深,模型的拟合能力增强,训练数据的扰动慢慢使得方差主导泛化误差。当训练充足时,模型的拟合能力非常强,数据轻微变化都能导致模型发生变化,如果过分学习训练数据的特点,则会发生过拟合。
随着模型复杂度的提升, 偏差逐渐减小, 方差逐渐增大. 最佳的模型复杂度是在 Total Error 最小的时候, 该点导数为0. 由于 Err=variance+bias+noise, 所以在拐点处:4
\[ \newcommand{\dif}{\mathop{}\!\mathrm{d}} \frac{\dif\text{Bias}}{\dif\text{Complexity}} = - \frac{\dif\text{Variance}}{\dif\text{Complexity}} \]
给出了寻找最优平衡点的数学描述。若模型复杂度大于平衡点,则模型的方差会偏高,模型倾向于过拟合;若模型复杂度小于平衡点,则模型的偏差会偏高,模型倾向于过拟合。
为什么K-fold Cross Validation中的k值会影响偏差和方差呢?
K折交叉验证重复k次地把数据集分成训练集和测试集,K值越大,每次划分的训练集就越大,估计模型的期望\(E[\hat f]\)就越接近整个数据集的真实模型f,因此模型偏差就越小。 5
参考资料:
标签:eps trade 红色 www 导致 red com 差分 曲线
原文地址:https://www.cnblogs.com/makefile/p/bias-var.html