TensorFlow实战之Trick

困难

神经网络中的隐层极大的提升了神经网络的表达能力,理论上只要隐层的节点足够多,即使只有一个隐含层的神经网络也可以拟合任意函数,隐层越多就越容易拟合复杂函数。使用层数较深的神经网络会遇到许多困难,比如:容易过拟合、参数难以调试、梯度弥漫等,针对这些问题有很多trick解决。

过拟合

过拟合是机器学习的一个常见问题,它是指模型预测准确率在训练集上升高了,在测试集上反而下降了。这通常是因为模型的泛化性不好,只记忆了当前数据的特征,不具备推广能力。
1.Dropout是解决过拟合问题的一种简单有效的方法,它的大致思路是在训练时,将神经网络的某一层的输出节点数据随机丢弃一部分。我们可以理解成每次丢弃节点是对特征的一种采样,这种方法相当于随机创造了很多新的样本,通过增大样本量,减少特征数量来防止过拟合。
2.权值衰减 。在每次迭代过程中以某个小因子降低每个权值,这等效于修改E的定义,加入一个与网络权值的总量相应的惩罚项,此方法的动机是保持权值较小,避免weight decay,从而使学习过程向着复杂决策面的反方向偏。
3.使用正则。通过把每层的正则加到最终的损失函数里,使得更多的参数为零,简化模型。
4.数据增强。在图像识别领域,可以通过颜色,PCA,尺度,剪裁缩小,旋转平移,仿射变换,加噪声,类别不平衡等扩大标注样本集。模型大,数据少,可能导致过拟合,通过增强数据,可以解决样本少的问题。
5.Cross-validation with some patterns。交叉验证方法,k-fold交叉方法。
6.提早结束训练(early stopping)。在梯度下降过程中,有

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值