日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

使用colab训练faster-rcnn

發布時間:2023/12/10 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用colab训练faster-rcnn 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

用colab配置環境訓練faster-rcnn

一、前言

最近在實驗室舊服務器上配置訓練faster-rcnn的環境,因為沒有sudo權限無法升級cuda版本(8.0),導致怎么編譯都不成功,因此鉆進了牛角尖去找各種不升cuda版本也能成功編譯的解決辦法,但這早就注定了是一場徒勞,期間發現別能編譯成功的cuda版本至少是9.0,花了兩天時間毫無進展,后來想到了免費的colab,決定嘗試一下,沒想到一下子就能編譯成功了,現在記錄下配置過程供以后參考。我也是第一次使用colab,如有不對的地方歡迎大家多多拍磚多多指教。

這里配置的是python3.6+pytorch1.0

官方教程

新手指引:https://medium.com/deep-learning-turkey/google-colab-free-gpu-tutorial-e113627b9f5d

常見問題:https://research.google.com/colaboratory/faq.html

官方給出的新手指引當中已經給出了前期配置、常見軟件和庫的安裝等方法。大家憑借官方教程可以基本入門Colab,但如果想更加自如地在Colab上跑通自己的代碼,可能還需要更多的學習。


二、前期準備

為了能順利跑起來,請使用科學上網

依賴平臺: Google Drive

Colab需要從Google Drive(谷歌云盤)進入。為了方便整理,我先在Google Drive中創建了一個新文件夾*“Colab”*。


然后,我們在*“Colab”*文件夾中新建一個Colab項目,如圖所示:


注意:首次創建Colab項目需要點擊“關聯更多應用”,添加“Colaboratory”應用。

創建完項目之后我們就可以進入Colab的主界面了。是不是發現和jupyter notebook很像?

現在,我們就可以在代碼框中輸入一些代碼。這里注意,如果我們直接輸入代碼,系統會當作是Python代碼執行。例如我們輸入:

a=10086 print(a)

運行之后輸出框中會打印出‘10086’

如果要執行系統命令,需要在命令前加感嘆號 !,例如我們輸入!pwd查看當前路徑

!pwd

執行后輸出框會顯示當前目錄的路徑。這跟linux命令行操作完全一樣了!

其實我們在Colab中連接的云端的那臺虛擬機正是使用的Ubuntu操作系統,我們可以將自己在Colab中的一切操作看作是在用命令行控制云端的那臺Ubuntu虛擬機。你可以用它來直接跑代碼,也可以使用一些系統命令。

三、配置faster-rcnn訓練環境

1.修改筆記本環境

我們每次新建一個Colab項目后,最好先對筆記本環境進行配置,即選擇python的版本和是否使用GPU


這里選擇python3,GPU,修改完后點擊保存。

2.安裝必要的包和軟件

輸入以下代碼,按Ctrl+Enter執行

!apt-get install -y -qq software-properties-common python-software-properties module-init-tools !add-apt-repository -y ppa:alessandro-strada/ppa 2>&1 > /dev/null !apt-get update -qq 2>&1 > /dev/null !apt-get -y install -qq google-drive-ocamlfuse fuse from google.colab import auth auth.authenticate_user() from oauth2client.client import GoogleCredentials creds = GoogleCredentials.get_application_default() import getpass !google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret} < /dev/null 2>&1 | grep URL vcode = getpass.getpass() !echo {vcode} | google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret}

運行后,會出現以下提示

先點擊相應的鏈接,選擇自己的谷歌賬號登陸(如果不科學上網可能登陸不了)并允許,最后會得到驗證碼,復制驗證碼粘貼到上面的框中回車鍵即可。

3.掛載云盤端

其實完成前面的操作我們就可以在Colab中敲寫代碼或者輸入一些系統命令了,但是我們現在連接的虛擬機是和Google Drive脫離的,也就是說我們跑的程序無法使用谷歌云盤里的文件,這就非常受限制了。所以我們一般需要將谷歌云盤看作是虛擬機中的一個硬盤掛載,這樣我們就可以使用虛擬機輕松訪問谷歌云盤。
掛載Google Drive代碼:

