deep learning tips

dropout是为了防止过拟合,实在testing data上面效果不好时用的,而training data效果不好的时候不会考虑这个方法。
vanishing gradient problem和 exploding gradient:梯度消失和梯度爆炸问题,可以参考此篇博客


Regularization:
L2:这里写图片描述
不考虑bias是因为我们加入正则是为了让我们的function更平滑,而bias跟function的平滑程度是没有关系的,所以我们通常不会考虑bias。
为什么我们要使function更平滑呢?
因为正则是为了防止过拟合,当以函数过拟合的时候,就是拟合函数需要顾忌每一个点,最终形成的拟合函数波动很大。在某些很小的区间里,函数值的变化很剧烈。这就意味着函数在某些小区间里的导数值(绝对值)非常大,所以只有系数足够大,才能保证导数值很大。如下图:
这里写图片描述
所以当w足够小的时候,function就会变得平滑,就不容易过拟合。
这里写图片描述
由上图中可以发现,(1-λη)小于1,所以相当于每次update wt w t 都先乘以一个小于1的数,所以如果没有式子的后半部分,那么 wt w t 会逐渐趋近于0(但是即使这样 wt w t 也会越来越小,因为一直在乘小于1的数)。
L1:这里写图片描述
sgn(x)是说x是正的时候,函数值为1,是负的时候函数值是-1。
所以意思是说如果 wt w t 是正的,那么就每次减去λη。如果是负的就每次加上λη。也是为了让 wt w t 绝对值缩小。
它与L2的区别:
因为L1每次都是减去一个固定值,如果w初始很大,update很多次后w可能依然很大。
而L2每次乘以一个固定值,所以w初始很大或者很小都会趋近很小。


early stopping:因为训练次数过多可能过拟合,training set效果会好,testing set可能反而会变差,所以可以提前结束。
这里写图片描述


dropout:
每次每个neural随机舍去,在你training的时候使用了dropout的时候效果会变差,而test会变好,所以我们在train的结果好,test效果不好的时候使用dropout.

这篇博客

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值