五、神经网络过拟合处理方法(一)

简介: 五、神经网络过拟合处理方法(一)

1. 什么是过拟合?

过拟合(Overfitting):模型过于复杂(所包含的参数过多),以致于模型对训练集的拟合很好,但对未知数据预测很差的现象(泛化能力差)。

在这里插入图片描述
过拟合可以通过观测训练集和验证集的loss变化判断:随着epoch或step的增加,训练集
loss不断下降,而验证集loss先下降后抬升。

2. 常见过拟合解决办法有哪些?

(1)增加训练数据量
①采集更多的数据;
②数据增广(image augmentation):对已有数据做一系列随机改变,来产生相似但又不同的训练样本,从而扩大训练数据集的规模。这里不讲数据增广,有兴趣的可以查看tf.keras.preprocessing.image.ImageDataGenerator这个api。

(2)减少模型复杂度
①减少隐层
②减少神经元个数

(3)添加正则项
tf.keras.regularizers.l2
用到的参数:
l:惩罚项,默认为0.01。

(4)提前终止(Early Stopping)
在这里插入图片描述
训练的过程中,记录到目前为止最好的验证集结果,当连续10个Epoch(或者更多次)没有超越最佳结果时,则可以认为精度不再提高。

导入模块: tf.keras.callbacks.EarlyStopping
用到的参数:
monitor:监控的数据,一般为'val_loss'。
min_delta:定义模型改善的最小量,只有大于min_delta才会认为模型有改善,默认为0。
patience:有多少个epoch,模型没有改善,训练就会停止,默认为0。
restore_best_weights:是否使用监控数据最好的模型参数,如果是False,使用的是训练最后一步的模型参数,默认False。

(5)Dropout 在这里插入图片描述
训练阶段:每个step以一定的概率p让神经元停止工作。
预测阶段:所有神经元都是工作的,但所有权值需要乘上(1-p)。
导入模块: tf.keras.layers.Dropout
用到的参数:
rate:神经元失效的概率,取值0~1的浮点数。
seed:随机种子,取正整数。
name:输入字符串,给该层设置一个名称。

3. Dropout详解
(1) Dropout为何有效?
在这里插入图片描述
Hinton的解释:Dropout相当于对原来网络进行修剪,得到参数规模较小的网络,这样的网络
不容易发生过拟合现象,最后对训练过程中所有的小网络进行集成(回归任务:相当于求平均,
分类任务:相当于少数服从多数),从而减小泛化误差,思想类似于集成学习。
在这里插入图片描述
(2)Dropout的缺点:
达到同样的精度需要更长的训练时间。通常p初始值取0.5,原因:p=0.5时所有小网络出现的概率相同,不会对某些网络有偏向。
(3)为什么预测阶段所有权值需要乘上(1-p)?
例:10匹马拉一个10吨的车。
第一次(训练时):只有4匹马出力(有p=0.6概率被dropout),每匹要出力拉2.5吨;
第二次(测试时):10匹马都被要求出力,这次每匹马要出力拉2.5×(1-0.6)=1吨
注:主流的深度学习框架(tensorflow、pytorch、mxnet等)都会自动处理这一步,所以不需要自己操作。

相关文章
|
2天前
|
存储 缓存 网络协议
网络丢包排查方法
网络丢包排查方法
|
4天前
|
监控 安全 iOS开发
|
11天前
|
域名解析 运维 监控
网络故障排查的常用工具与方法:技术深度解析
【8月更文挑战第20天】网络故障排查是一项复杂而重要的工作,需要网络管理员具备扎实的网络知识、丰富的实践经验和灵活的问题解决能力。通过掌握常用工具和方法,遵循科学的排查流程,可以显著提高故障排查的效率和准确性。希望本文能为读者在网络故障排查方面提供有益的参考和启示。
|
19天前
|
存储 缓存 定位技术
如果遇到网络延迟问题,有哪些方法可以快速解决以保证视频源同步?
如果遇到网络延迟问题,有哪些方法可以快速解决以保证视频源同步?
|
25天前
|
机器学习/深度学习
【机器学习】面试题:LSTM长短期记忆网络的理解?LSTM是怎么解决梯度消失的问题的?还有哪些其它的解决梯度消失或梯度爆炸的方法?
长短时记忆网络(LSTM)的基本概念、解决梯度消失问题的机制,以及介绍了包括梯度裁剪、改变激活函数、残差结构和Batch Normalization在内的其他方法来解决梯度消失或梯度爆炸问题。
35 2
|
7天前
|
存储 监控 安全
确保大型组织网络安全的策略与方法
【8月更文挑战第24天】
31 0
|
16天前
|
网络虚拟化 数据安全/隐私保护
手把手教网络工程师2种方法如何恢复交换机配置
手把手教网络工程师2种方法如何恢复交换机配置
|
16天前
|
安全 网络协议 网络安全
常见网络攻击方式及防御方法
网络安全威胁的不断演变和增长,网络攻击的种类和数量也在不断增加,攻防对抗实战演练在即,让我们一起了解一下常见网络攻击方式及防御方法。
10 0
|
17天前
|
机器学习/深度学习 自然语言处理 算法
基于卷积神经网络(CNN)的垃圾邮件过滤方法
传统的垃圾邮件过滤手段如规则匹配常因垃圾邮件的多变而失效。基于深度学习的方法,特别是卷积神经网络(CNN),能自动学习邮件中的复杂特征,有效识别垃圾邮件的新形态。CNN通过特征学习、处理复杂结构、良好的泛化能力和适应性,以及高效处理大数据的能力,显著提升了过滤精度。在文本分类任务中,CNN通过卷积层提取局部特征,池化层减少维度,全连接层进行分类,特别适合捕捉文本的局部模式和顺序信息,从而构建高效的垃圾邮件过滤系统。
41 0
|
3月前
|
机器学习/深度学习 监控 API
神经网络之防止过拟合
防止神经网络过拟合的方法包括正则化,如L1(Lasso)和L2(岭回归)正则化,以及Dropout技术。L1正则化能产生稀疏权重,帮助特征选择;L2正则化避免权重过大但不使其为零。Dropout在训练时随机关闭部分神经元,减少依赖,提高模型泛化能力。此外,还有数据增强、早停法等策略来改善过拟合问题。
下一篇
云函数