Colab笔记本存储在Google云端硬盘上,可以在 Google 云端硬盘里直接编写 Jupyter Notebook,但它在另一台虚拟机上运行。
1、Google 云端硬盘 https://drive.google.com/drive/my-drive注册账号登录。(上网可参考:https://blog.csdn.net/lzbmc/article/details/90105958)
2、空白处右键 → 更多 → Colaboratory
第一次需要关联Colaboratory: 更多 → 关联更多应用 → 搜索Colaboratory,
关联之后在同上面步骤打开
3、打开之后会自动创建jupyter
4、设置GPU
挂载Google Drive
1、关联Google Drive 为了能让Colaboratory使用到你的Google Drive的文件,安装相关库以及授权google账号。运行下面代码,会出现链接,点开授权,得到验证码,复制到出现的框里,回车。
!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}
查看GPU是否在colab中。如果结果为空,则不能使用GPU;如果结果为/device:GPU:0,OK
import tensorflow as tf
tf.test.gpu_device_name()
查看显存情况
!/opt/bin/nvidia-smi
2、挂载云端网盘,没有输出
!mkdir -p drive
!google-drive-ocamlfuse drive -o nonempty
3、指定当前工作目录(直接从电脑上传文件即可)
import os
os.chdir('drive/BERT')
4、验证是否成功:查看子目录
!ls
注意:
挂载只能12个小时,超过12个小时需要重新挂载(第一步代码),要记得保存训练模型,以免断开发生悲剧。
TensorFlow本身就是Google的所以也不需要安装,一些没有的需要自己安装,记得加“!”
以下来自:https://zhuanlan.zhihu.com/p/54389036 (汇总在此,方便自己查看)
Google Colab也有一些比较坑的地方:
- 挂载只有12个小时,也就是说12小时之后你就需要重现挂载一次,所以就需要我们在进行模型训练的时候记得要加上checkpoint,不然你如果训练的模型超过12小时,Google断开挂载你就白白浪费12小时啦。
- 每次使用都需要重新配置你上次自己安装的环境,默认环境当然就不用啦。还有就是CUDA和Cudnn不需要重新配置(亲测),我也不知道为什么...欢迎指正。然后给大家安利一个方法,就是独立出一个页面把你要配的环境的代码都写在该页面下,下次打开只需要运行所有单元格就可以再开一个页面来跑你需要跑的程序啦。
- 模型在训练的过程中 有可能会出现连接中断需要重新连接的情况,不要怕点击重新连接就行,如果经常出现推荐给大家一个脚本神器按键精灵,人不在电脑边上只需要F10启动脚本左键点击功能。
- 如果电脑自动关机了,或者是自动更新什么的,只要时间不是很长,你只需要重启,恢复网页还是可以继续训练的,比较训练是挂载在Google上,但是时间久了也就要重新训练了。
- 如果是断网了也只需要联网点击重新连接即可,同上如果断网太久也就只能重新训练了