云服务器训练自己的Nanodet模型

云服务器训练自己的Nanodet模型

各位小伙伴,现在显卡超级贵的年代,大家应该学会使用云服务器训练自己的深度学习模型了。
听说nanodet模型非常小,想要跑树莓派,训练一下看看效果。网上的资料都是pytorch平台的,照着做一下。

我使用的是小的服务平台叫易学智能:https://www.easyaiforum.cn/,大家可以使用百度云、阿里云或者华为云。

1、首先先到云服务器平台租一个服务器,一般都是花钱的,可以按时收费。选一个带pytorch平台的系统
云服务器训练自己的Nanodet模型_第1张图片
云服务器训练自己的Nanodet模型_第2张图片

选一个自己觉得适合自己的配置交钱开机。
2、下载好nanodet-main.zip传到服务器上。官方地址:https://github.com/RangiLyu/nanodet 这个地址是我抄的,下载太慢可以用我的链接。https://download.csdn.net/download/rugeweiwu/85453529
开机以后使用上传下载这个功能给传到服务器,这个要快一点,其他方式传也可以。
云服务器训练自己的Nanodet模型_第3张图片
3、要准备好数据集,把数据组成这样的结构就可以,annotations放你的xml文件,imgs里面放对应的图片文件,生成xml文件使用labelImg就可以,这个工具应该都会吧,不会的网上找一下使用方法。我这有工具链接https://download.csdn.net/download/rugeweiwu/85453586,没有的同学可以下载。我的链接里面有exe文件,直接打开就能用。
把图片和xml文件按照比例分到train和valid里面。
云服务器训练自己的Nanodet模型_第4张图片
然后把数据打包也放到云服务器。

4、修改配置文件,
nanodet-main/nanodet/blob/main/config/nanodet_custom_xml_dataset.yml

主要修改几个地方,

云服务器训练自己的Nanodet模型_第5张图片
圈上的位置是你要存放的位置。
云服务器训练自己的Nanodet模型_第6张图片
圈上的是你的数据集的种类。
云服务器训练自己的Nanodet模型_第7张图片
这里放你的对应的分类的名字。
![](https://img-blog.csdnimg.cn/44afe801a46a4b01b4bf849067e1fc3c.png)
这里是你的数据集的路径。
准备好以后要开始训练了
直接进入到nanodet-main文件夹执行命令:python tools/train.py config/nanodet_custom_xml_dataset.yml
就可以运行了。
云服务器训练自己的Nanodet模型_第8张图片
当然中间遇到几个问题,给大家点提醒。
1、AttributeError: module ‘tensorflow._api.v1.io’ has no attribute 'gfile
如果报这个错,那么就是调用了tensorflow里面的tensorboard ,同时这个tensorboard版本又不够高和pytorch不匹配。可以选择安装高版本的tensorflow就搞定了。
使用sudo pip install tensorflow-gpu==2.0就可以。

2、RuntimeError: CUDA out of memory. Tried to allocate 3.6 GiB
据说是这个是你选了便宜的显卡,显存不够了,可以选一个高级的显卡,或者把配置文件的下面这两个位置改成我这个这么小的。
云服务器训练自己的Nanodet模型_第9张图片
3、ModuleNotFoundError: No module named ‘pycocotools._mask’
这个是自找的,应该没人和我一样的,这个是下载好的pycocotools文件夹放到了nanodet-main里面了,我直接删了就可以。

4、下载并且安装protobuf
wget -O protobuf.zip https://github.com/google/protobuf/releases/download/v3.0.0/protoc-3.0.0-linux-x86_64.zip
unzip protobuf.zip
如果嫌太慢可以试一下我的链接。:https://download.csdn.net/download/rugeweiwu/85453540

然后就是报少什么模块就sudo pip install xxx 安装上就行。

先这样,等后面上到树莓派再给大家分享。

你可能感兴趣的:(服务器,深度学习,python,pytorch)