方法一.

# 指定Google Drive云端硬盤的根目錄,名為drive !mkdir -p drive !google-drive-ocamlfuse drive

上面的方法實際是在虛擬機上安裝谷歌云盤!如果不行可以嘗試方法二

方法二.

# Load the Drive helper and mount from google.colab import drive# This will prompt for authorization. drive.mount('/content/drive')

輸入授權碼即可。掛載完成后在虛擬機中會多出一個文件夾"drive",用!ls命令查看。

4.配置深度學習平臺

其實在colab里面已經默認安裝有最新版的pytorch了,如果不放心可以自己手動安裝一下,安裝方式為:

!pip3 install https://download.pytorch.org/whl/cu80/torch-1.0.1.post2-cp36-cp36m-linux_x86_64.whl !pip3 install torchvision

除了pytorch外,colab還自帶了tensorflow最新版和其他大量的第三方庫,如果沒有版本要求基本上不用自己手動去安裝。下面直接進入主題,用colab訓練faster-rcnn。

四、用colab訓練faster-rcnn

項目地址:https://github.com/jwyang/faster-rcnn.pytorch/tree/pytorch-1.0

注意:進入項目之后會發現有4個branchs,選擇pytorch-1.0這個branch,選錯branch會導致編譯錯誤。


然后git clone這個倉庫到你的colab中,為了保險起見,clone的時候加上分支控制-b pytorch-1.0即:

!git clone -b pytorch-1.0 https://github.com/jwyang/faster-rcnn.pytorch.git


這里有一點要注意,不能直接使用cd改變路徑,需要使用python的方法,如下

import os os.chdir('faster-rcnn.pytorch') !ls


創建新文件夾data并下載預訓練模型

!mkdir data os.chdir('data') !mkdir pretrained_model os.chdir('pretrained_model') # 下載預訓練模型res101 !wget https://filebox.ece.vt.edu/~jw2yang/faster-rcnn/pretrained-base-models/resnet101_caffe.pth # 下載預訓練模型vgg16 !wget https://filebox.ece.vt.edu/~jw2yang/faster-rcnn/pretrained-base-models/vgg16_caffe.pth

預訓練模型下載好以后,返回上一級路徑data,然后下載訓練集voc2007

os.chdir('../') #返回上一級目錄即data/下 # 下載數據集 !wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_06-Nov-2007.tar !wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtest_06-Nov-2007.tar !wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCdevkit_08-Jun-2007.tar # 解壓縮 !tar xvf VOCtrainval_06-Nov-2007.tar !tar xvf VOCtest_06-Nov-2007.tar !tar xvf VOCdevkit_08-Jun-2007.tar # 建立軟連接 !ln -s $VOCdevkit VOCdevkit2007 #注意!如果上面解壓縮得到的文件夾名字為"VOCdevdit",要將其改為“VOCdevdit2007",否則后面會報錯。

回到上一級路徑,然后進入lib中進行編譯(在這一步經常會出錯,博主本人在這里遇到各種錯誤并解決了,如果你也遇到錯誤了歡迎與我交流)

os.chdir('../lib') !python setup.py build develop

輸出如下則表示編譯成功

編譯成功后,就可以開始訓練了。

訓練參數可以參考下表配置

我這里的訓練參數使用了表格的倒數三行的參數。

訓練代碼(參考):

!CUDA_VISIBLE_DEVICES=0 python trainval_net.py \--dataset pascal_voc \--net res101 \--bs 4 \--nw 0 \--lr 0.004 \--lr_decay_step 8 \--epochs 10 \--cuda

然后就會進入訓練階段,輸出框會輸出如下內容(我這里是訓練到epoch2才截的圖):

