1. 什么是Colaboratory?
Colaboratory是Google的一个研究项目,旨在提供开发者一个云端训练神经网络的工具。它是
Jupyter一个笔记本环境
,不用做任何配置,完全运行在云端。Colaboratory存储在Google Drive(谷歌云盘)中,可以进行共享。Colaboratory向开发者提供了
免费的Tesla K80 GPU
使用。
2. 搭建Colaboratory:
总的来说,需要下面几个准备工作:
自备FQ工具,因为需要FQ才能使用(很重要)
Google账号
登陆Google Drive(谷歌云盘)
关联Colaboratory
首先,打开谷歌 / 火狐浏览器,进入
Google Drive
,并用你的Google账号登陆(没注册Google账号就去注册一个,过程不复杂)。
也许,有些小伙伴会遇到关联之后不显示的情况,可以看一下
这一篇博客
,或许可以帮到你。如果还不行,可能你需要退出Google Drive,再重新用你的Google账号登陆Google Drive,应该就有显示了(我自己之前关联的时候也遇到过)。
如果实在没能显示也不要紧,只要Google Drive显示Colaboratory已经关联就可以了。
3. 打开Colaboratory:
可以直接访问Colaboratory的
网站
,在里面打开官方的一些demo,或者自己新建.ipynb文件。
在Google Drive中直接创建Colaboratory文件
选择上面的任意一种方式新建.ipynb文件(Colaboratory文件),然后打开该文件,输入下面一段测试代码,进行测试,看看效果如何(如果不知道怎么运行这段代码,可以先忽略,后面会重新提到)。
import tensorflow as tf
import numpy as np
with tf.Session():
input1 = tf.constant(1.0, shape=[2, 3])
input2 = tf.constant(np.reshape(np.arange(1.0, 7.0, dtype=np.float32), (2, 3)))
output = tf.add(input1, input2)
result = output.eval()
result
如果结果为空,则不能使用GPU;如果结果为 '/device:GPU:0' ,则可以使用GPU。
查看显卡内存使用上限:
from tensorflow.python.client import device_lib
device_lib.list_local_devices()
4.2 运行基本代码:
在代码块中输入上面的那段代码,然后按 Shift+Enter键 ,就可以运行了(如果有小伙伴用过Jupyter notebook,会发现其实使用方法跟Jupyter notebook是大致相同的。这也就证明了上面在介绍Colaboratory时说到的 “Colaboratory是一个Jupyter笔记本环境”)
(为避免不必要的篇幅,就不重新贴出这段代码啦~~~)
4.3 运行.py文件:
要运行本地的.py文件,需要将.py文件及其相应的资源文件上传到Google Drive上,然后 建立文件与google drive关联 。
由于每次打开文件后台资源都是随机分配的,在运行代码之后一定要记得将结果保存。当然有的时候我们可以直接将所需文件上传到google drive上,由于资源随机分配,因此需要建立他们之间的关系。以下操作每次打开的时候,也需要重新执行。
4.3.1 安装相应的库,进行授权绑定:
!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
!wget https://launchpad.net/~alessandro-strada/+archive/ubuntu/google-drive-ocamlfuse-beta/+build/15331130/+files/google-drive-ocamlfuse_0.7.0-0ubuntu1_amd64.deb
!dpkg -i google-drive-ocamlfuse_0.7.0-0ubuntu1_amd64.deb
!apt-get install -f
!apt-get -y install -qq 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}
运行可以看到如下结果:此时,点击链接地址,获取验证码。
# 此处为google drive中的文件路径,drive为之前指定的工作根目录要加上.
#Colab Notebooks为你的文件存放的路径,可以自行更改
os.chdir("drive/Colab Notebooks")
此时你可以用! ls
命令查看路径是否正确,之后就可以尽情使用啦。
5. 更多:
因为Google Colaboratory自带的框架是 Tensorflow(毕竟Tensorflow是Google自己开发的,大家都懂),也许有很多小伙伴用的是其他的框架,那么如何进行安装呢?
安装Keras:
!pip install -q keras
import keras
安装PyTorch:
!pip install -q http://download.pytorch.org/whl/cu75/torch-0.2.0.post3-cp27-cp27mu-manylinux1_x86_64.whl torchvision
import torch
安装OpenCV:
!apt-get -qq install -y libsm6 libxext6 && pip install -q -U opencv-python
import cv2
安装其他库:
用!pip install
或者!apt-get install
命令。
——参考:使用Colaboratory的免费GPU训练神经网络
写在最后:
参考资料:
博客:使用Colaboratory的免费GPU训练神经网络
简书:Colaboratory配合Google Drive使用GPU运行机器学习代码
简书:Google AI工具Colaboratory的使用方法
博客:Google免费GPU使用教程(Google Colab Colaboratory)