一、正则化
1、正则化的理解
当模型的复杂度>>数据的复杂度时,会出现过拟合现象,即模型过度拟合了训练数据,其泛化能力变差。为此,会通过数据增强、降维、正则化等方法防止模型过拟合。
\[\mathop{\arg\min}\limits_{\omega} (\mathcal{L}(w) + \lambda \Omega(w))
\]
式子里面,前者为损失函数,后者为正则化项。
从数学角度理解,以线性回归为例,其损失函数为:
\[\mathcal{L}(\omega) = \sum^{N}_{i=1}||\omega^T -y_i||^2
\]
可以得到:
\[W = (X^TX)^{-1}X^TY
\]
需要对\(X^TX\)求逆,才能得到解。
对于$X_{N \times P}$,$x_i \in \mathbb{R}^P$,其中$N$为样本数,$P$为样本维度。当$P>>N$时,在数学上,表现为$X^TX$不可逆,在现象上,即为模型过拟合。若以\(L2\)正则化方法进行约束,则有:
\[\begin{aligned}
J(\omega) &=\sum^{N}_{i=1}||\omega^T -y_i||^2 +\lambda W^TW \\
&=(W^TX^T-Y^T)(XW-Y) + \lambda W^TW \\
&=W^TX^TXW -W^TX^TY-Y^TXW+YY^T+\lambda W^TW \\
&=W^TX^TXW-2W^TX^TY+Y^TY+\lambda W^TW \\
&=W^T(X^TX+\lambda I)W - 2W^TX^TY+Y^TY
\end{aligned}\]
求导:
\[\begin{aligned}
\frac{\partial J(\omega)}{\partial \omega} = 2(X^TX+\lambda I)W -2X^TY
\end{aligned}
\]
解得:
\[\begin{aligned}
W = (X^TX+\lambda I)^{-1}X^TY
\end{aligned}\]
\(X^TX\) 为半正定矩阵,\(\lambda I\) 为半角矩阵,故 \((X^TX+\lambda I)\) 一定可逆,这从数学上解释了正则化的原因。
2、\(L2\)正则化(岭回归,Ridge Regression )
神经网络中,参数 \(\theta\) 包括每一层的权重 \(\omega\) 和偏置 \(b\),通常情况下,只对权重 \(\theta\) 进行惩罚,因为其关联两个变量之间的相互作用,而 \(b\) 仅控制一个参数,不进行正则化也不会导致太大方差,为了减小空间,所有层使用共同的权重衰减。
TODO.......
3、\(L1\)正则化(Lasso)
4、Dropout
5、多任务学习(Multi-task)
6、数据增强、添加噪声等