• 过拟合一些解决方案


    过拟合原因:

    1. 训练集的数量级和模型的复杂度不匹配。训练集的数量级要小于模型的复杂度;(模型太复杂,参数就会太大,然而你的数据量又很小)

    2. 训练集和测试集特征分布不一致;(用分类猫的训练集,去拟合分类狗的)

    3. 样本里的噪音数据干扰过大,大到模型过分记住了噪音特征,反而忽略了真实的输入输出间的关系;(数据量太小,或许只学到了噪音,而没有学到希望学到的特征)

    4. 权值学习迭代次数足够多(Overtraining),拟合了训练数据中的噪声和训练样例中没有代表性的特征。

    解决方案:

    1、简化模型结构:比如减小网络深度。

    2、多来一些数据增广,比如flip、rotate,镜像,高斯噪音,随机裁剪,缩放。

    3、正则化:比如添加L1和L2正则。(L2正则也称为权重衰减 weight decay )

    L2范数是指向量各元素的平方和然后求平方根。我们让L2范数的规则项||W||2最小,可以使得W的每个元素都很小,都接近于0,但与L1范数不同,它不会让它等于0,而是接近于0。因为一般认为参数值小的模型比较简单,能适应不同的数据集,也在一定程度上避免了过拟合现象。可以设想一下对于一个线性回归方程,若参数很大,那么只要数据偏移一点点,就会对结果造成很大的影响;但如果参数足够小,数据偏移得多一点也不会对结果造成什么影响,专业一点的说法是『抗扰动能力强』

    4、Dropout:丢弃网络中的一些神经元。(或许有用,别丢太多,好不容易训练出来的参数)

    5、早停(early stopping):这就需要有验证集,当验证集的Dice值达到最优的时候,就停止训练,减少训练时间。(通常在找到最优epoch之后,在跑10-50epoch,确定是最优,再停止)。

    6、ensemble、集成多个模型结果,减少过拟合造成的影响。但是这种方法太花费时间了。集成类型:贝叶斯最优分类器、Bootstrap聚合(Bagging)、Boosting、贝叶斯参数平均、贝叶斯模型组合、桶模型、Stacking。

    7、重新对数据进行清洗。但是对于深度学习视觉任务来说,这个过程一般在数据预处理阶段完成。

  • 相关阅读:
    存储过程中执行动态Sql语句
    模拟alert和confirm
    SignalR
    Html5实践之EventSource
    Java路径操作具体解释
    HDU 1330 Nearest Common Ancestors(求两个点的近期公共祖先)
    Graph(2014辽宁ACM省赛)
    基于注解的Spring MVC整合Hibernate(所需jar包,spring和Hibernate整合配置,springMVC配置,重定向,批量删除)
    W5500问题集锦(二)
    Android Fragment 简单实例
  • 原文地址:https://www.cnblogs.com/peixu/p/16298240.html
Copyright © 2020-2023  润新知