Colab入门

记录一下Colab的一些基础的问题及设置。距Colab开放已两年之久,配置时遇到一些与之前的教程不符的地方,进行了一些改进。主要参考资料Google Colab Free GPU Tutorial,在此基础上修改了一些有出入的地方,实测可行后整理如下。

简介

Colab(Colaboratory)是谷歌提供的一款基于Jupyter Notebook开发的免费深度学习云平台,尽管只是开放Notebook这样的交互式Python环境,依然可以通过魔法命令和shell命令执行Python脚本(使用和Jupyter Notebook一致,可以参照Jupyter教程)。同时,Colab配合谷歌其他的应用如Google Drive(谷歌云盘)等共同使用。它预装了几乎所有主流的机器学习和深度学习框架以及常用的工具库,深度学习框架以TensorFlow为主,其他框架需要自行安装。

启动方式

Colab主要有两种启动方式,一种是从Colab的官网主要打开Notebook(ipynb后缀文件),另一种是通过打开自己的Google Drive并关联Colaboratory直接从云盘打开。(个人喜欢后一种方式量,但是两种方式差别不大但也各有局限性)。

第一种方式,Google搜索Colab或者访问官网地址。如果你是第一次使用,只能看到一个完全用Jupyter Notebook写成的Welcome笔记本,你的笔记本可以来自硬盘(自行创建,如果直接新建notebook会在Google云盘中自动创建名为Colab Notebooks的文件夹用于默认的Notebook文件存放路径),也可以来自Github(需要授权)或者当即上传(上传的位置决定是否会在时长到达是释放删除)。

第二种方式,没有太大扩展空间但是比较实用。在谷歌云盘存放Notebook的文件夹中新建Notebook使用Colaboratory打开即可。这种方式就不能打开Github等仓库Notebook。

Notebook配置

打开一个新建的Notebook,会看到Colab的工作界面。

有一些必要的配置内容,如文件名(点击文件名处即可修改,修改后Google云盘中的Notebook文件名会相应同步修改),GPU环境(默认使用CPU打开,点击导航栏的修改->笔记本设置->硬件加速器->GPU即可,点击保存会重新开启一个新的GPU的docker环境作为该Notebook的后端)以及编辑器环境。

配置后测试:!nvidia-smi #查看CUDA和显存

挂载谷歌云盘:使用云盘的主要目的是保存程序运行的结果到云盘,避免colab自动清除导致数据丢失。

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

运行后结果

Mounted at /content/drive/

也可以手动挂载。

安装深度学习框架和其他包

在官方教程中已经有Keras、Tensorflow、Pytorch的安装方法,我平时使用Pytorch比较多,所以这里给出我的Pytorch安装代码。

!pip install torch==1.7.0+cu101 torchvision==0.8.1+cu101 torchaudio==0.7.0 -f https://download.pytorch.org/whl/torch_stable.html

具体的pytorch版本选择可以在pytorch官网查看对应的版本。

import torch
print(torch.__version__)

输出

1.7.0+cu101

其他操作

  • !ls !cd !wegt

  • !git clone url

  • !python train.py

    et.al

总结

  1. 可以把Colab看成是一台带有GPU的Ubuntu虚拟机,只不过我们只能用命令行的方式操作它。你可以选择执行系统命令,亦或是直接编写运行python代码。
  2. 挂载完Google Drive,会在虚拟机里生成一个drive文件夹,直接将Google Drive当成是一块硬盘即可。访问drive文件夹里的文件,就是在访问你的Google Drive里的文件。
  3. Colab最多连续使用12小时,超过时间系统会强制掐断正在运行的程序并收回占用的虚拟机。(好像再次连接到虚拟机后,虚拟机是被清空的状态,需要重新配置和安装库等等)
  4. 请使用科学上网方式

参考资料

官方教程
官方FAQ
https://www.cnblogs.com/smiler/p/6939913.html
https://www.cnblogs.com/oxspirt/p/6294754.html