请查收!“全国大学生智能汽车竞赛”线上赛备赛指南

「全国大学生智能汽车竞赛」是教育部倡导的大学生科技A类竞赛,中国高等教育学会将其列为含金量最高的大学生竞赛之一。截至2023年,已经举办十八届,比赛每年吸引包括清华、上交、复旦、北航等500多所高校,超10万名大学生参加,是提升学生创新实践能力和培养团队精神的国家级创意性科技竞赛。

​完全模型组作为比赛中深入使用人工智能技术的竞速组别,在竞赛中引入了更多人工智能元素和技术,受到越来越多学生与高校教师们的欢迎。

为了让大家从线上练习赛的学习与实践中,积累更多深度学习经验与科学方法论,我们为大家准备了培训直播课和新手教程,干货满满。

线上赛培训,本周六见!

  • 培训时间: 2024年3月2日11:00
  • 线上链接: 加入官方社群获取
  • 培训讲师: 百度飞桨开发者技术专家(PPDE)、前百度飞桨北京领航团团长郑博培
  • 培训内容: 目标检测任务从入门到进阶

除直播课之外,河池学院飞桨领航团团长黄德攒也为大家梳理了深度学习入门实践和线上赛打榜的流程,快来一睹为快。

深度学习入门实践6步走,暨线上赛打榜流程

第一步:环境配置

git clone https://gitee.com/PaddlePaddle/PaddleDetection.git -b develop

建议使用develop分支哦!部分情况下需要使用release2.3.2以前的分支。

第二步:安装依赖

# 安装PaddleDetection
%cd PaddleDetection
!pip install -r requirements.txt# 编译安装paddledet
!python setup.py install
%cd ~

第三步:数据准备

  • 解压官方数据集Car2024
# 解压数据集
!unzip -oq /home/aistudio/data/data257994/Car2024.zip
  • 生成标签文件(训练集train.txt以及验证集val.txt)
  • 将VOC格式标签文件转换成COCO格式(.json)标签文件(训练集train.json与验证集val.json)
  • 瞅一眼转换是否成功
  • 确定你的数据集的路径
  • 根据数据集的路径,修改如下文件PaddleDetection/configs/datasets/coco_detection.yml
TrainDataset:name: COCODataSetimage_dir: Images                                            #更改为你的图像数据文件夹的名字anno_path: train.json                                         #训练集标签文件,一般情况下转换后生成在数据集文件夹的根目录下dataset_dir: /home/aistudio/work/data3374                #数据集位置data_fields: ['image', 'gt_bbox', 'gt_class', 'is_crowd']EvalDataset:name: COCODataSet                                          #解释如上image_dir: Imagesanno_path: val.jsondataset_dir: /home/aistudio/work/data3374allow_empty: trueTestDataset:name: ImageFolderanno_path: val.json                                 dataset_dir: /home/aistudio/work/data3374

第四步:参数调整与模型训练

# 模型训练
%cd ~
%cd PaddleDetection
!python tools/train.py -c configs/picodet/picodet_m_320_coco_lcnet.yml

picodet_m_320_coco_lcnet.yml中,各个超参数的值不同可能导致模型结构、精度、效果有出入。

_BASE_: ['../datasets/coco_Car2024.yml','../runtime.yml','_base_/picodet_v2.yml','_base_/optimizer_300e.yml','_base_/picodet_320_reader.yml',
]# 模型权重路径,模型保存的地方哦
weights: output/picodet_m_320_coco/best_model# 在反向传播时查找未使用的参数以提高内存利用率
find_unused_parameters: True# 是否使用指数移动平均来稳定模型的训练
use_ema: true# 总训练轮数
epoch: 300  # 调大可能提高模型性能,但也可能导致过拟合,训练时间增加# 每隔多少个epoch保存一次模型的快照
snapshot_epoch: 10  # 调大可能减少存储开销,但增加训练时间# 训练时的读取器配置
TrainReader:batch_size: 48  # 调大可能提高训练速度,但可能导致 GPU 内存不足# 学习率相关配置
LearningRate:# 基础学习率base_lr: 0.24  # 调大可能加速模型收敛,但也可能导致发散# 学习率调度策略schedulers:- !CosineDecaymax_epochs: 300  # 余弦退火策略,学习率在300轮内进行余弦退火- !LinearWarmupstart_factor: 0.1  # 预热学习率的初始比例steps: 300  # 预热所需的步数
  • 不小心中断训练后,重新恢复训练
python tools/train.py    -c configs/picodet/picodet_m_320_coco_lcnet.yml --eval  -r output/picodet_m_320_coco/best_model

第五步:模型测试

%cd ~
%cd PaddleDetection
# 更换"--infer_img"里的图片路径以预测不同的图片
!python tools/infer.py -c configs/picodet/picodet_m_320_coco_lcnet.yml--infer_img=/home/aistudio/Car2024/images/crosswalk74.jpg--output_dir=infer_output/ --draw_threshold=0.5 -o weights=/home/aistudio/PaddleDetection/output/picodet_m_320_coco_lcnet/你的最新模型权重文件. pdparams  --use_vdl=Ture

第六步:模型导出与提交

  • 训练模型过程中会产生一些中间模型即checkpoints,需要将最优模型文件导出:
