赞
踩
必须得记录一下了,花了4个小时的时间终于成功白嫖kaggleGPU使用YOLO v5训练了自己的数据集。作为一个没有显卡的穷逼的深度学习小白,学会如何白嫖云GPU是十分重要的,借此分享给同样没有显卡的深度学习er参考。
在训练模型前,需要将自定义数据集转换成使用的源码中需要的数据集格式。这里以转换成YOLO v5的数据集格式为例。
使用工具有很多,我这里用roboflow。使用教程可以看看这个博主写的使用 roboflow 将自己的数据集转化为 YOLOv5 所需的格式。这里我假设大家已经得到了一个标注完毕的数据集。这里我用某个从kaggle上拿的数据集为例。下面是我刚从kaggle上获取的数据格式。(images是.png,annotations都是xml格式文件):
通过转换后变成下面这样(这里使用roboflow分隔成了train,valid,test):
现在打开转换后得到的文件夹中data.yaml文件(yaml是一个类似于xml的文件,打开用记事本等等都行),我们可以看到刚转换完是下面这个样子:
train: ../train/images
val: ../valid/images
test: ../test/images
nc: 3
names: ['mask_weared_incorrect', 'with_mask', 'without_mask']
roboflow:
workspace: project-zmadc
project: normal-gifid
version: 1
license: CC BY 4.0
url: https://universe.roboflow.com/project-zmadc/normal-gifid/dataset/1
这时候我们需要更改一下前四行,其他的不用动变成:
path: /kaggle/input/你的数据集名称/ #(源码就是从这个路径找你的数据集的!!)
train: train/images
val: valid/images
test: test/images
nc: 3
names: ['mask_weared_incorrect', 'with_mask', 'without_mask']
roboflow:
workspace: project-zmadc
project: normal-gifid
version: 1
license: CC BY 4.0
url: https://universe.roboflow.com/project-zmadc/normal-gifid/dataset/1
必须要导入到/kaggle/working中去,其他的就算导入进去也是会变成仅可读文件
其实kaggle的notebook也就是一台服务器,虽然不能进入,但是我们可以通过notebook执行Linux命令行
1.clone GitHub项目。先初始化!git init
,再clone 项目git clone xxx
2.(视情况执行)由于我们使用的是YOLO v5源码,所以我们需要下载YOLO v5相关的包,通过命令!pip install -r /kaggle/working/yolov5-master/requirements.txt
3.到这里就完事了,可以执行啦!!!
下面是执行YOLO v5的示例图:
完事后权重文件啥的就可以根据打印的提示下载了!!真香啊!!
上面两个重点是容易出错的地方!!需要特别注意!!这些都是我吃了不少苦头才找到的真正简单可行的白嫖方案。当然有钱的话其实也可以去买张显卡或者租个云服务器。
若有不足之处请各位直接指正,我定会虚心学习和改正!!谢谢!!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。