3. DNN神经网络的正则化
1. DNN神经网络的前向传播(FeedForward) 2. DNN神经网络的反向更新(BP) 3. DNN神经网络的正则化 1. 前言 和普通的机器学习算法一样,DNN也会遇到过拟合的问题,需要考虑泛化,这里我们就对DNN的正则化方法做一个总结。 2. DNN的L1和L2正则化 想到正则化,我们首先想到的就是L1正则化和L2正则化。L1正则化和L2正则化原理类似,这里重点讲述DNN的L2正则化。 而DNN的L2正则化通常的做法是只针对与线性系数矩阵 \(W\) ,而不针对偏倚系数 \(b\) 。利用我们之前的机器学习的知识,我们很容易可以写出DNN的L2正则化的损失函数。 假如我们的每个样本的损失函数是均方差损失函数,则所有的m个样本的损失函数为: \[J(W,b) = \frac{1}{2m}\sum\limits_{i=1}^{m}||a^L-y||_2^2 \] 则加上了L2正则化后的损失函数是 \[J(W,b) = \frac{1}{2m}\sum\limits_{i=1}^{m}||a^L-y||_2^2 + \frac{\lambda}{2m}\sum\limits_{l=2}^L||w||_2^2 \] 其中,$\lambda \(1即我们的正则化超参数,实际使用时需要调参。而\) w \(为所有权重矩阵\) W$的所有列向量。 如果使用上式的损失函数