Called with args: Namespace(batch_size=4, checkepoch=1, checkpoint=0, checkpoint_interval=10000, checksession=1, class_agnostic=False, cuda=True, dataset='pascal_voc', disp_interval=100, large_scale=False, lr=0.004, lr_decay_gamma=0.1, lr_decay_step=8, mGPUs=False, max_epochs=10, net='res101', num_workers=0, optimizer='sgd', resume=False, save_dir='models', session=1, start_epoch=1, use_tfboard=False) Using config: {'ANCHOR_RATIOS': [0.5, 1, 2],'ANCHOR_SCALES': [8, 16, 32],'CROP_RESIZE_WITH_MAX_POOL': False,'CUDA': False,'DATA_DIR': '/content/faster-rcnn_colab/faster-rcnn.pytorch/data','DEDUP_BOXES': 0.0625,'EPS': 1e-14,'EXP_DIR': 'res101','FEAT_STRIDE': [16],'GPU_ID': 0,'MATLAB': 'matlab','MAX_NUM_GT_BOXES': 20,'MOBILENET': {'DEPTH_MULTIPLIER': 1.0,'FIXED_LAYERS': 5,'REGU_DEPTH': False,'WEIGHT_DECAY': 4e-05},'PIXEL_MEANS': array([[[102.9801, 115.9465, 122.7717]]]),'POOLING_MODE': 'align','POOLING_SIZE': 7,'RESNET': {'FIXED_BLOCKS': 1, 'MAX_POOL': False},'RNG_SEED': 3,'ROOT_DIR': '/content/faster-rcnn_colab/faster-rcnn.pytorch','TEST': {'BBOX_REG': True,'HAS_RPN': True,'MAX_SIZE': 1000,'MODE': 'nms','NMS': 0.3,'PROPOSAL_METHOD': 'gt','RPN_MIN_SIZE': 16,'RPN_NMS_THRESH': 0.7,'RPN_POST_NMS_TOP_N': 300,'RPN_PRE_NMS_TOP_N': 6000,'RPN_TOP_N': 5000,'SCALES': [600],'SVM': False},'TRAIN': {'ASPECT_GROUPING': False,'BATCH_SIZE': 128,'BBOX_INSIDE_WEIGHTS': [1.0, 1.0, 1.0, 1.0],'BBOX_NORMALIZE_MEANS': [0.0, 0.0, 0.0, 0.0],'BBOX_NORMALIZE_STDS': [0.1, 0.1, 0.2, 0.2],'BBOX_NORMALIZE_TARGETS': True,'BBOX_NORMALIZE_TARGETS_PRECOMPUTED': True,'BBOX_REG': True,'BBOX_THRESH': 0.5,'BG_THRESH_HI': 0.5,'BG_THRESH_LO': 0.0,'BIAS_DECAY': False,'BN_TRAIN': False,'DISPLAY': 20,'DOUBLE_BIAS': False,'FG_FRACTION': 0.25,'FG_THRESH': 0.5,'GAMMA': 0.1,'HAS_RPN': True,'IMS_PER_BATCH': 1,'LEARNING_RATE': 0.001,'MAX_SIZE': 1000,'MOMENTUM': 0.9,'PROPOSAL_METHOD': 'gt','RPN_BATCHSIZE': 256,'RPN_BBOX_INSIDE_WEIGHTS': [1.0, 1.0, 1.0, 1.0],'RPN_CLOBBER_POSITIVES': False,'RPN_FG_FRACTION': 0.5,'RPN_MIN_SIZE': 8,'RPN_NEGATIVE_OVERLAP': 0.3,'RPN_NMS_THRESH': 0.7,'RPN_POSITIVE_OVERLAP': 0.7,'RPN_POSITIVE_WEIGHT': -1.0,'RPN_POST_NMS_TOP_N': 2000,'RPN_PRE_NMS_TOP_N': 12000,'SCALES': [600],'SNAPSHOT_ITERS': 5000,'SNAPSHOT_KEPT': 3,'SNAPSHOT_PREFIX': 'res101_faster_rcnn','STEPSIZE': [30000],'SUMMARY_INTERVAL': 180,'TRIM_HEIGHT': 600,'TRIM_WIDTH': 600,'TRUNCATED': False,'USE_ALL_GT': True,'USE_FLIPPED': True,'USE_GT': False,'WEIGHT_DECAY': 0.0001},'USE_GPU_NMS': True} Loaded dataset `voc_2007_trainval` for training Set proposal method: gt Appending horizontally-flipped training examples... voc_2007_trainval gt roidb loaded from /content/faster-rcnn_colab/faster-rcnn.pytorch/data/cache/voc_2007_trainval_gt_roidb.pkl done Preparing training data... done before filtering, there are 10022 images... after filtering, there are 10022 images... 10022 roidb entries Loading pretrained weights from data/pretrained_model/resnet101_caffe.pth [session 1][epoch 1][iter 0/2505] loss: 4.4726, lr: 4.00e-03fg/bg=(95/417), time cost: 2.034769rpn_cls: 0.7698, rpn_box: 0.0947, rcnn_cls: 3.1212, rcnn_box 0.4869 [session 1][epoch 1][iter 100/2505] loss: 1.6058, lr: 4.00e-03fg/bg=(92/420), time cost: 282.182974rpn_cls: 0.2926, rpn_box: 0.1055, rcnn_cls: 0.5404, rcnn_box 0.3736 [session 1][epoch 1][iter 200/2505] loss: 1.3175, lr: 4.00e-03fg/bg=(83/429), time cost: 280.251949rpn_cls: 0.0973, rpn_box: 0.0432, rcnn_cls: 0.5531, rcnn_box 0.4124 [session 1][epoch 1][iter 300/2505] loss: 1.2110, lr: 4.00e-03fg/bg=(70/442), time cost: 279.217330rpn_cls: 0.1986, rpn_box: 0.0919, rcnn_cls: 0.2961, rcnn_box 0.3653 [session 1][epoch 1][iter 400/2505] loss: 1.1675, lr: 4.00e-03fg/bg=(111/401), time cost: 277.523335rpn_cls: 0.1142, rpn_box: 0.0291, rcnn_cls: 0.5117, rcnn_box 0.4730 [session 1][epoch 1][iter 500/2505] loss: 1.1075, lr: 4.00e-03fg/bg=(70/442), time cost: 281.644064rpn_cls: 0.0929, rpn_box: 0.1257, rcnn_cls: 0.2761, rcnn_box 0.3332 [session 1][epoch 1][iter 600/2505] loss: 1.1065, lr: 4.00e-03fg/bg=(59/453), time cost: 281.272812rpn_cls: 0.1279, rpn_box: 0.0456, rcnn_cls: 0.3245, rcnn_box 0.2569 [session 1][epoch 1][iter 700/2505] loss: 1.0399, lr: 4.00e-03fg/bg=(99/413), time cost: 280.469540rpn_cls: 0.2323, rpn_box: 0.0932, rcnn_cls: 0.5178, rcnn_box 0.3769 [session 1][epoch 1][iter 800/2505] loss: 1.0888, lr: 4.00e-03fg/bg=(101/411), time cost: 279.788152rpn_cls: 0.2390, rpn_box: 0.0681, rcnn_cls: 0.3894, rcnn_box 0.4226 [session 1][epoch 1][iter 900/2505] loss: 1.0514, lr: 4.00e-03fg/bg=(128/384), time cost: 279.094743rpn_cls: 0.1421, rpn_box: 0.0878, rcnn_cls: 0.3806, rcnn_box 0.4146 [session 1][epoch 1][iter 1000/2505] loss: 1.0105, lr: 4.00e-03fg/bg=(90/422), time cost: 277.871021rpn_cls: 0.1386, rpn_box: 0.0218, rcnn_cls: 0.4366, rcnn_box 0.3665 [session 1][epoch 1][iter 1100/2505] loss: 0.9438, lr: 4.00e-03fg/bg=(123/389), time cost: 279.990570rpn_cls: 0.2340, rpn_box: 0.1765, rcnn_cls: 0.5839, rcnn_box 0.5354 [session 1][epoch 1][iter 1200/2505] loss: 0.9365, lr: 4.00e-03fg/bg=(115/397), time cost: 283.719271rpn_cls: 0.1158, rpn_box: 0.0448, rcnn_cls: 0.2936, rcnn_box 0.3726 [session 1][epoch 1][iter 1300/2505] loss: 0.9621, lr: 4.00e-03fg/bg=(128/384), time cost: 281.506948rpn_cls: 0.2068, rpn_box: 0.0387, rcnn_cls: 0.7982, rcnn_box 0.4249 [session 1][epoch 1][iter 1400/2505] loss: 0.9196, lr: 4.00e-03fg/bg=(128/384), time cost: 278.097586rpn_cls: 0.1497, rpn_box: 0.0330, rcnn_cls: 0.3320, rcnn_box 0.3756 [session 1][epoch 1][iter 1500/2505] loss: 0.9093, lr: 4.00e-03fg/bg=(101/411), time cost: 275.748964rpn_cls: 0.1374, rpn_box: 0.0361, rcnn_cls: 0.2822, rcnn_box 0.2870 [session 1][epoch 1][iter 1600/2505] loss: 0.8810, lr: 4.00e-03fg/bg=(119/393), time cost: 276.830616rpn_cls: 0.1287, rpn_box: 0.0936, rcnn_cls: 0.4380, rcnn_box 0.3273 [session 1][epoch 1][iter 1700/2505] loss: 0.8307, lr: 4.00e-03fg/bg=(113/399), time cost: 280.342751rpn_cls: 0.1655, rpn_box: 0.0910, rcnn_cls: 0.2600, rcnn_box 0.3362 [session 1][epoch 1][iter 1800/2505] loss: 0.8967, lr: 4.00e-03fg/bg=(87/425), time cost: 281.167849rpn_cls: 0.1380, rpn_box: 0.1308, rcnn_cls: 0.3550, rcnn_box 0.2271 [session 1][epoch 1][iter 1900/2505] loss: 0.9052, lr: 4.00e-03fg/bg=(104/408), time cost: 280.726496rpn_cls: 0.1270, rpn_box: 0.1022, rcnn_cls: 0.3841, rcnn_box 0.3624 [session 1][epoch 1][iter 2000/2505] loss: 0.7873, lr: 4.00e-03fg/bg=(89/423), time cost: 277.209683rpn_cls: 0.1268, rpn_box: 0.0387, rcnn_cls: 0.2488, rcnn_box 0.3074 [session 1][epoch 1][iter 2100/2505] loss: 0.8663, lr: 4.00e-03fg/bg=(97/415), time cost: 280.117668rpn_cls: 0.1354, rpn_box: 0.0371, rcnn_cls: 0.4960, rcnn_box 0.3263 [session 1][epoch 1][iter 2200/2505] loss: 0.8516, lr: 4.00e-03fg/bg=(109/403), time cost: 280.427549rpn_cls: 0.1978, rpn_box: 0.0547, rcnn_cls: 0.3458, rcnn_box 0.3401 [session 1][epoch 1][iter 2300/2505] loss: 0.7974, lr: 4.00e-03fg/bg=(116/396), time cost: 277.409676rpn_cls: 0.1059, rpn_box: 0.0384, rcnn_cls: 0.2876, rcnn_box 0.3050 [session 1][epoch 1][iter 2400/2505] loss: 0.8045, lr: 4.00e-03fg/bg=(105/407), time cost: 279.156028rpn_cls: 0.1094, rpn_box: 0.0768, rcnn_cls: 0.2358, rcnn_box 0.2183 [session 1][epoch 1][iter 2500/2505] loss: 0.7850, lr: 4.00e-03fg/bg=(120/392), time cost: 277.117274rpn_cls: 0.1742, rpn_box: 0.0531, rcnn_cls: 0.3195, rcnn_box 0.3734 save model: models/res101/pascal_voc/faster_rcnn_1_1_2504.pth [session 1][epoch 2][iter 0/2505] loss: 0.7364, lr: 4.00e-03fg/bg=(108/404), time cost: 1.689750rpn_cls: 0.1285, rpn_box: 0.0372, rcnn_cls: 0.2504, rcnn_box 0.3203 [session 1][epoch 2][iter 100/2505] loss: 0.7371, lr: 4.00e-03fg/bg=(92/420), time cost: 274.646219rpn_cls: 0.1005, rpn_box: 0.0450, rcnn_cls: 0.3673, rcnn_box 0.2630 [session 1][epoch 2][iter 200/2505] loss: 0.7200, lr: 4.00e-03fg/bg=(112/400), time cost: 276.095904rpn_cls: 0.1248, rpn_box: 0.0647, rcnn_cls: 0.1967, rcnn_box 0.3372 [session 1][epoch 2][iter 300/2505] loss: 0.7149, lr: 4.00e-03fg/bg=(102/410), time cost: 278.109113rpn_cls: 0.1085, rpn_box: 0.0473, rcnn_cls: 0.1914, rcnn_box 0.2414 [session 1][epoch 2][iter 400/2505] loss: 0.6890, lr: 4.00e-03fg/bg=(128/384), time cost: 273.537342rpn_cls: 0.0903, rpn_box: 0.0408, rcnn_cls: 0.3973, rcnn_box 0.4046 [session 1][epoch 2][iter 500/2505] loss: 0.6933, lr: 4.00e-03fg/bg=(126/386), time cost: 279.137722rpn_cls: 0.2608, rpn_box: 0.1434, rcnn_cls: 0.3289, rcnn_box 0.2678 [session 1][epoch 2][iter 600/2505] loss: 0.7324, lr: 4.00e-03fg/bg=(111/401), time cost: 276.018796rpn_cls: 0.1929, rpn_box: 0.0788, rcnn_cls: 0.2978, rcnn_box 0.3067 [session 1][epoch 2][iter 700/2505] loss: 0.6892, lr: 4.00e-03fg/bg=(87/425), time cost: 278.667384rpn_cls: 0.0499, rpn_box: 0.0211, rcnn_cls: 0.1220, rcnn_box 0.2021 [session 1][epoch 2][iter 800/2505] loss: 0.7280, lr: 4.00e-03fg/bg=(102/410), time cost: 278.389553rpn_cls: 0.0571, rpn_box: 0.0559, rcnn_cls: 0.2081, rcnn_box 0.1411 [session 1][epoch 2][iter 900/2505] loss: 0.6905, lr: 4.00e-03fg/bg=(114/398), time cost: 276.314513rpn_cls: 0.1066, rpn_box: 0.0391, rcnn_cls: 0.2746, rcnn_box 0.3154 [session 1][epoch 2][iter 1000/2505] loss: 0.6533, lr: 4.00e-03fg/bg=(82/430), time cost: 275.988713rpn_cls: 0.0883, rpn_box: 0.0371, rcnn_cls: 0.4136, rcnn_box 0.2456 [session 1][epoch 2][iter 1100/2505] loss: 0.6876, lr: 4.00e-03fg/bg=(128/384), time cost: 276.282769rpn_cls: 0.1137, rpn_box: 0.0518, rcnn_cls: 0.2628, rcnn_box 0.4541 [session 1][epoch 2][iter 1200/2505] loss: 0.6285, lr: 4.00e-03fg/bg=(99/413), time cost: 276.043559rpn_cls: 0.0643, rpn_box: 0.0375, rcnn_cls: 0.3397, rcnn_box 0.3405 [session 1][epoch 2][iter 1300/2505] loss: 0.7216, lr: 4.00e-03fg/bg=(82/430), time cost: 277.240751rpn_cls: 0.0897, rpn_box: 0.0131, rcnn_cls: 0.1557, rcnn_box 0.1644 [session 1][epoch 2][iter 1400/2505] loss: 0.7041, lr: 4.00e-03fg/bg=(117/395), time cost: 277.448369rpn_cls: 0.0938, rpn_box: 0.0334, rcnn_cls: 0.2144, rcnn_box 0.2643 [session 1][epoch 2][iter 1500/2505] loss: 0.6691, lr: 4.00e-03fg/bg=(114/398), time cost: 278.218134rpn_cls: 0.0648, rpn_box: 0.0403, rcnn_cls: 0.1703, rcnn_box 0.2494 [session 1][epoch 2][iter 1600/2505] loss: 0.6776, lr: 4.00e-03fg/bg=(101/411), time cost: 276.265288rpn_cls: 0.2302, rpn_box: 0.0796, rcnn_cls: 0.3031, rcnn_box 0.2957 [session 1][epoch 2][iter 1700/2505] loss: 0.6100, lr: 4.00e-03fg/bg=(111/401), time cost: 276.921033rpn_cls: 0.0445, rpn_box: 0.0589, rcnn_cls: 0.1895, rcnn_box 0.3049 [session 1][epoch 2][iter 1800/2505] loss: 0.6402, lr: 4.00e-03fg/bg=(99/413), time cost: 279.126111rpn_cls: 0.0976, rpn_box: 0.0408, rcnn_cls: 0.1940, rcnn_box 0.2101 [session 1][epoch 2][iter 1900/2505] loss: 0.6828, lr: 4.00e-03fg/bg=(115/397), time cost: 277.349934rpn_cls: 0.1912, rpn_box: 0.0540, rcnn_cls: 0.1890, rcnn_box 0.2691 [session 1][epoch 2][iter 2000/2505] loss: 0.6197, lr: 4.00e-03fg/bg=(90/422), time cost: 276.248681rpn_cls: 0.0222, rpn_box: 0.0638, rcnn_cls: 0.1732, rcnn_box 0.2191 [session 1][epoch 2][iter 2100/2505] loss: 0.6087, lr: 4.00e-03fg/bg=(113/399), time cost: 277.705678rpn_cls: 0.1838, rpn_box: 0.1351, rcnn_cls: 0.3173, rcnn_box 0.2759 [session 1][epoch 2][iter 2200/2505] loss: 0.6375, lr: 4.00e-03fg/bg=(91/421), time cost: 277.965877rpn_cls: 0.0758, rpn_box: 0.0216, rcnn_cls: 0.2189, rcnn_box 0.1767 [session 1][epoch 2][iter 2300/2505] loss: 0.6471, lr: 4.00e-03fg/bg=(107/405), time cost: 275.611051rpn_cls: 0.0862, rpn_box: 0.0442, rcnn_cls: 0.2505, rcnn_box 0.2988

注意:colab好像一次只能用12個小時,12個小時還沒訓練完的話會自動停止訓練,并且資源會被谷歌回收,也就是說所有結果都會被清空,因此,請注意你的訓練時長!

五、總結

1、可以把Colab看成是一臺帶有GPU的Ubuntu虛擬機,只不過我們只能用命令行的方式操作它。你可以選擇執行系統命令,亦或是直接編寫運行python代碼。

2、掛載完Google Drive,會在虛擬機里生成一個drive文件夾,直接將Google Drive當成是一塊硬盤即可。訪問drive文件夾里的文件,就是在訪問你的Google Drive里的文件。

3、Colab最多連續使用12小時,超過時間系統會強制掐斷正在運行的程序并收回占用的虛擬機。(好像再次連接到虛擬機后,虛擬機是被清空的狀態,需要重新配置和安裝庫等等)

4、請使用科學上網

參考資料

faster-rcnn pytorch項目地址

Google Colab——用谷歌免費GPU跑你的深度學習代碼

官方教程

總結

以上是生活随笔為你收集整理的使用colab训练faster-rcnn的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。