首页 > 其他分享 >记录一次简单的模型训练分析过程

记录一次简单的模型训练分析过程

时间:2024-07-22 09:56:10浏览次数:22  
标签:map 训练 no -- 模型 记录 mask 数据

image

本篇是自己学习过程中的记录,使用的数据集比较小,主要是为了代码分析和简单的提点。代码分析的部分在之前的文章中已经总结了,本篇主要是结果分析和提升map的一些尝试,入门阶段,高手请绕行。

数据集

目标:口罩
标签:mask, no-mask
图片数量:149
训练集:123个
验证集:46个
来源:https://app.roboflow.com/yolo-e1ffu/mask-lcllo/2

baseline模型训练

参数:
训练框架:yolov5
模型:yolov5s
显卡:4090
训练命令:

python train.py --data mask/data.yaml --weights yolov5s.pt --cfg models/yolov5s.yaml --epochs 100 --batch-size 24

结果分析:
分析训练的结果,首先看损失曲线。损失曲线都稳定下降,并最终处于一个水平的范围,损失函数、学习率等参数正常。然后看PR曲线,P曲线有点震荡,R曲线正常,随着训练次数逐渐上升。最后看map。mask的map为0.893属于正常,no-mask的map为0.175偏小。
从混淆矩阵来看,no-mask被识别成mask为0.25,这个指标有点偏高,no-mask被识别成background为0.1,也有点高,也就是漏检高。

思路:no-mask的map是主要问题,能够提高no-mask的map就能大幅提高整体map。

分析数据集发现no-mask标签的数据偏少,所以需要增加对应数据集。

第一次增加数据集

标注不带口罩的数据集18张,1:1分为训练集和验证集。

训练:

分析:
粉红色为本次训练,可以看到训练的效果相比较上一次较好。从map来看,从0.534提高到0.711。主要是no-mask类别的map从0.175提高到0.543。

第二次增加数据集

继续新增no-mask相关数据集,共17张。

训练:

分析:
混淆矩阵的变化,no-mask的正检升高,漏检都下降到0.07

将整体map从0.711增加到0.919,no-mask的数据集从0.543上升到0.939。

总结

记录map变换

训练记录 [email protected] mask map no-mask map
baseline 0.534 0.893 0.175
1.0 0.711 0.88 0.543
2.0 0.919 0.9 0.939

增加数据集是提高map的一种重要方法,特别是在数据集较少的情况下

标签:map,训练,no,--,模型,记录,mask,数据
From: https://www.cnblogs.com/goldsunshine/p/18315451

相关文章

  • 第一本给程序员看的AI Agent图书重磅上市!<大模型应用开发 动手做 AI Agent>!!!
    AIAgent火爆到什么程度?OpenAI创始人奥特曼预测,未来各行各业,每一个人都可以拥有一个AIAgent;比尔·盖茨在2023年曾预言:AIAgent将彻底改变人机交互方式,并颠覆整个软件行业;吴恩达教授在AIAscent2024演讲中高赞:AIAgent是一个令人兴奋的趋势,所有从事AI开发的人都应该关注。......
  • 定义LSTM 模型
    定义LSTM神经网络模型classLSTM(nn.Module):"""Parameters:-input_size:输入特征数-hidden_size:单个隐藏层的节点数-output_size:输出特征数-num_layers:隐藏层数"""def__init__(self,input_siz......
  • 如何从命令行设置日志记录级别
    我使用argparse从命令行获取日志记录级别,然后将其作为logging.basicConfig的输入传递。然而,我试图实现这一点的方式不起作用。有什么建议吗?期望的行为,来自命令行:pythonmain.py-log=DEBUG期望的输出DEBUG:__main__:Debugisworking代码importloggingimp......
  • 如何使用 LSTM 改进法语文本生成模型?
    我正在用Python开发生成式人工智能,使用LSTM模型来处理与法语法律文本相关的查询。我面临输出问题,因为它们要么没有用法语正确处理,要么不准确。我尝试添加更多LSTM层,仅保留最小化作为预处理,但我生成的输出缺乏质量和准确性,您可以在下面的屏幕截图。对于改进我的文本......
  • 清华训练营预选赛 赛后总结
    汉明码的精髓在于,既然你无法分辨更改检验位的情况,就把检验位放到冲突的位置,消掉那一位位运算的性质:a+b=(a|b+a&b)\(a\oplusb\oplus0\)+\(a\oplusb\oplus(111…11)\)=111…11其实D题才是最简单的题目,比赛的整体难度低于省赛,明年还参加的话开场或许可以考虑和队友分工增进......
  • 利用【MATLAB】和【Python】进行【图与网络模型】的高级应用与分析】
    目录一、图与网络的基本概念1.无向图与有向图2.简单图、完全图、赋权图3.顶点的度4.子图与连通性5.图的矩阵表示MATLAB代码实例Python代码实例 二、最短路径问题1.最短路径问题的定义2.Dijkstra算法MATLAB代码实例Python代码实例三、最小生成树问题1.......
  • 代码随想录训练营 Day4打卡 链表part02 24. 两两交换链表中的节点 19.删除链表的倒数
    代码随想录训练营Day4打卡链表part02一、力扣24.两两交换链表中的节点给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。示例1:输入:head=[1,2,3,4]输出:[2,1,4,3]算法思路:引入虚......
  • 基于gunicorn+flask+docker模型高并发部署(详细教程)
    关注我,持续分享逻辑思维&管理思维&面试题;可提供大厂面试辅导、及定制化求职/在职/管理/架构辅导;推荐专栏《10天学会使用asp.net编程AI大模型》,目前已完成所有内容。一顿烧烤不到的费用,让人能紧跟时代的浪潮。从普通网站,到公众号、小程序,再到AI大模型网站。干货满满。学成后可......
  • 时间序列分析方法汇总对比及优缺点和适用情况(下)-- 11. 卡尔曼滤波 12. 广义自回归条件
    目录11.卡尔曼滤波(KalmanFilter)12.广义自回归条件异方差模型(GARCH)13.贝叶斯结构时间序列模型(BayesianStructuralTimeSeries,BSTS)14.动态因子模型(DynamicFactorModel,DFM)15.隐马尔科夫模型(HiddenMarkovModel,HMM)16.分段线性回归(PiecewiseLinearRegress......
  • ffmpeg内存模型
    FFmpeg内存模型在FFmpeg中,当从现有的Packet拷贝一个新Packet时,有两种情况:数据共享:两个Packet的buf引用的是同一数据缓存空间。这种情况下,需要注意数据缓存空间的释放问题。一个数据块同时被两个AVPacket(avpacket1和avpacket2)引用。此时,两者持有的是同一数据。数据独立:两个P......