Colab使用指南

Colab Guide

官方网站

教程Blog

B站视频

github 数据集百度云下载

1.为什么要使用 Colab

就喜欢薅羊毛:)

  • 能免费使用一点程度的GPU/CPU来计算和训练模型。
  • 云端代码,十分方便,不需要下载pythan或其他语言工具载体。

2.目的

这个教程主要基于b站up的教程视频,使用yolov4来训练模型,尝试使用colab来编写python代码。

3. 步骤

一. 创建文件夹和下载材料

  1. 从百度云下载VOC07+12+test.zip文件,这是一个包含数据集的压缩包 - JPEGImages里面存放的为图片文件,Annotations里面存放的标签文件,ImageSets里面存放的是区分验证集、训练集、测试集的txt文件。
  2. 将VOC07+12+test.zip文件进行备份
  3. 在google云盘上创建一个VOC_dataset文件夹
image-20220927142037676
  1. 将VOC07+12+test.zip文件上传到VOC_dataset文件夹上,到时候将使用代码进行解压
  2. 再创建一个叫models的文件,然后在models文件夹里再创建一个叫yolo4-tiny-pytorch文件夹
image-20220927142512071
  1. 我们还需要在yolo4_tiny_pytorch里再创建两个文件夹,一个叫model_data,一个叫logs.
image-20220927142746802
  1. 要在model_data里面放预训练权重(由于使用的是yolo4_tiny_pytorch的库,所以要将相应的预训练权重上传上去)
image-20220927165041981

二. Colab配置环境

  1. 在Colab里创建笔记本,并更改名字
image-20220927203632087
  1. 更改硬件加速器:代码执行命令–>更改运行时类型–>硬件加速器–>选择GPU
image-20220927203955463
  1. 配置环境的检查,一般来说colab已经配备了pytorch的环境,我们可以用以下代码来验证一下
1
!pip list
image-20220927204404707

可以看到torch已经安装好了.

  1. 在笔记本上挂载Goole云盘

在笔记上敲入以下代码

1
2
from google.colab import drive
drive.mount('/content/gdrive')

然后我们会发现文件里多出两个文件夹

image-20220927204935105

⚠️注意:当退出后重新进入就要再运行一次.

  1. 在笔记本上下载深度学习库

使用git clone进行下载,在笔记上敲入以下代码

1
2
!git clone https://github.com/bubbliiiing/yolov4-tiny-pytorch.git
%cd yolov4-tiny-pytorch/

执行完后就会发现多出一个yolo4-tiny-pytorch文件夹

image-20220927233945694

代码解释: 第一个代码是将学习库git下来(相当于复制),在将它导到自己命名的根目录(%cd + 文件名)

同时yolo4-tiny-pytorch文件夹成为了我们的根目录

如何验证, 输入以下代码即可

1
!pwd
image-20220927234518431

结果会显示出目前的根目录地址

  1. 数据集的复制和解压
1
2
3
!rm -rf ./VOCdevkit
!cp /content/gdrive/MyDrive/VOC_dataset/VOC07+12+test.zip ./
!unzip ./VOC07+12+test.zip -d ./

代码解释:将之前复制在云盘的压缩包解压到根目录上,同时删除原先自带的VOCdevkit的文件(原因是文件是空的),cp目标,unzip目标在根目录,rm移除VOCdevkit文件

image-20220928000136070

  1. 保存路径设置,防止停止使用后丢失权值

加入以下代码

1
2
!rm -rf logs ##移除根目录里logs文件
!ln -s /content/gdrive/MyDrive/models/yolov4-tiny-pytorch/logs logs ##将云盘里的logs文件链接到根目录

可以发现logs文件夹和云盘的logs文件夹一致

三. 训练模型

  1. 打开VOC_annotation.py文件,由于我们现在使用的直接就是VOC数据集,我们已经划分好了训练集验证集和测试集,所以我们将annotation_mode设置为2。
image-20220928131957738
  1. 然后输入指令完成标签的处理,生成2007_train.txt和2007_val.txt。
image-20220928132216090
  1. 处理训练文件需要三个部分
  • 预训练文件的使用(也就是我们的权值文件)yolov4_tiny_weights_coco
image-20220928132609651
  • 保存周期的设置,由于云盘不够大,所以已经会撑爆,我们需要设置保存周期,然后在保存周期的期间将文件挪出来。
  1. 设置预训练文件的使用,复制预训练文件的路径,然后打开根目录(yolov4-tiny-pytorch)里的train.py, 替换model_path 的路径
image-20220928133542751
  1. 保存周期设置,将save_period改成4,也就是每隔4代保存一次
image-20220928133717139

四. 开始训练

复制以下代码即可开始训练模型

1
!python train.py

4. 掉线怎么办

重连呗。设置也得重新搞,但是笔记本都保存好代码了,需要改的不多,同时已经将保存的路径设置到云端里了,不会因为掉线而丢失权值。

  • Copyrights © 2022-2024 Jessy Huang
  • Visitors: | Views:

请我喝杯咖啡吧~