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

PaddlePaddle 模型训练技巧

一、损失函数使用权重

损失函数中,针对不同类别使用不同的权重,可以有效解决数据类别不均衡的问题。语义分割常见的损失函数,比如 CrossEntropyLoss 和 DiceLoss,都支持设置权重。

举例如下,如果背景和前景像素分别标注为 0 和 1,则可以在 CrossEntropyLoss 字段中设置 weight,分别表示对应下标类别的权重大小。注意,weight 的长度需要等于类别数。coef 是损失函数外部参数。

loss:types:- type: CrossEntropyLossweight: [0.2, 0.8]coef: [1]

二、模型 Backbone 和 Head 使用不同的学习率

很多分割模型 Backbone 是加载大规模数据集上预训练的权重,所以 Backbone 模块的学习率可以比 Head 模块的学习率更小一些。在 optimizer 配置字段中设置 backbone_lr_mult,可以设置模型 Backbone 和Head 使用不同学习率。举例如下,backbone 模块的学习率是 learning_rate * backbone_lr_mult,其他模块的学习率是 learning_rate。

optimizer:type: sgdmomentum: 0.9weight_decay: 4.0e-5backbone_lr_mult: 0.1lr_scheduler:type: PolynomialDecaylearning_rate: 0.01end_lr: 0power: 0.9

三、线性学习率热身 Warmup

线性学习率热身 (Warmup) 是对学习率进行初步调整,在正常调整学习率之前,先从小逐步增大学习率。在 lr_scheduler 配置字段中设置 warmup_iters 和 warmup_start_lr,开启线性学习率热身 Warmup。warmup_iters 表示 Warmup 的轮数,warmup_start_lr 表示最开始学习率,更多信息请参考文档。

lr_scheduler:type: PolynomialDecaylearning_rate: 0.01end_lr: 0power: 0.9warmup_iters: 1500warmup_start_lr: 1.0e-6
http://www.lryc.cn/news/618644.html

相关文章:

  • Emscripten 指南:概念与使用
  • 《Qwen2.5-VL 》论文精读笔记
  • SpringMVC的原理及执行流程?
  • vue excel转json功能 xlsx
  • 如何简单捋一遍LLM结构
  • 【MAUI】在 .NET MAUI 中实现全局异常捕获的完整指南
  • 全国产飞腾d2000+复旦微690t信号处理模块
  • 「ECG信号处理——(23)基于ECG和PPG信号的血压预测」2025年8月12日
  • Android领域驱动设计与分层架构实践
  • 【Unity3D实例-功能-下蹲】角色下蹲(二)穿越隧道
  • 【vue(二)Vuex】
  • 解决微前端子应用嵌入后样式被覆盖
  • C++11语法(2)
  • python判断当天是否是当月最后一天
  • Python 常用的正则表达式
  • 未解决|服务的注册与发现|一个api怎么调用到另一个服务的API
  • Spring Boot部署万亿参数模型推理方案(深度解析)
  • gpt-5与gpt-5-fast
  • SQL 与 NoSQL 的核心区别
  • 力扣-739.每日温度
  • 高效解耦:自定义内核链表实现指南(简化版)
  • Java进阶学习之不可变集合
  • 数据分析学习总结之实例练习(双十一淘宝美妆)
  • 非凸科技受邀参加Community Over Code Asia 2025 Rust分论坛
  • C#教程之NPOI读写excel文件XLS,XLSX格式
  • FPGA自学——FIFO缓存器
  • VisionPro——1.VP与C#联合
  • 初识数据结构——优先级队列(堆!堆!堆!)
  • 模板打印技术——Office XLS 打印模板:为政务土地确权定制的纸张替换利器—仙盟创梦IDE
  • LE AUDIO---Volume Control Service