%cd ~
%cd PaddleDetection
# 将"-o weights"里的模型路径换成你自己训好的模型
!python tools/export_model.py -c configs/picodet/picodet_m_320_coco_lcnet.yml-o weights=/home/aistudio/PaddleDetection/output/picodet_m_320_coco_lcnet/best_model TestReader.fuse_normalize=true
  • 最后一步就是提交内容的整理:将文件夹进行调整,并将放置依赖文件的PaddleDetection文件夹中无关内容进行删除,最终的文件形态如下所示(模型名称根据自己的情况而定):

线上练习赛常见问题整理

  • error① :list index out of range

错误可能的出现原因:    1.模型的标签配置与模型不匹配    2.数据集有问题    3.模型导出时对应权重与对应的config文件不一致

  • error② :the predict.py script failed to run

    解决办法:1.检查和调整env(依赖库,常为PaddleDetection文件夹);2.检查 predict.py 中的路径配置

  • 安装PaddleDetection时的版本关联明确

  • 线上赛路径图

作者:河池学院飞桨领航团团长黄德攒

并同时致谢群内:中二短尾猫

校对:Jungle

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/508961.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用 Docker 部署 GLPI 资产管理系统

1)GLPI 介绍 GLPI 简介 参考: https://github.com/glpi-project/glpi 官方文档:https://glpi-project.org/documentation/ 中文文档:https://glpi-install.readthedocs.io/zh-cn/latest/ GLPI 提供功能全面的IT资源管理接口&…

Matlab 机器人工具箱 运动学

文章目录 R.fkine()R.ikine()R.ikine6s()R.ikuncR.jacob0、R.jacobn、R.jacob_dotjtrajctraj参考链接 官网:Robotics Toolbox - Peter Corke R.fkine() 正运动学,根据关节坐标求末端执行器位姿 mdl_puma560; % 加载puma560模型 qz % 零角度 qr …

Synchronized 详解(一)

在C程序代码中我们可以利用操作系统提供的互斥锁来实现同步块的互斥访问及线程的阻塞及唤醒等工作。在Java中除了提供Lock API外还在语法层面上提供了synchronized关键字来实现互斥同步原语,本文将对synchronized关键字详细分析。 带着问题去理解Synchronized 提示 请带着这…

【.NET Core】.NET中的流(Stream)

【.NET Core】.NET中的流(Stream) 文章目录 【.NET Core】.NET中的流(Stream)一、流(Stream)1.1 FileStream类1.2 IsolatedStorageFileStream类1.3 MemoryStream类1.4 BufferedStream类1.5 NetworkStream类…

喜迎乔迁,开启新章 ▏易我科技新办公区乔迁庆典隆重举行

2024年1月18日,易我科技新办公区乔迁庆典在热烈而喜庆的氛围中隆重举行。新办公区的投入使用,标志着易我科技将以崭新姿态迈向新的发展阶段。 ▲ 易我科技新办公区 随着公司业务的不断发展和壮大,为了更好地适应公司发展的需要,…

Cesium 3D Tiles 简介

3D Tiles 是大规模异构 3D 地理空间数据集(例如点云、建筑物和摄影测量)的开放标准。3D Tiles 基于 glTF 和其他 3D 数据类型构建,是一种可类似二维瓦片模式的流式传输的优化格式,旨在适应当今不断增长的 3D 地理空间数据集的渲染…

ControlNet作者新作LayerDiffusion,让SD直接生成生成透明图像,堪比商用抠图软件

ControlNet作者又出新工作,这次的工作LayerDiffusion它使得大规模预训练的Stable Diffusion能够生成透明图像。该方法允许生成单个透明图像或多个透明图层,效果堪比商业产品Adobe Stock。而且LayerDiffusion和ControlNet一样支持基于SD微调的模型。 &quo…

【基于Matlab GUI的语音降噪系统设计】

客户不要了,挂网上吧,有需要自行下载~ 赚点辛苦费 ** 功能实现: ** 1、导入音频文件/录入音频,能实现播放功能。 2、对导入/录入的音频信号进行时域和频域分析,并制图。 3、可在导入/录入的音频信号上加入噪声,并能够播…

【外汇天眼】外汇交易风险预警:吊销牌照与高风险平台一览

监管信息早知道!外汇天眼将每周定期公布监管牌照状态发生变化的交易商,以供投资者参考,规避投资风险。如果平台天眼评分过高,建议投资者谨慎选择,因为在外汇天眼评分高不代表平台没问题! 以下是监管牌照发生…

Tomcat服务部署优化

目录 一.Tomcat的基本内容 1.概念 2.构成 (1)web容器 (2)servlet容器(catalina) (3)JSP容器 3.Tomcat顶层架构 (1)Tomcat中最顶层的容器是Server&…

【Matlab深度学习】详解matlab深度学习进行时间序列预测

🔗 运行环境:Matlab 🚩 撰写作者:左手の明天 🥇 精选专栏:《python》 🔥 推荐专栏:《算法研究》 🔐#### 防伪水印——左手の明天 ####🔐 💗 大家…

【大厂AI课学习笔记NO.59】(12)过拟合与欠拟合

拟合就是调整参数和模型,让结果无限接近真实值的过程。 我们先来了解个概念: 偏差-方差窘境(bias-variance dilemma)是机器学习中的一个重要概念,它涉及到模型选择时面临的权衡问题。 偏差(Bias&#xf…