YoloV5训练自己的数据集(CPU与GPU)

记录学习yolov5踩过的坑,yolov5的特点之一就是权重文件非常之小,可以搭载在配置更低的移动设备上.

写在开始配置之前-新手必看
CUDA
CUDA(Compute Unified Device Architecture,统一计算设备架构),是显卡厂商NVIDIA在2007年推出的并行计算平台和编程模型。它利用图形处理器(GPU)能力,实现计算性能的显著提高。CUDA是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题,从而能通过程序控制底层的硬件进行计算。它包含了CUDA指令集架构(ISA)以及GPU内部的并行计算引擎。开发人员可以使用C/C++/C++11语言来为CUDA架构编写程序。CUDA提供host-device的编程模式以及非常多的接口函数和科学计算库,通过同时执行大量的线程而达到并行的目的。

Pytorch
Pytorch是torch的python版本,是由Facebook开源的神经网络框架,专门针对 GPU 加速的深度神经网络(DNN)编程。Torch 是一个经典的对多维矩阵数据进行操作的张量(tensor )库,在机器学习和其他数学密集型应用有广泛应用。与Tensorflow的静态计算图不同,pytorch的计算图是动态的,可以根据计算需要实时改变计算图。但由于Torch语言采用 Lua,导致在国内一直很小众,并逐渐被支持 Python 的 Tensorflow 抢走用户。作为经典机器学习库 Torch 的端口,PyTorch 为 Python 语言使用者提供了舒适的写代码选择。
 

首先对于初学者来说最难的就是配置环境,在学习之前这里建议大家看看自己的电脑有没有独立显卡,用GPU跑模型比CPU快的非常多。配置环境在网上和B站有很多教程,慢慢摸索下来就知道了。

YOLOv10(You Only Look Once Version 10)是一种实时目标检测算法,它在YOLO系列中属于较新的版本。如果你想在CPU训练自己的数据集,需要注意以下步骤: 1. **准备环境**:安装必要的库和工具,如TensorFlow、PyTorch等深度学习框架(对于CPU,通常推荐选择CPU优化版本),以及数据处理库(Pandas、OpenCV等)。 2. **数据预处理**:对图像进行标注,将图片转换成模型所需的格式,并将其划分为训练集、验证集和测试集。YOLOv10可能需要多尺度的数据输入。 3. **下载预训练权重**:尽管YOLOv10可以在CPU训练,但初始化网络时可以使用GPU训练得到的权重,这有助于加快收敛速度。例如,从GitHub或其他官方资源获取基础模型的权重。 4. **配置模型**:根据你的数据集调整YOLOv10的超参数,如锚点、类别数、损失函数等。在`yolov10.cfg`文件中进行修改。 5. **编写训练脚本**:使用深度学习框架提供的API编写训练循环,包括前向传播、反向传播、优化器更新等步骤。因为CPU计算能力有限,可能会比GPU训练更慢,所以你可能需要增加batch size并设置适当的迭代次数。 6. **训练过程**:分批逐次加载数据,进行前向传播、计算损失、反向传播和优化。监控训练和验证损失,防止过拟合。 7. **评估和保存模型**:定期在验证集上评估性能,当验证指标达到预期或者停止改善时,保存最优模型。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值