在上一篇文章《机器学习硬件设施差?免费使用谷歌的GPU云计算平台》中,我们说明了如何使用Google Colab云平台。通过Jupyter Notebook,我们可以交互式的运行python脚本,然而对于复杂的python脚本,我们通常会编写python文件,甚至编写python模块,组合成应用。本篇我们将演示如何在Google Colab上执行python文件,克隆github项目,进行深度学习建模。

在Google Colab中导入并运行.py文件

为了达到这一目的,你需要安装一些必要的系统库,并进行授权。

!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 Colab和Google Drive毕竟属于两个不同的产品,Google Colab相当于分配给每个用户一个云虚拟机,要挂载Google Drive当然需要授权。

接下来就是挂载Google Drive

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

上传github上的一个文件mnist_cnn.py到Google Drive的GoogleAI文件夹(参考上一篇文章:机器学习硬件设施差?免费使用谷歌的GPU云计算平台)。

因为这个python程序使用到了Keras框架,所以运行前还需要安装Keras框架:

!pip install -q keras

现在可以运行脚本了,这个脚本是在MNIST数据集上训练一个简单的深度卷积网络。

!python3 drive/GoogleAI/mnist_cnn.py

从上面的示例可以总结出,在Notebook中执行外部命令,比如apt-get、mkdir等,需要在命令前加上!符号。如果你还需要其它的python库,可以通过pip install命令来安装,从这个意义上讲,Google Colab上可以使用几乎所有的机器学习框架。

克隆github仓库到Google Colab

  • 找到github仓库的git地址

    比如:https://github.com/wxs/keras-mnist-tutorial

  • 克隆git仓库

!git clone https://github.com/wxs/keras-mnist-tutorial.git drive/GoogleAI/keras-mnist-tutorial
  • 在Google Drive中访问文件夹

  • 打开Notebook文件

  • 运行

注意:该Notebook包含多个交互代码段,请依次点击每个代码段执行。

如何安装库

  • 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
  • MxNet
!apt install libnvrtc8.0
!pip install mxnet-cu80
import mxnet as mx
  • OpenCV
!apt-get -qq install -y libsm6 libxext6 && pip install -q -U opencv-python
import cv2
  • XGBoost
!pip install -q xgboost==0.4a30
import xgboost
  • GraphViz
!apt-get -qq install -y graphviz && pip install -q pydot
import pydot
  • 7zip Reader
!apt-get -qq install -y libarchive-dev && pip install -q -U libarchive
import libarchive
  • 其它

    使用!pip install或!apt-get install命令,具体参考库的安装说明。

如何重启Google Colab?

!kill -9 -1

Google Colab的缺点

看了上面的介绍,你是否磨掌擦拳,准备将项目迁移到Google Colab上?且慢,天下没有免费的午餐,下面说说Google Colab的不足之处。

Google Colab最大的不足就是使用虚拟机,这意味着什么呢?

这意味着我们自行安装的库,比如Keras,在虚拟机重启之后,就会被复原。为了能够持久保存数据,我们可以借助Google Drive。还记得我们之前为了挂载Google Drive所做的操作吗?这也同样意味着重启之后,要使用Google Drive,又要把上面的步骤执行一遍。更糟糕的是,不仅仅是虚拟机重启会这样,在Google Colab的会话断掉之后也会这样,而Google Colab的会话最多能够持续12小时。

当然,Google Colab已经默认安装了Tensorflow的环境,如果你是准备使用Tensorflow进行深度学习,那还是不错的,但也仅限于小型的数据建模。

参考

  1. Google Colab Free GPU Tutorial

