Colaboratory 是一个研究项目,可免费使用。
Colaboratory 支持 Python 2.7 和 Python 3.6。与 Google 云端硬盘集成,可以轻松共享项目或将其他共享项目复制到自己的帐户中。
准备工作:
这个软件的使用需要注册一个google的邮箱/账号,并且能用google浏览器上网。
Colaboratory基础使用步骤:
(1)首先登陆谷歌云盘https://drive.google.com/drive/my-drive
然后用自己的google账号登录,进入谷歌云硬盘,在空白处右键,选择新建一个文件夹。
(本文新建的文件夹名为:Colab Notebooks):
(2)进入该文件夹,空白处点击右键,选择【更多】-【Colaboratory】,则成功建立一个Python文件:
(3)然后会自动跳转到Colaboratory界面:
在里面输入代码,则可运行。
(4)点击可修改名字:
Colaboratory进一步使用步骤:
(1)调用GPU:
在上述界面框中,点击【修改】-【笔记本设置】,然后选择【python3/Python2】以及【GPU】即可。
(2)绑定Google Driver:
将Colaboratory与Google Drive绑定后,即可直接运行Google Drive中的文件夹(即把自己的代码文件+数据上传到Google Drive,则可在Colaboratory利用命令行直接运行文件夹中的Python文件)。
我们可以直接将所需文件上传到google drive上,由于资源随机分配,因此需要建立他们之间的关系。以下操作每次打开的时候,也需要重新执行。
在上述Colaboratory的代码行运行下方代码进行授权绑定
!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
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账号并完成相关授权。(点击最下面那个连接,然后会让你登录google账号,把获得的验证码填在最下面空白里即可)
点击连接后出现的账号登录:
出现以下提示,算是完成授权。
(3)在google drive中上传Python和数据文件夹:
例如在上传的文件夹为【Experiment1_Tensorflow】,该文件下有很多Python代码和数据文件:
(4)关联google drive
上述授权完成后,再运行下面两行代码,关联google drive的文件夹:
!mkdir -p drive
!google-drive-ocamlfuse drive
然后再运行:
! ls drive/
得到当前目录如下,则关联google drive成功:
说明我的google drive中包含两个文件夹app 和 Colab Notebooks。
指定当前的工作目录:
import os
# 此处为google drive中的文件路径,drive为之前指定的工作根目录要加上.
#Colab Notebooks/app 为你的文件存放的路径,可以自行更改
os.chdir("drive/app/Experiment1_Tensorflow")
然后就可以运行文件夹里的代码啦:
! python3 drive/app/Experiment1_Tensorflow/mnist_test_plot_MoFan.py
结果还是特别快的,反正比我的笔记本快多了>_<:
(5)运行时如果有数据,需要上传到google drive
比如上传到google drive的app/code/data目录下,则需要先定位到该目录:
import os
os.chdir("drive/app/code/data")
然后就可以访问drive/app/code/data目录下的4个csv数据文件并进行模型训练和预测了:
dfoff = pd.read_csv('ccf_offline_stage1_train.csv')
dfon = pd.read_csv('ccf_online_stage1_train.csv')
dftest = pd.read_csv('ccf_offline_stage1_test_revised.csv')
dfoff.head(5)
模型预测的csv结果也会默认保存在该目录下,去google drive中就能下载和查看:
dftest1.to_csv('submit1.csv', index=False, header=False)
(6)其他:
文件操作
1.上传文件
from google.colab import files
uploaded = files.upload()
2.下载文件
from google.colab import files
file.download(“path/to/file”)
3.想按照链接下载.csv文件到/path文件夹
!wget https://XXXTitanic.csv -P /path
4.也可以直接将.csv文件上传到Colab Notebooks文件夹
5.读取app文件夹中的.csv文件,显示前5行:
import pandas as pdtitanic = pd.read_csv(“drive/Colab Notebooks/Titanic.csv”)titanic.head(5)
【总结】
速度对于我这种非科班没有计算机资源的人来说,真是帮了大忙了,不然自己连普通的小实验都要在笔记本上运行好久。
感谢google~