【算法岗面试题】深度学习中如何防止过拟合?

这是个深度学习中比较常见的问题。网上有好多解答,我就梳理一下:

1. 更换网络结构

首先从模型上解决的一个很好的例子是rsnet可以缓解过拟合的风险,更深的网络通常更容易过拟合 ,但ResNet通过**跳跃连接(skip connections)**,使梯度能够有效传播,避免梯度消失问题,同时让模型能学习更深层次的特征。通过可以参考。

hyshhh:何恺明ResNet(残差网络)------彻底改变深度神经网络的训练方式

2. 早停法

然后进行早停法也是一种提高泛化能力的方法它通过监控验证集损失(Validation Loss),在模型开始过拟合之前停止训练,从而提高泛化能力。

  • 初始阶段 :训练损失 & 验证损失 都下降(模型正在学习)。
  • 中期阶段 :训练损失继续下降,但验证损失下降变慢(模型学习到较好的特征)。
  • 后期阶段 :训练损失继续下降,但验证损失开始上升 (模型过拟合,记住了训练数据的细节,但无法泛化到新数据)。 早停法的关键 : 当发现验证集损失不再下降或开始上升 ,就停止训练,防止模型在训练集上过度拟合。

3. 更换损失函数

Focal Loss(焦点损失,适用于类别不均衡)

  • 为什么?
  • 传统交叉熵容易被简单样本主导,导致模型忽视难分类样本。
  • Focal Loss 降低了对易分类样本的关注,并强化了对困难样本的学习。
  • 适用任务:目标检测(如 RetinaNet)、医学图像分类、小样本分类。

4. 数据增强

数据增强是一种最常见的提高泛化能力的方式

(1) 数据增强(Data Augmentation)

  • 通过对训练数据进行变换,增加数据多样性,使模型学习到更加稳健的特征,防止过拟合。
  • 图像任务
  • 几何变换(旋转、缩放、翻转、剪切)
  • 颜色扰动(亮度、对比度、色调变化)
  • Cutout、Mixup、CutMix(随机遮挡或混合样本)
  • 时序任务
  • 时间窗口变化、随机抖动、噪声扰动

(2) 数据清理 & 去噪

  • 确保数据标注准确,避免错误标签影响模型学习(Label smoothing 也可以缓解标注错误的影响)。
  • 处理噪声数据,减少错误示例对模型学习的干扰。

(3) 增大数据集

  • 采集更多真实数据(如果可能)。
  • 使用合成数据(如GAN生成数据、物理仿真数据)。
  • 半监督学习 & 伪标签(利用未标注数据进行训练)。

5. 正则化

比较少见的一种是对正则化的处理,主要方法如下

L1/L2 正则化(权重衰减,Weight Decay) L1 正则化 :鼓励稀疏性(让部分权重变为0)。 L2 正则化 (常见于AdamW、SGD):防止权重过大,减少过拟合。 Dropout (随机丢弃神经元): 训练时随机让部分神经元失效,防止神经元对特定模式的过度依赖。 **Batch Normalization / Layer Normalization:**归一化输入分布,提高训练稳定性,减少对特定样本的过拟合。

推荐阅读:

hyshhh:李沐ResNest:残差网络(resnet)经典改进深入解析------Split-Attention Networks。

hyshhh:【论文】ICCV2017------Soft-NMS一种NMS(非极大值抑制)的改进方法

hyshhh:【qzzh感知算法岗面试】NMS------YOLO网络中的NMS(非极大值抑制)算法作用原理

hyshhh:何恺明ResNet(残差网络)------彻底改变深度神经网络的训练方式

相关推荐
圈圈编码2 分钟前
LeetCode Hot100刷题——轮转数组
java·算法·leetcode·职场和发展
虾球xz2 分钟前
游戏引擎学习第286天:开始解耦实体行为
c++·人工智能·学习·游戏引擎
武子康4 分钟前
大语言模型 11 - 从0开始训练GPT 0.25B参数量 MiniMind2 准备数据与训练模型 DPO直接偏好优化
人工智能·gpt·ai·语言模型·自然语言处理
羽凌寒1 小时前
图像对比度调整(局域拉普拉斯滤波)
人工智能·计算机视觉
大模型铲屎官1 小时前
【Python-Day 14】玩转Python字典(上篇):从零开始学习创建、访问与操作
开发语言·人工智能·pytorch·python·深度学习·大模型·字典
一点.点1 小时前
计算机视觉的简单介绍
人工智能·深度学习·计算机视觉
量子-Alex1 小时前
【目标检测】【Transformer】Swin Transformer
人工智能·目标检测·transformer
GISer_Jing1 小时前
AI知识梳理——RAG、Agent、ReAct、LangChain、LangGraph、MCP、Function Calling、JSON-RPC
人工智能
Stara05112 小时前
基于多头自注意力机制(MHSA)增强的YOLOv11主干网络—面向高精度目标检测的结构创新与性能优化
人工智能·python·深度学习·神经网络·目标检测·计算机视觉·yolov11
YuSun_WK2 小时前
目标跟踪相关综述文章
人工智能·计算机视觉·目标跟踪