免费使用谷歌的深度学习云服务相关推荐

  1. 一个很好用的深度学习云平台--Floyd

    前些天在逛知乎的时候发现了一个好东西,一个非常好用的深度学习云平台--Floyd.它是一个非常便捷的深度学习云计算平台,虽然我前面已经搭建过了GPU版本的tensorflow,但是在速度上还是比不上在 ...

  2. 关于深度学习云服务器推荐

    关于深度学习云服务器推荐 免费的云服务器 免费+付费的云服务器 付费的云服务器 2022.2.7 更新推荐新的付费云服务器 自己也是最近才开始接触到机器学习和深度学习,很直观的一个感受就是跑起代码来特 ...

  3. 推荐一个好用的深度学习云平台--Floyd

    前些天在逛知乎的时候发现了一个好东西,一个非常好用的深度学习云平台--Floyd.它是一个非常便捷的深度学习云计算平台,虽然我前面已经搭建过了GPU版本的tensorflow,但是在速度上还是比不上在 ...

  4. 深度学习云服务器怎么选?哪个便宜?

    深度学习云服务器怎么选?机器学习是实现人工智能得方法,深度学习是实现机器学习得技术.机器学习在实现人工智能时需要人工辅助,而深度学习是为了让过程完全自动化.本篇来给大家分析一下深度学习服务器选择的问题 ...

  5. 谷歌利用深度学习结合荧光标记,准确预估显微图像

    文章来源:ATYUN AI平台 在生物学和医学领域,显微技术为研究人员提供人肉眼无法观察到的细胞和分子的细节.透射光显微镜能够将生物样本在一边被照亮且成像,技术相对简单,生物样本耐受度高,然而缺点是产 ...

  6. 推荐给没有机器的小伙伴------深度学习云平台Floydhub

    #第一篇博客文档# 公司的机器还没有来 Floydhub是一个简单易用的深度学习云平台,支持jupyter notebook, 非常的简单好用.而且有免费的20小时,之后每小时GPU大约0.6美元,C ...

  7. 谷歌发布深度学习新算法,适用于真实机器人的技能学习

    https://www.toutiao.com/a6649215346496504327/ 2019-01-22 15:11:28 通过这种名叫SAC(柔性致动/评价)的强化学习算法,机器人能很快地完 ...

  8. 香侬科技Service Streamer:加速深度学习Web服务、极大提高GPU利用率。| 百万人学AI评选

    2020 无疑是特殊的一年,而 AI 在开年的这场"战疫"中表现出了惊人的力量.站在"新十年"的起点上,CSDN[百万人学AI]评选活动正式启动.本届评选活动在 ...

  9. 云平台运行python_如何免费云端运行Python深度学习框架?

    想运行TuriCreate,却没有苹果电脑,也没有Linux使用经验,怎么办?用上这款云端应用,让你免安装Python运行环境.一分钱不用花,以高性能GPU,轻松玩儿转深度学习. 痛点 <如何用 ...

最新文章

  1. MySql中4种批量更新的方法
  2. 前端和后端哪个工资高_嵌入式软硬件工程师哪个更有前途,工资还高
  3. java中什么是运行异常_在java中最常用的运行时异常是什么?
  4. ocp oracle 考试报名_获得Oracle认证对拓展职业前景的影响
  5. c# mysql 时间_c# – 无法在VS2010中将MySQL日期/时间值转换为System.DateTime
  6. c语言求两个有序表合成差集代码,两个有序链表求差集,合并为一个有序链表...
  7. centos的防火墙配置
  8. bert代码使用详解
  9. awk的关联数组版本支持
  10. 教你阅读vue源码的正确姿势,看完就学废!
  11. AlibabaCloud
  12. 融360叶大清:不关注短期股价变化 希望触达三四线城市年轻人
  13. 普通学渣的春招,秋招历程以及实习心路
  14. 关于产品的一些思考——豌豆荚之应用下载
  15. 9年研发经验,扫地盲僧带你看2022年前端未来发展趋势
  16. 基于JSP的网上在线租车系统平台设计与实现
  17. java任意长度获取随机数
  18. r软件中合并列_将摘要合并到软件中
  19. 将网络url图片链接转换为File类型对象
  20. codesign 想要访问您的钥匙串中的密钥

热门文章

  1. 简单理解什么是虚拟存储器
  2. 555-大数据查重-位图算法
  3. springboot配置进行https请求访问demo
  4. Spring AOP:搞清楚advice的执行顺序
  5. 主成分分析(PCA)与矩阵奇异值分解(SVD)
  6. 暴力字典密码破解之crypt
  7. 比比网开源的一款头像制作小程序
  8. mac 提示文件已损坏 解决办法
  9. 统一门户:基于网关的统一用户认证方案
  10. 恢复IDEA中误删的文件