前言

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

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

Google Colab基本操作

网站:Google Colab

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

​新建项目

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

​添加代码块

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

a = 1
print(a)

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

​运行结果

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

!ls

运行结果如下:

​运行结果

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

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

前期配置

1. 修改笔记本环境

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

​笔记本设置

修改完后点击保存即可。

2. 安装必要的包和软件

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

!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}

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

3. 挂载Google Drive

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

!mkdir -p drive
!google-drive-ocamlfuse drive

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

​装载Google Drive

点击链接获得应用认证码

​应用认证码

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

​输入应用认证码

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

​加载成功

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

!ls

命令查看。

更改工作目录

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

import os
os.chdir("drive")

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

回到上级目录:

os.chdir('../')

运行自己的代码

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

!python XXX.py

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

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

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

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

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

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

3. 运行代码

!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. Mac 无法安装安装psutil 报错 error: command '/usr/bin/clang' failed with exit status 1

    psutil是一个特别好用来检查系统资源的一个包, 但是 在Mac安装却总是报错 查看监控系统脚本, 点这里 mac系统版本: Macos Mojave 10.14.3 报错信息如下: WARNING ...

  2. IIS服务器部署web应用《一》

    最近了解到开发用iis部署环境,于是了解了下. IIS用于部署web应用,其简单,配置方便,可以用作本地机器作为服务器进行部署.且所在部署系统为windows,便于使用iis. 端口80需要修改为别的 ...

  3. 将jar包导入maven本地仓库

    https://blog.csdn.net/lvdaan/article/details/79760976 一.首先配置环境变量 在path 中添加 maven的bin 的路径 例如:D:\soft\ ...

  4. sentinel-dashboard安装、运行(docker)

    https://github.com/alibaba/Sentinel/releases 下载源码 修改成支持nacos(略) mkdir /opt/sentinel-dashboard把编译好的se ...

  5. idea2017显示maven Project菜单

    右侧就出现 maven project菜单了.

  6. C#实现图像拖拽以及锚点缩放功能

    本文主要实现C#窗体图像拖拽以及锚点缩放功能 1.新建Windows窗体应用项目,添加一个panel控件,在panel控件上添加picturebox控件 代码如下: using System; usi ...

  7. Guava 库

    https://www.yiibai.com/guava https://wizardforcel.gitbooks.io/guava-tutorial/content/1.html com.goog ...

  8. Nginx发布静态图片服务器

    vir-hosts.conf内容 server { listen ; server_name _; location ~ .*\.(gif|jpg|jpeg|png)$ { expires 24h; ...

  9. postgresql cstore_fdw安装与性能测试

    据介绍,cstore_fdw实现了 PostgreSQL 数据库的列式存储.列存储非常适合用于数据分析的场景,数据分析的场景下数据是批量加载的.这个扩展使用了Optimized Row Columna ...

  10. python-selenium登陆今日头条

    https://blog.csdn.net/a942242856/article/details/88379727 原文地址:http://www.bianbingdang.com/article_d ...