最近想训练一个模型,奈何自己电脑的GPU太拉胯根本带不动,用cpu跑跑一整天才跑完一个epoch,真的心累,于是乎,我把目光投向了云GPU。然后kaggle的云GPU瞬间吸引了我的目光,好家伙,不要钱还好操作,这波羊毛难道不薅?!冲冲冲!!!

kaggle官网: 地址

(一)注册

虽说薅羊毛很快乐,但是刚开始薅的时候还是要花点儿功夫的,注册的时候我就折腾了一会儿。
1.点击右上角“Register”注册
2.选择邮箱
3.人机验证
这里一直让我填写验证码:Captcha must be filled out。我死活都刷不出验证,根本就没有让我填验证码的地方。于是我参考了这篇博客:kaggle注册方法

4.填写验证码
这时候就能刷新出来人机验证了,人机验证之后会向你发送验证码,注意自己邮箱接收的邮件。填写完验证码就注册成功了,然后就可以登录kaggle了。

(二)创建nootbook

登录进去之后就是你的主页,点击create来创建自己的nootbook:
在这里插入图片描述

创建好之后就是这样,可以给你的notebook取个名字:
在这里插入图片描述

(三)上传数据集

因为我想用自己的数据集来训练,所以需要本地上传自己的数据集。当然也可以使用kaggle上的数据集。
1.单击右上方的Add data
在这里插入图片描述
这时候出现的界面显示你可以上传一个dataset或者添加kaggle上的dataset
在这里插入图片描述
2.上传自己的数据集
点击upload a dataset,为你的dataset取个名字,然后选择browse files上传文件。最好将文件压缩之后上传,这样比较快。上传压缩包后kaggle会自动解压。
在这里插入图片描述
上传完成之后点击Create
在这里插入图片描述
这时候出现这个界面,这会儿正在处理你的数据集,不要点击别的地方,不然小心前功尽弃。
在这里插入图片描述
3.查看自己的数据集
在Data的Input里面可以查看到自己上传的数据集,kaggle已经解压好了:
在这里插入图片描述

(四)编写代码开始训练

我是本地写好了代码,原本我想省事儿直接将我本地的python文件上传上去运行,但是由于文件中的路径不符合文件在kaggle上的路径,而且一旦上传了文件就无法在kaggle上进行修改了,所以我折腾了几次放弃了,选择在notebook中重新写代码。
附:有的博文讲到可以通过git将自己的代码上传到github上,然后gitclone可以运行自己的代码,但是这个方法我没有研究。想通过这个方法运行自己代码的可以研究研究。

1.在notebook里编写代码
为了省事儿,我直接把写好的python代码复制粘贴到notebook中。如果你也先这样操作,注意粘贴过去的代码中的,原本从本地导入的包,这时候就不要出现了。比如我这里的:在本地是从nets文件夹下的unet文件中导入UNet类,像这种语句就不要出现了,直接注释就成。
在这里插入图片描述
这里多说一嘴,如果你要是粘代码去运行,注意按自己代码的执行顺序粘贴,这样你可以直接run all去执行cell中的代码,如果不按顺序那你单独逐个执行cell也行。
2.配置运行环境
在settings里配置环境:
在这里插入图片描述
如果想要使用GPU加速的话,在Accelerator选择GPU。如果是第一次用的话,会出不来这个选项,需要你手机号验证,然后按照它的提示按步骤验证一下即可。
在这里插入图片描述

3.运行
写好代码配好环境后,单击run就可以运行,单个符号的是run current cell,双符号的是run all在这里插入图片描述
在下面的console里可以看到运行输出结果
在这里插入图片描述
可以查看设备情况
在这里插入图片描述
4.离线训练
参考文章:地址
如果训练模型需要很久,这时候就要后台跑了,并且要保存训练出来的模型。
点击右上角的Save Version,给version取个名,注意这里底下的要选择Save & Run All(不过它默认选项就是这个)在这里插入图片描述
在左下角的Advanced Settings设置Version,按需选择:
在这里插入图片描述
之后点击save保存。
这时候左下角的活动就会出现各个的保存:
在这里插入图片描述
5.注意
1)每个账号每周只有36h的GPU加速时间
2)有的参考文章说只能连续跑9h,这个我没有验证,我开完训练之后就去睡觉了,早上的时候项目运行确实中断了,提示说cannot fetch,我不知道是这个只能连续跑9h的原因,还是我们学校断网的原因。
3)有的参考文章说如果选择GPU加速连续运行的时间更短,这个我也没有验证。

(五)查看输出结果

打开之前创建的notebook,就可以查看相关信息了。
在这里插入图片描述
在data里可以看到训练的输出
在这里插入图片描述

(六)下载输出结果

我想要把训练的权值文件下载下来,可以直接点击权值文件并下载,也可以下载整个文件夹,但是下载整个文件夹会很慢,参考这篇博客:地址
对输出文件进行压缩,然后下载

(七)总结

不得不说,kaggle真的好用。接下来有空准备研究怎么使用git/gitclone运行写好的代码。
谢谢kaggle!
在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