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

561 阅读2分钟

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 训练得到我们的理想模型ff^{*} ,ff^{*} 其实是f^\hat{f} 的一个预估。

image.png

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

1.2 评估x的偏差

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

  • 首先拿到N个样本点:x1,x2,x3,x4,...,xN{x^{1}, x^{2}, x^{3}, x^{4},... , x^{N}}

  • 计算平均值m,得到m=1NnXnμm = \frac{1}{N} {\textstyle \sum_{n}^{}X^n} \ne \mu

image.png

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

image.png

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

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

Var[m]=σ2NVar[m] = \frac{\sigma ^2}{N}

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

image.png

2、梯度下降

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

  • 数学理论 梯度下降的限制