24 lines
1.7 KiB
Markdown
24 lines
1.7 KiB
Markdown
# 损失函数
|
||
用来量化预测值与实际值之间的差距。
|
||
一般我们会使用平方误差:
|
||
$l^i(\mathbf{w}, b) = \frac{1}{2}( \hat{y}^i - y^i)$
|
||
损失函数我们则采用平方误差的均值:
|
||
$L(\mathbf{w}, b) = \frac1n\sum_{i=1}^{n} l^i(\mathbf{x}, b)$
|
||
## 过拟合与欠拟合
|
||
训练误差是在训练数据集上的误差,泛化误差是在普遍数据集上的误差,一般来说,欠拟合一般指在训练数据集上精本就度不高,导致泛化性能较差,过拟合指在过于拟合训练数据集中的样本,导致泛化性能较差。
|
||
# 优化算法
|
||
- 随机梯度下降算法(Stochastic Gradient Descent)
|
||
通过不断在损失函数递减方向上更新参数来降低误差。
|
||
梯度下降法主要计算损失函数关于模型参数的导数。但是每次计算时候遍历整个数据集,效率会很低。所以每次计算先抽取一个小批量$B$(由固定数量的样本组成)的梯度,然后我们将梯度乘以一个预先确定的正数$\eta$,并从当前采纳数的值中减掉。
|
||
$(\mathbf{w}, b) <- (\mathbf{w},b) - \frac{\eta}{|B|} \sum_{i\in{B}}\partial_{(\mathbf{w}, b)}l^i(\mathbf{w},b)$
|
||
其中$\eta$代表学习率
|
||
# 激活函数
|
||
在MLP中,由于多个线性层叠加,最终的结果和单层感知机并无区别,加入激活函数后,可以引入非线性。
|
||
常用的有sigmoid、ReLU、tanh等函数。
|
||
# 正则化
|
||
主要用来解决过拟合问题。
|
||
- 权重衰减
|
||
通过L2范数,惩罚大的权重值,使得模型的参数更加稀疏平均,从而使得模型不过于依赖某些特征,从而提升了泛化能力。
|
||
正则化损失函数:$L(\mathbf{w}, b) + \frac{\lambda}{2} \|\mathbf{w}\|^2$
|
||
反向传播:$w \larr$
|
||
- |