赞
踩
channels:
- defaults
show_channel_urls: true
channel_alias: https://mirrors.tuna.tsinghua.edu.cn/anaconda
default_channels:
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
ssl_verify: true
为yolo创建一个python 3.8的虚拟环境,取一个名字。
以我的电脑为例:
点击“系统信息”—>“组件”,然后看第三行的信息“Nvidia CUDA 11.6”
了解到自己电脑的CUDA信息后进入英伟达官网NVIDIA Developer
英伟达只允许开发人员下载相关工具,所以下载之前要注册一个官网的账号
进入以前的CUDA版本和存档,找到自己对应的CUDA版本
选择exe(local)下载,下载内容大概2—3G。安装时候不要修改安装路径并且选择自定义安装,把相关组件全部选上。安装完成后输入nvcc -V检查一下,能出现cuda信息就代表安装成功。
环境变量也自动配置好了。
cuDNN Archive | NVIDIA Developer
cudnn下载后好解压下来,把解压后的文件除了txt文件,全部复制到cuda的安装目录下
以我的为例:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6
然后配置cudnn的环境变量,找到Path双击进入
到这一步我们的提前准备做好了。
进入pytorch官网,找到与cuda对应的版本,以我的为例 cuda 11.6
找到11.6,官网会自动给你匹配命令,我这里是conda安装,官网下面还会给出pip的安装方法。我自己用的pip安装,先进入之前的虚拟环境然后复制粘贴这个命令。安装包很大且很多,建议使用良好的网络环境下进行
可以尝试用国内源安装
下载可能不会一次成功,建议多试几次,我本人也是下载了十几次才成功。成功的路上少不了耐心。
torch 1.13.1+cu116
torchaudio 0.13.1+cu116
torchvision 0.14.1+cu116
我个人建议先安装ultralytics,因为它会帮你下载cpu版本的pytorch。安装ultralytics后卸载pytorch,然后执行上面第3步安装gpu版本。
直接pip安装:
pip install ultralytics --upgrade -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install ultralytics
pip install -e ultralytics
我给出了三条命令,都可以试试
打开虚拟环境:
- import ultralytics
- ultralytics.checks()
成功显示yolo版本信息,并且后面还有GPU信息。
- import torch
- print(torch.__version__)
- print(torch.cuda.is_available())
- print(torch.cuda.device_count())
这个是验证pytorch的,查看是否支持GPU,运行结果如下:
到这一步我们的配置环境全部准备完成。
先下载好压缩包,我们的训练是跟这个数据集紧密相关的。把我们之前下载好的ultralytics压缩包解压,然后用pycharm打开,在根目录创建datasets文件夹:
然后把解压的coco128复制到该文件夹,里面还有一个yumi文件夹,这是我自己训练用的。大家可以根据自己的训练内容取一个名字。这个yumi文件夹下的文件跟coco128的文件格式类似。
如图查看文件结构:
coco128内的文件就不用管了,我们只是借鉴它来创建自己的文件格式。同样的,我们在yumi文件夹下创建images和labels、txt。
我们继续在images和labels下创建train2017和val2017。val主要是训练完后验证用的,我们暂时不管。images/train2017文件夹下全部是训练用的图片,labels/train2017文件夹下全部是图片的标签信息,与images/train2017的图片一一对应。train2017.cache不用管,训练后系统自动生成。这里是我已经训练过了。
打开ultralytics/cfg/datasets,找到coco128
coco128.yaml文件如下:
在txt文件夹下创建自己的yaml文件,我自己的取名为my_data.yaml
将coco128.yaml内的内容复制粘贴到自己的yaml文件中,然后只需要修改一下路径和标签类就可以了。以我的为例:
建议使用绝对路径,不要使用相对路径。path路径就是你根据训练内容自己创建的文件夹,我自己的为yumi。names:下面我只有三个标签类,分别是huiban、xiubing、yeban。
打开这个v8,下面有很多yaml文件,我们要用的是yolov8n.yaml,但是这里似乎没有。
打开yolov8.yaml,里面有n、s、m、l、x 四种类型,我们选择n模型。
我们还需要预训练模型,github上官网提供了下载方式:
下载完成后可以开始训练了。
yolo detect train data=datasets/yumi/txt/my_data.yaml model=yolov8n.yaml pretrained=C:/Users/Administrator/Desktop/ultralytics-main/yolov8n.pt epochs=200 batch=2 lr0=0.01 resume=True
data:指向自己的yaml文件
model:指向yolov8.yaml文件
pretrained:指向预训练模型
epochs、batch、lr、resume根据自身情况设置,这些参数的具体含义可以在yolo官网上了解,不再赘述。batch建议不要太高,否则容易爆显存,我自己设置为2。
跑完之后在runs下生成一些文件,其中包括训练出的 .pt模型,best.pt就是我们的最终模型。
还有很多问题没有指出,内容上可能也存在很多错误,欢迎大家评论区指出!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。