前言

最近在学深度学习HyperLPR项目时,由于一直没有比较合适的设备训练深度学习的模型,所以在网上想找到提供模型训练,经过一段时间的搜索,最终发现了一个谷歌的产品--Google Colaboratory。它几乎可以实现零成本玩转深度学习,达到快速训练模型的目的。

Google Colaboratory是谷歌开放的一款深度学习的研究工具,主要用于深度学习的开发和研究。这款工具现在是可以免费使用,但是暂时还是无法确定是不是永久免费。Google Colab最大的好处是给广大的AI开发者提供了免费的GPU和TPU使用!GPU型号是Tesla K80!你可以在上面轻松地跑例如:Keras、Tensorflow、Pytorch等框架。

Google Colab基本操作

网站:Google Colab

进入Google Colab网站-》新建项目

​新建项目

创建完项目之后我们就可以进入Colab的主界面了。

​添加代码块

现在,我们就可以在代码框中输入一些代码。这里注意,如果我们直接输入代码,系统会当作是Python代码执行。例如我们输入:

  1. a = 1
  2. print(a)

运行之后输出框中会打印出"1"。

​运行结果

如果想去执行系统命令,只需要在命令前加感叹号!。例如我们输入:

  1. !ls

运行结果如下:

​运行结果

执行之后输出框中会显示当前目录下的所有文件夹。这是不是很像Linux下的命令行操作?

其实在Google Colab中连接的云端的那台虚拟机正是使用的Ubuntu操作系统,我们可以将自己在Google Colab中的一切操作看作是在用命令行控制云端的那台Ubuntu虚拟机。你可以用它来直接跑代码,也可以使用一些系统命令(我们后面要安装第三方软件都需要借助一系列的系统命令)。

前期配置

1. 修改笔记本环境

每新建一个Colab项目,都需要先对笔记本环境进行配置,运行类型选择是Python2还是Python3,硬件类型选择CPU、GPU或者TPU。(其中Python2是2.7版本,Python3是3.6版本)

​笔记本设置

修改完后点击保存即可。

2. 安装必要的包和软件

在代码段中输入以下代码:

  1. !apt-get install -y -qq software-properties-common python-software-properties module-init-tools
  2. !add-apt-repository -y ppa:alessandro-strada/ppa 2>&1 > /dev/null
  3. !apt-get update -qq 2>&1 > /dev/null
  4. !apt-get -y install -qq google-drive-ocamlfuse fuse
  5. from google.colab import auth
  6. auth.authenticate_user()
  7. from oauth2client.client import GoogleCredentials
  8. creds = GoogleCredentials.get_application_default()
  9. import getpass
  10. !google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret} < /dev/null 2>&1 | grep URL
  11. vcode = getpass.getpass()
  12. !echo {vcode} | google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret}

运行代码,运行中会提示输入验证码,点击程序给出的网址进行验证即可。

3. 挂载Google Drive

其实完成前面的操作我们就可以在Google Colab中敲写代码或者输入一些系统命令了,但是我们现在连接的虚拟机是和Google Drive脱离的,也就是说我们跑的程序无法使用谷歌云盘里的文件,这就非常受限制了。所以我们一般需要将谷歌云盘看作是虚拟机中的一个硬盘挂载,这样我们就可以使用虚拟机轻松访问谷歌云盘。
挂载Google Drive代码:

  1. !mkdir -p drive
  2. !google-drive-ocamlfuse drive

运行挂载Google Drive代码会出现应认证的链接

​装载Google Drive

点击链接获得应用认证码

​应用认证码

将应用认证码复制输入到下面的文本框中,点击回车键即可

​输入应用认证码

加载成功之后在左边的文件中多了一个dirve文件夹

​加载成功

挂载完后在虚拟机中会多出一个文件夹"drive",我们可以用

  1. !ls

命令查看。

更改工作目录

在Colab中cd命令是无效的,切换工作目录使用chdir函数。

  1. import os
  2. os.chdir("drive")

执行以上代码,当前工作目录会进入到drive文件夹下。我们再使用!ls命令会发现系统输出的是drive文件夹下的目录。

回到上级目录:

  1. os.chdir('../')

运行自己的代码

好了,各种准备工作都做好了,我们如何在Colab上直接运行自己写好的代码呢?其实很简单,就跟在自己电脑上一样,使用命令

  1. !python XXX.py

就可以了!详细步骤如下:

1. 将.py文件和其它必要的文件上传到Google Drive

上传速度很快,不用担心网速问题~

2. 将工作目录切换到.py文件所在目录

  1. import os
  2. os.chdir('drive/Colab/Your project folder')

如果不放心的话切换完之后用!ls命令看一下是不是到了指定目录下。

3. 运行代码

  1. !python XXX.py

4. 注意事项

Linux系统下文件路径使用'/'而不是'\'

总结

  1. 可以把Google Colab看成是一台带有GPU或者TPU的Ubuntu虚拟机,只不过我们只能用命令行的方式操作它。你可以选择执行系统命令,也可以直接编写运行python代码。

  2. 挂载完Google Drive,会在虚拟机里生成一个drive文件夹,直接将Google Drive当成是一块硬盘即可。访问drive文件夹里的文件,就是在访问你的Google Drive里的文件。

  3. Colab最多连续使用12小时,超过时间系统会强制掐断正在运行的程序并收回占用的虚拟机。(好像再次连接到虚拟机后,虚拟机是被清空的状态,需要重新配置和安装库等等)

  4. 请使用科学-上网方式。

