0


如何在Kaggle上利用免费Gpu训练Yolox的模型

本文不包含Kaggle的入门步骤,如何上传数据集,如何选择GPU自行学习

文章目录


开头的话

本文所用yolox的代码来自bubbliiing的pytorch yolox项目 

链接:https://blog.csdn.net/weixin_44791964/article/details/120476949


先上一张训练过程的图片
在这里插入图片描述

一、Kaggle的使用

1、为什么选择Kaggle

Kaggle是一个可以免费白嫖的算力平台,支持每周30h的gpu训练和每周20h的tpu训练,无论时用pytorch,tensorflow,还是Keras都已经提前支持好了。
对比其他免费的算力平台,这个平台是没有显卡训练或则不想损伤自己电脑显卡的优选。
但是对比国内openbayes操作难度略大,相对于百度飞桨来说不错(虽有免费算力,却只支持panddle,安装其他环境会被中断,训练无法连贯)

2、Kaggle的操作难度


**一、Kaggle跟其他平台一样有input和output两个子文件,但是input文件夹里

只可读取

,output文件夹里的数据

只可写入

,意思就是每次上传数据集和代码只能写好无错误才可以用,否则就只能在本地环境改好后重新上传。
二、因为input只可read和output只可write的关系,所以在input文件夹里是不可以进行文件复制和转移的,但是你却可以通过`以下代码进行复制**

import shutil
shutil.copytree(r'../input/yours', r'./yours')

**在kaggle中的路径中

./

就是

/Kaggle/output

,在yolox的项目中,含有太多py文件,在output文件里是没有python文件的(我试了两三次,不知道是什么原因,有知道的小伙伴可以帮帮)**
3、正确的操作方式
既然python文件在output中不可以用,那么就只能在input操作了。针对yolox的代码,我们只需要更改输出路径就可以操作了。
这里的输出路径我写的是

/Kaggle/output/logs

二、Yolox代码的更改

1.train.py更改

更改部分为更改save_dir的路径

    #------------------------------------------------------------------#
    save_dir            ='/kaggle/working/los'     
    #------------------------------------------------------------------#

2.callbacks.py部分更改

**

这里的更改只是确保代码在全程运行的时候不报错,实际上将map图像的路径与train的路径重复了,训练时不会生成map的图像和txt文件,如果有需求,可以自行更改路径:

**

self.map_out_path       = log_dir

3、训练数据的路径更改

以下只包含对VOC数据的路径更改,在2007_train.txt和2007_val.txt进行更改
在这里插入图片描述
在kaggle上传数据集时要自己命名,这里的blueball是我自己dataset的命名。

4、正式训练

更改完所以需要更改的路径,就可以正式训练了
一、切换到input路径
cell中输入

import os
if os.path.basename(os.getcwd())=='working':
    os.chdir('../input/blueball/yolox-pytorch-main')print('current working directory is {}'.format(os.getcwd()))print(os.getcwd())print(os.listdir(os.getcwd()))

或者

cd /kaggle/input/blueball

二、运行train.py程序

!python3 train.py

然后就可以看到训练提示了
在这里插入图片描述


末尾的话

由于本人也是新手,文章说明部分可能会有不清楚的部分,欢迎小伙伴们指出
最后附上一张呆呆兽的图片,希望有需求的小伙伴们能够顺利训练!!!!


本文转载自: https://blog.csdn.net/qq_62096941/article/details/124913584
版权归原作者 呆呆兽老师 所有, 如有侵权,请联系我们删除。

“如何在Kaggle上利用免费Gpu训练Yolox的模型”的评论:

还没有评论