当前位置: 首页 > article >正文

深度学习--正则化

笔记内容侵权联系删

  过拟合问题
 

过拟合问题描述:模型在训练集表现优异,但在测试集上表现较差。
根本原因:特征维度过多,模型假设过于复杂,参数过多,训练数据过少,噪声过多导致拟合出的函数几乎完美的对训练集做出预测,但对新数据的测试集预测结果差。过度的拟合了训练数据,而没有考虑到模型的泛化能力。 

正则化
 

正则化是机器学习中非常重要并且非常有效的减少泛化误差的技术,特别是在深度学习模型中,由于其模型参数非常多非常容易产生过拟合。因此研究者也提出很多有效的技术防止过拟合,比较常用的技术包括:
参数添加约束,例如L1 ,L2范数等。
训练集合扩充,例如添加噪声、数据变换等
Dropout
提前停止

1。参数惩罚【约束】
许多正则化方法通过对目标函数/添加一个参数惩罚,限制模型的学习能力。
2.L1正则
对模型参数添加L1范数约束【L2 VS L1与山的主要区别如下:
通过上面的分析,山相对于山能够产生更加稀疏的模型,即当正则在参数w比较小的情况下能够直接缩减至0,因此可以起到特征选择的作用。
如果从概率角度进行分析,很多范数约束相当于对参数添加先验分布,其中范数相当于参数服从高斯先验分布;范数相当于拉普拉斯分布】

3.数据增强
防止过拟合最有效的方法是增加训练集合,训练集合越大过拟合概率越小。数据增强是一个省时有效的方法,但是在不同领域方法不太通用

【从最简单直白的角度来看的话,模型见过的数据见多了,它认识的更广了,因此当有新的数据时,会感觉到相似】
在目标识别领域常用的方法是将图片进行旋转、缩放等(图片变换的前提是通过变换不能改变图片所属类别,例如手写数字识别,类别6和9进行旋转后容易改变类目)。
语音识别中对输入数据添加随机噪声。
NLP中常用思路是进行近义词替换。

4.提前停止训练
在训练过程中,插入对验证集数据的测试。当发现验证集数据的Loss上升时,提前停止训练。

【当损失函数升高后就可以 开始提前停止训练】

5.Dropout
Dropout是一类通用并且计算简洁的正则化方法,在2014年被提出后广泛的使用。简单的说Dropout在训练过程中,随机的丢弃一部分输入,此时丢弃部分对应的参数不会更新。相当于Dropout是一个集成方法,将所有子网络结果进行合并,通过随机丢弃输入可以得到各种子网络

数据不平衡问题
1..随机欠采样。

删除类中多的样本

2..随机过采样

拷贝样本

3..合成采样

提取样本,合成样本


http://www.kler.cn/a/394984.html

相关文章:

  • ubuntu20.04 colmap 安装2024.11最新
  • 离线 快速搭建 docker docker-compose k8s 环境
  • 【C#设计模式(4)——构建者模式(Builder Pattern)】
  • FluentUI使用
  • 亲测有效:Maven3.8.1使用Tomcat8插件启动项目
  • 【C语言】值传递和地址传递
  • Java | Leetcode Java题解之第560题和为K的子数组
  • MySQL多系统安装配置教程(Windows、Ubuntu、Centos)
  • 【Python无敌】在 QGIS 中使用 Python
  • 【MySQL】MySQL中的函数之REGEXP_LIKE
  • 上海市计算机学会竞赛平台2024年8月月赛乙组字符串的种类
  • Centos安装Elasticsearch教程
  • Leetcode 791 Custom Sort String
  • 零碎01-登录验证
  • 基于SpringBoot的“生鲜交易系统”的设计与实现(源码+数据库+文档+PPT)
  • 电脑软件:推荐一款非常好用的PDF编辑、拆分、合并、对比工具
  • C# IEnumerator,IEnumerable ,Iterator
  • python解析网页上的json数据落地到EXCEL
  • Unity3D实现视频和模型融合效果
  • springboot整合websocket实现复制目录进度推送
  • Git服务部署教程
  • C#各版本汇总
  • C#从入门到放弃
  • 计算机视觉和机器人技术中的下一个标记预测与视频扩散相结合
  • 家政服务小程序,家政行业数字化发展下的优势
  • 深度学习:利用随机数据更快地测试一个新的模型在自己数据格式很复杂的时候