好了,Google Colab的使用方法就先介绍到这里了,笔者也是刚接触不久,写下了这篇使用总结的文章与大家分享。文中若有问题之处,还请大家多多包涵,可以在评论区指出我的错误,互相学习。


zeusee.com 智云视图

Google Colab——零成本玩转深度学习的更多相关文章

  1. 【微软大法好】VS Tools for AI全攻略(3):低配置虚拟机也能玩转深度学习,无需NC/NV系列

    接着上文,现在我们需要一种穷人的方法来搭建好Azure虚拟机. 思路很简单,因为AI组件的原理其实是传送了script文件和命令上去,那么我们这个虚拟机只要做好了所有的配置,那么我们就可以将它当作深度 ...

  2. 21个项目玩转深度学习:基于TensorFlow的实践详解03—打造自己的图像识别模型

    书籍源码:https://github.com/hzy46/Deep-Learning-21-Examples CNN的发展已经很多了,ImageNet引发的一系列方法,LeNet,GoogLeNet ...

  3. 21个项目玩转深度学习:基于TensorFlow的实践详解02—CIFAR10图像识别

    cifar10数据集 CIFAR-10 是由 Hinton 的学生 Alex Krizhevsky 和 Ilya Sutskever 整理的一个用于识别普适物体的小型数据集.一共包含 10 个类别的 ...

  4. 21个项目玩转深度学习:基于TensorFlow的实践详解01—MNIST机器学习入门

    数据集 由Yann Le Cun建立,训练集55000,验证集5000,测试集10000,图片大小均为28*28 下载 # coding:utf-8 # 从tensorflow.examples.tu ...

  5. 21个项目玩转深度学习:基于TensorFlow的实践详解06—人脸检测和识别——项目集锦

    摘自:https://github.com/azuredsky/mtcnn-2 mtcnn - Multi-task CNN library language dependencies comment ...

  6. 机器学习(Machine Learning)&深度学习(Deep Learning)资料【转】

    转自:机器学习(Machine Learning)&深度学习(Deep Learning)资料 <Brief History of Machine Learning> 介绍:这是一 ...

  7. 分享《机器学习实战基于Scikit-Learn和TensorFlow》中英文PDF源代码+《深度学习之TensorFlow入门原理与进阶实战》PDF+源代码

    下载:https://pan.baidu.com/s/1qKaDd9PSUUGbBQNB3tkDzw <机器学习实战:基于Scikit-Learn和TensorFlow>高清中文版PDF+ ...

  8. 20个令人惊叹的深度学习应用(Demo+Paper+Code)

    20个令人惊叹的深度学习应用(Demo+Paper+Code) 从计算机视觉到自然语言处理,在过去的几年里,深度学习技术被应用到了数以百计的实际问题中.诸多案例也已经证明,深度学习能让工作比之前做得更 ...

  9. 机器学习(Machine Learning)&深度学习(Deep Learning)资料汇总 (上)

    转载:http://dataunion.org/8463.html?utm_source=tuicool&utm_medium=referral <Brief History of Ma ...

随机推荐

  1. Cookie实现购物车功能

    这里的购物车暂时存放书,后期把参数改成Object,把方法抽取成接口,只要实现了接口的Object类都可以放进购物项,这样就实现了购物任何物品 使用购物项因为一个购物项可以包含某种商品的数量,总价等, ...

  2. 8.8poc包问题

    对于8.8的包的问题:zabbix server设备重启后 zabbix server,mariadb,zabbix agent启动不了.是因为在7代的centos中在主机重启后.自动删除了/var/ ...

  3. Unicode-objects must be encoded before hashing 错误解决办法

    提交注册用户数据后出来这个,错误原因是update()必须指定要加密的字符串的字符编码 #encryptions1 = sha1()s1.update(upwd.encode("utf8&q ...

  4. cogs 920. [東方S1] 琪露诺

    二次联通门 : cogs 920. [東方S1] 琪露诺 /* cogs 920. [東方S1] 琪露诺 dp 方程为dp[i] = max (dp[i - L], dp[i - L + 1] ... ...

  5. mac 安装注册Charles

    软件去官网下载安装即可. 下载地址:https://www.charlesproxy.com/download/ 适用于Charles任意版本的注册码Charles 4.2.7 目前是最新版,可用. ...

  6. To ssh://xxx.com:8022/test/project.git ! [remote rejected] master -> master (pre-receive hook declined) error: failed to push some refs to 'ssh://xxx.com:8022/test/project.git'

    To ssh://xxx.com:8022/test/project.git ! [remote rejected] master -> master (pre-receive hook dec ...

  7. ubuntu17.10 源

    1.保险做法先备份源文件:  cp -i /etc/apt/sources.list /etc/apt/sources.list_backup 2.打开sources.list:   sudo ged ...

  8. 《Go语言实战》读书笔记

    <Go语言实战>中文版pdf 百度网盘: https://pan.baidu.com/s/1kr-gMzaPAn8BFZG0P24Oiw 提取码: r6rt 书籍源码:https://gi ...

  9. MLflow系列3:MLflow项目

    英文链接:https://mlflow.org/docs/latest/projects.html 本文链接:https://www.cnblogs.com/CheeseZH/p/11945432.h ...

  10. essay sundry

    感觉很多单词, 即使是所谓的抽象名词都有复数形式,是习惯用法,比如, details, comments, ads等 ad: 广告, advertise的缩写? advertise. advertis ...