学习前言
Colab是谷歌提供的一个云学习平台,Very Nice,最近卡不够用了决定去白嫖一波。该博客只会说明如何使用Colab对已有的深度学习仓库进行训练,并不会说如何进入外网、如何注册等。
该博客仅为了演示Colab的使用,主要是为了各位熟悉Colab操作,具体问题具体分析,操作不当与版本更迭会导致步骤出错,如果出错的话建议多百度,多看代码与指令,查一下错误的原因,同时建议是有一定的基础同学再使用Colab
什么是Google Colab
Google Colab是谷歌提供的免费Jupyter 笔记本环境,不需要什么设置与环境配置就可以使用,完全在云端运行。不影响本地的使用。
Google Colab为研究者提供一定免费的GPU,可以编写和执行代码,所有这些都可通过浏览器免费使用。同学们可以在上面轻松地跑 Tensorflow、Pytorch 等深度学习框架。
尽管Google Colab提供了一定的免费资源,但资源量是受限制的,所有 Colab 运行时都会在一段时间后重置。Colab Pro 订阅者的使用量仍会受到限制,但相比非订阅者可享有的限额要多出大约一倍。Colab Pro 订阅者还可获享更高的稳定性。

相关链接
Colab官网:https://colab.research.google.com/(需要外网才可以进入)
ipynb Github:https://github.com/bubbliiiing/Colab
利用Colab进行训练
本文以YoloV4-Tiny-Pytorch版本的训练为例,进行Colab的使用演示。
一、数据集与预训练权重的上传
1、数据集的上传
Colab和Google自带的云盘联动非常好,因此我们需要首先将数据集上传云盘,这个上传的过程其实非常简单,本地先准备好数据集。
由于我所上传的库,均使用的VOC数据集,我们需要按照VOC数据集摆放好
本文直接以VOC07 12数据集为例进行演示。

JPEGImages里面存放的为图片文件,Annotations里面存放的标签文件,ImageSets里面存放的是区分验证集、训练集、测试集的txt文件。
然后将VOCdevkit文件整个进行打包。需要注意的是,不是对上面三个文件夹进行打包,而是对VOCdevkit进行打包,这样才满足数据处理的格式。

在获得打包后的压缩包后,将压缩包上传到谷歌云盘。我在谷歌云盘上新建了一个VOC_datasets文件夹存放压缩包。

此时数据集的上传已经完成。
2、预训练权重的上传
在谷歌云盘上进行文件夹的创建,首先创建Models,然后在Models里面创建yolov4-tiny-pytorch,然后在yolov4-tiny-pytorch里面创建logs和model_data。
model_data放置的是预训练文件。
logs放置的是网络训练过程中产生的权值。

由于我们这次使用的是YoloV4-Tiny-Pytorch的库,我们将它的预训练权重上传到model_data文件夹。

二、打开Colab并配置环境
1、笔记本的创建
在该步中,我们首先打开Colab的官网。

然后点击文件,创建笔记本,此时会创建一个jupyter笔记本。

创建完成后给文件改个名,好看一些。

之后点击代码执行程序,然后点击更改运行时类型,在其中硬件加速器部分选择GPU,Colab便会配置一个带有GPU的机器,此时笔记本就创建完成了。


2、环境的简单配置
colab已经集成了pytorch环境,无需专门配置pytorch,不过使用的torch版本较新。
由于我们的数据集在谷歌云盘上,所以我们还要挂载云盘。
from google.colab import drive
drive.mount('/content/gdrive')
我们将上述代码输入到笔记本中执行。将云盘挂载到服务器上。然后点击运行即可。

此时点击左边栏中,类似于文件夹的东西,就可以打开文件夹了,看看文件部署情况。gdrive就是我们配置的谷歌云盘。没有的话就去左侧刷新一下。

打开gdrive,其中有我们的数据集。

3、深度学习库的下载
这一步,我们需要完成深度学习仓库的下载,我们使用git clone指令进行下载。执行如下指令后,左边的文件中多出了yolov4-tiny-pytorch文件夹。没有的话就去左侧刷新一下。
然后我们通过了cd指令将根目录转移到了yolov4-tiny-pytorch文件夹。
!git clone https://github.com/bubbliiiing/yolov4-tiny-pytorch.git