综合Stanford university cs231n 课堂、及google 机器学习简介课程,进行了小小的记录~
正则化 regularization
有助于防止出现过拟合
分为:
- L1 正则化
- L2 正则化
- 丢弃正则化
- 早停法(这不是正式的正则化方法,但可以有效限制过拟合)
dropout 丢弃
在每一次前向传递时,每一层都是计算上一个激活函数的结果乘以权重矩阵,得到下一个激活函数前的结果。然后将这一层算出来的的神经元的数值,随机的选取一部分进行置零。
通常,将正则化率设为0.5
一般是在全连接层使用。有时也用在卷积层,不过,不是随机把某个神经元上激活函数的结果置零,而是随机把整个特征映射置为零。在卷积神经网络里,有一个维度表示通道,可将某几个通道整体置零,而不是某几个元素。
dropout 能够使模型的鲁棒性更好
会使训练的时间增长
p = 0.5 #probability of keeping a unit active. higher = less dropout
def train_step(X):
"