大家好,欢迎来到IT知识分享网。
fanq15/FSOD-code的环境配置及运行
Few-Shot Object Detection with Attention-RPN and Multi-Relation Detector
对应的论文地址Few-Shot Object Detection with Attention-RPN and Multi-Relation Detector
文章目录
前言
本文是基于本人ubuntu16.04LTS下成功的运行经验
fanq15/FSOD-code
代码的经历以及经验
一、代码下载
sudo apt-get install git
配置好后,在你想要下载代码的目录下打开终端(如果你不嫌烦的话也可以cd过去)并输入
git clone https://github.com/fanq15/FSOD-code.git
完成后,在对应的目录下应该已经出现克隆好的文件夹,如下图选中部分。
文件夹中内容:
注意,数据集和预训练模型需要单独下载,数据集大小约为15G左右,预训练模型为265M注意目录的剩余空间!
预训练模型在其github介绍下已给出预训练模型
二、将数据集和预训练模型拷贝到相应目录下
1.目录的树形结构:
2.拷入数据集和预训练模型
模型文件拷到fsod下,预训练模型拷到pretrain_model下
拷入前对应目录下有用来占位的连接文件,无视删除掉就行
三、环境要求
需要装有英伟达显卡的机器,且已经安装了CUDA 9.0(只能是9.0其他版本不行),我的机器是GTX1060(6G),驱动版本是384.130
1.需要的包
建议用anaconda新建一个虚拟环境来配置
可以用conda或者pip下载,速度慢的话换国内源。
2.编译CUDA代码
conda activate FSOD
并执行make.sh
sh make.sh
如果提示无权限,则在终端输入下面命令后再运行。
sudo chmod 755 make.sh
四、代码运行
1.跟据不同机器的GPU数量修改根目录下的all.sh
如果你恰好财力雄厚,机器拥有四块GPU,则可以跳过这步
高亮部分为模型训练指令,下半部分为模型测试指令。
比如我的机器只有一个GPU,则将
CUDA_VISIBLE_DEVICES=0,1,2,3 这里改为CUDA_VISIBLE_DEVICES=0
并将
– -bs 4改为 – -bs 1
如果你有两个及以上的GPU则不用修改下半部分,如果是单GPU机器,则:
将- -multi-gpu-testing 删掉
2.已经训练过模型,仅测试
可以将上图的高亮部分删除掉,训练好的模型保存在根目录下的Outputs文件夹中
训练参数可以在FSOD/configs/fsod/下的voc_e2e_faster_rcnn_R-50-C4_1x_old_1.yaml中修改(默认迭代次数为,没错24万,在我这小破游戏本上得跑到猴年马月去。。。)
3.运行
在FSOD-code即代码根目录下,右键“在终端打开”,执行
conda activate "你的环境名“ sudo chmod 755 all.sh sh all.sh
可以看到,已经开始训练了,一般训练到四五百次的时候,准确率就在90%左右浮动了,你可以ctrl+c/z中途终止训练,模型也是会保存到Outputs文件夹中的。
训练时你可以新开一个终端,输入
watch -n 1 nvidia-smi
来监视GPU状态,上面命令的 -n 1意思是每1秒刷新一次,你也可以自己更改刷新时间比如-n 5 、-n 10等
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/146271.html