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

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

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等)都会自动处理这一步,所以不需要自己操作。

相关文章
|
1月前
|
监控 安全 网络安全
深入解析PDCERF:网络安全应急响应的六阶段方法
PDCERF是网络安全应急响应的六阶段方法,涵盖准备、检测、抑制、根除、恢复和跟进。本文详细解析各阶段目标与操作步骤,并附图例,助读者理解与应用,提升组织应对安全事件的能力。
273 89
|
1月前
|
机器学习/深度学习 数据采集 人工智能
GeneralDyG:南洋理工推出通用动态图异常检测方法,支持社交网络、电商和网络安全
GeneralDyG 是南洋理工大学推出的通用动态图异常检测方法,通过时间 ego-graph 采样、图神经网络和时间感知 Transformer 模块,有效应对数据多样性、动态特征捕捉和计算成本高等挑战。
68 18
GeneralDyG:南洋理工推出通用动态图异常检测方法,支持社交网络、电商和网络安全
|
2月前
|
机器学习/深度学习 数据采集 人工智能
基于Huffman树的层次化Softmax:面向大规模神经网络的高效概率计算方法
层次化Softmax算法通过引入Huffman树结构,将传统Softmax的计算复杂度从线性降至对数级别,显著提升了大规模词汇表的训练效率。该算法不仅优化了计算效率,还在处理大规模离散分布问题上提供了新的思路。文章详细介绍了Huffman树的构建、节点编码、概率计算及基于Gensim的实现方法,并讨论了工程实现中的优化策略与应用实践。
84 15
基于Huffman树的层次化Softmax:面向大规模神经网络的高效概率计算方法
|
2月前
|
域名解析 缓存 网络协议
优化Lua-cURL:减少网络请求延迟的实用方法
优化Lua-cURL:减少网络请求延迟的实用方法
|
3月前
|
机器学习/深度学习 数据采集 算法
机器学习在医疗诊断中的前沿应用,包括神经网络、决策树和支持向量机等方法,及其在医学影像、疾病预测和基因数据分析中的具体应用
医疗诊断是医学的核心,其准确性和效率至关重要。本文探讨了机器学习在医疗诊断中的前沿应用,包括神经网络、决策树和支持向量机等方法,及其在医学影像、疾病预测和基因数据分析中的具体应用。文章还讨论了Python在构建机器学习模型中的作用,面临的挑战及应对策略,并展望了未来的发展趋势。
253 1
|
3月前
|
安全 算法 网络安全
量子计算与网络安全:保护数据的新方法
量子计算的崛起为网络安全带来了新的挑战和机遇。本文介绍了量子计算的基本原理,重点探讨了量子加密技术,如量子密钥分发(QKD)和量子签名,这些技术利用量子物理的特性,提供更高的安全性和可扩展性。未来,量子加密将在金融、政府通信等领域发挥重要作用,但仍需克服量子硬件不稳定性和算法优化等挑战。
|
4月前
|
机器学习/深度学习 计算机视觉
TPAMI 2024:计算机视觉中基于图神经网络和图Transformers的方法和最新进展
【10月更文挑战第3天】近年来,图神经网络(GNNs)和图Transformers在计算机视觉领域取得显著进展,广泛应用于图像识别、目标检测和场景理解等任务。TPAMI 2024上的一篇综述文章全面回顾了它们在2D自然图像、视频、3D数据、视觉与语言结合及医学图像中的应用,并深入分析了其基本原理、优势与挑战。GNNs通过消息传递捕捉非欧式结构,图Transformers则结合Transformer模型提升表达能力。尽管存在图结构构建复杂和计算成本高等挑战,但这些技术仍展现出巨大潜力。论文详细内容见:https://arxiv.org/abs/2209.13232。
258 3
|
6月前
|
存储 缓存 网络协议
网络丢包排查方法
网络丢包排查方法
|
6月前
|
监控 安全 iOS开发
|
6月前
|
域名解析 运维 监控
网络故障排查的常用工具与方法:技术深度解析
【8月更文挑战第20天】网络故障排查是一项复杂而重要的工作,需要网络管理员具备扎实的网络知识、丰富的实践经验和灵活的问题解决能力。通过掌握常用工具和方法,遵循科学的排查流程,可以显著提高故障排查的效率和准确性。希望本文能为读者在网络故障排查方面提供有益的参考和启示。

热门文章

最新文章