李宏毅机器学习-task3-误差和梯度下降

1、误差

误差的来源:Average Error 随着模型复杂增加呈指数上升趋势。更复杂的模型并不能给测试集带来更好的效果,而这些 Error 的主要有两个来源,分别是 bias、 和 variance 。

Error = Bias(偏差) + Variance(方差)

Bias是 “用所有可能的训练数据集训练出的所有模型的输出的平均值” 与 “真实模型”的输出值之间的差异;

Variance则是“不同的训练数据集训练出的模型”的输出值之间的差异。

1.1 估测

还是以预测宝可梦evolution之后的cp值为例子,我们假设假设真实的模型为 f ^ \hat{f} , 如果我们知道 f ^ \hat{f} 模型,那是最好不过了,但是 f ^ \hat{f}  只有 Niamtic 公司才知道。

image.png 因此我们只能自己收集pokemon精灵的数据然后通过task1中讲到的step1~step2 训练得到我们的理想模型 f f^{*} , f f^{*} 其实是 f ^ \hat{f} 的一个预估。

image.png

如何解释他们之间的关系呢?这个过程就像打靶, f ^ \hat{f}  就是我们的靶心, f f^{*}  就是我们投掷的结果。如上图所示, f ^ \hat{f} 与  f f^{*}  之间蓝色部分的差距就是偏差(bias)和方差(variance)导致的。

1.2 评估x的偏差

  • 假设X的平均值是μ,方差为 σ 2 \sigma ^{2}

评估平均值的步骤:

  • 首先拿到N个样本点: x 1 , x 2 , x 3 , x 4 , . . . , x N {x^{1}, x^{2}, x^{3}, x^{4},... , x^{N}}
  • 计算平均值m,得到 m = 1 N n X n μ m = \frac{1}{N} {\textstyle \sum_{n}^{}X^n} \ne \mu

image.png

但是如果计算很多组的 mm ,然后求 mm 的期望:

image.png

这个估计呢是无偏估计(unbiased)。

然后 m 分布对于 μ 的离散程度(方差):

V a r [ m ] = σ 2 N Var[m] = \frac{\sigma ^2}{N}

这个取决于 NN,下图看出 NN 越小越离散:

image.png

2、梯度下降

tips1:调整学习速率 自适应学习率 Adagrad算法 tips2:随机梯度下降法 tips3:特征缩放 梯度下降的理论基础

  • 数学理论

梯度下降的限制

猜你喜欢

转载自juejin.im/post/7110160622142275592