在进行深度学习过程中,不可避免需要进行炼丹的操作,而博主的电脑本身性能就很拉跨,一旦再运行其他的应用便是寸步难行,最好的办法便是再买一台,哈哈哈,当然也可以使用一些云服务器来进行,博主这里选择的是Colab,接下来便是配置环境过程。

首先科学上网打开Google Drive。Google Drive类似百度网盘,我们通过Colab跑代码时,code和dataset都可以放在Google Drive里直接调用。最方便的一点是,在复现其他研究者的工作时,如果dataset通过Google Drive链接分享,我们可以将一键转存到我们的Google Drive中,避免长时间的大文件下载和上传。下面是打开Google Drive的界面:

GPU服务器之Colab配置及使用教程_开发语言

右键新建Google Colaboratory

GPU服务器之Colab配置及使用教程_Google_02

  • 其实就是一个jupyter笔记本,可以直接在这里面编写和运行代码

GPU服务器之Colab配置及使用教程_上传_03

关于jupyter笔记本的使用,大家可以参考博主这篇博文:
​深度学习之环境配置 jupyter notebook​​

连接GPU与导入Google Drive

  • 修改-笔记本设置-硬件加速器

GPU服务器之Colab配置及使用教程_上传_04


单击右上方“连接”,就可以自动连接到GPU(实际上在运行代码时也会自动连接)。

连接后,输入下面命令并点击代码块左侧按钮运行下面的代码,查看GPU情况:

! /opt/bin/nvidia-smi

可以看到其分配了一个Tesla T4的服务器

GPU服务器之Colab配置及使用教程_python_05

  • 接着分别运行这两波代码,将你google drive里面的数据导入进来用于深度学习或者其它操作。
import glob
# Importing drive method from colab for accessing google drive
from google.colab import drive
# Mounting drive
# This will require authentication : Follow the steps as guided
drive.mount('/Data')

GPU服务器之Colab配置及使用教程_python_06


之后我们可以查看导入成功了吗:

!ls /Data/'My Drive'

OK了

GPU服务器之Colab配置及使用教程_Google_07

  • 然后我们将文件上传到我们的谷歌云盘

GPU服务器之Colab配置及使用教程_上传_08


上传成功后,我们再次打开CoLab,可以看到我们上传到云盘的文件

GPU服务器之Colab配置及使用教程_Google_09


将想要运行的项目目录复制地址:如下

切换至项目路径,添加以后并不能成功引入

import os
os.chdir('/content/drive/My Drive/项目路径/项目文件夹/')

GPU服务器之Colab配置及使用教程_人工智能_10


没有报错就是成功,然后我们的.py文件是不能直接运行的,可以以下命令运行。

执行:

`%run main.py`

GPU服务器之Colab配置及使用教程_python_11

性能还是很不错的。

GPU服务器之Colab配置及使用教程_人工智能_12


不过就是时常会出现云盘断联情况,不太稳定,且对于较大文件,上传云盘速度太慢。不过应对简单的小demo是木的问题的。

这里博主想将YOLO项目上传到服务器上来运行。这是一个十分漫长的过程,呜呜呜。

上传了一晚上,总算是完成了,大概6个小时左右,然后接下来的配置就很简单了,首先需要切换到运行目录下:

GPU服务器之Colab配置及使用教程_上传_13

import os
os.chdir('/content/drive/MyDrive/yolov7-pytorch-master/')

然后我们需要使用voc_annotation.py生成训练测试所需的配置文件,这个过程还挺慢的,反而表现不如我的电脑,大概是该处都是使用cpu进行运算的原因。完成后我们便可以开始炼丹了。注意,Colab只能分配GPU12小时,所以需要注意中间保存。

GPU服务器之Colab配置及使用教程_上传_14


总体而言还是蛮不错的。都让你白嫖了,还要什么自行车。

关于长时间无操作掉线问题

想必大家发现了,通过该服务器运行时时常会出现掉线情况,这是由于我们长时间无操作造成的,而炼丹是一个漫长的过程,我们无法一直盯着,那么该如何解决呢?
首先在Colab界面打开控制台(快捷键Ctrl+Shift+I),然后复制以下代码(这段代码的功能是设置每隔60000ms也就是1min自动点击一下Colab的“连接”操作,这样就不至于长时间误操作而导致自动断开连接啦,当然这只是个例子,方法不唯一,大家也可以调整下自己的间隔时间):

function ClickConnect(){
console.log("Working");
document.querySelector("colab-toolbar-button#connect").click()
}
setInterval(ClickConnect, 60000)

把上面这段代码添加到下图所示的位置 ,然后敲一下回车键便可以了。