贫穷且没有信用卡visa的我,准备先暂时用Colab,因为

Colab 免费 送GPU

  1. 带Tesla K80GPU. Google Drive 15G云端硬盘.
  2. Colab ≈ 带GPU的云端Ubuntu虚拟机。只能用命令行的方式操作它。你可以选择执行系统命令,亦或是直接编写运行python代码。Colab最多连续使用12小时,超过时间系统会强制掐断正在运行的程序并收回占用的虚拟机。(这里有个问题,好像再次连接到虚拟机后,虚拟机是被清空的状态,需要重新配置和安装库等等)
  3. 挂载Google Drive,会在虚拟机里生成一个drive文件夹,Google Drive ≈ 硬盘。访问drive文件夹里的文件,就是在访问你的Google Drive里的文件。

原因是
mountin gdrive
这里到底用的是什么语言阿? Python?反正是文档读写,有点懂了...

如何使用呢? 基本可以参考这2篇:

官方Colaboratory新手教程
(译) Google Colab 免费GPU使用教程

简介 Google Colaboratory

Colaboratory 是一个 Jupyter 笔记本环境,"collaborate"即加入了Google Docs团队协作功能,基于Google Servers运行,不需预安装即可使用。多人在线写Paper,边写边可运行代码支持Chrome/Firefox。支持Python2.7/3.6。暂未支持R/Scala。

Fast.ai上也有几款云的比较。这个后期我再写一篇文章分析下几种云的差别吧

fast.ai with Colab

学完Andrew Ng的ML之后,我就开始了配合视频Fast.ai,可参我的机器学习学习计划
而且所有文档都是jupyter写的,可以边写边练习,
这个课程更实战,而且作者是Kaggle大神,有很多实操技巧,总之感觉很刺激。
和我一样只是暂时用Colab做Fast.ai的话,看这篇官方指南就可以了
Fast.ai with Colab

不过这里到底是什么语言阿? Python吗? dest就是destination, 可是这样操作似乎并不会在google云端硬盘生成一个新的文件夹“fastai-v3”? 这里import的Drive,应该是Colab的官方API/库之类的东西吧?

我自己碰到的一些问题:

图片无法加载: no such file

图片描述
原因是文档结构
想了一下是静态资源的问题,和下一问同,简单说就是只存了单个文件,图片没存过来。

想把github的项目仓库整一个复制Clone过来,要怎么做?

这是我碰到的一个问题,因为单个文档没问题(用前面几篇文章里说到的方法)(因为转存副本的时候保存的是单个文件),但是怎么clone一个仓库到Google Drive呢?

我能想到的几种solution是:

  1. 在单个ipynb(colab笔记)文件中,!git clone但是虽然之前的文章里提到可以,如图片描述然而这样做,我试了一下,(是我语文不好吗?)我明明看这篇文章的意思,会在google云盘新产生一个文件夹(内容是github的仓库),可是我试了,没有阿! 而且,似乎因为没有Clone到Google 云盘上,Colab每次重连VM,都会没有数据。
  2. 在单个ipynb中,图片描述
    然而并不行,说好的linux呢?还是我写错了?我怀着git clone到gDrive上,就能在google 云盘有文件的美好愿景...T AT 话说群里讨论的结果是,不用直接就是cd,待我试一下
  3. 现实一点...好像可以像Step 4 Saving your data files里面一样读写文件,如果这是用的python的话,可以参考这个???
  4. 从github手动下载,然后手动上传到Colab/google云盘???不过我下了一半就断线了T。T
  5. 说起来好像可以拿gDrive做git的服务器 和这个有关系吗?...
  6. 我准备先试试其他文件,可能是权限的问题???
  7. 卧槽好像是这个原因!!!!!!!待我试一下.. 图片描述
  8. Colab文件功能

已经搞定了 忘了怎么弄的了。。改天补上 先传两张截图

图片描述

这个问题好像解决了但是我忘记了我是怎么解决的了...

clipboard.png
clipboard.png
clipboard.png

...哎呀5555有点晕,到现在都还是有点不知道该怎么整

其实可以重新看一下Google Cloud VM 的Doc

到时候看看有没有其他解决办法吧

项目需要的数据data这些怎么办呢?

都是类似的问题,zip文件啦

如何修改Drive里的文件

为什么 drive.mount() 有时会失败,并提示“超时”?为什么在通过 drive.mount() 装载的文件夹中执行的 I/O 操作有时会失败?

当文件夹中的文件或子文件夹数量太多时,Google 云端硬盘操作可能会出现超时问题。如果有成千上万个项目直接包含在“我的云端硬盘”顶级文件夹中,那么装载该云端硬盘可能会超时。重复尝试可能最终会取得成功,因为在超时之前,失败的尝试会在本地缓存部分状态。如果您遇到此问题,请尝试将直接包含在“我的云端硬盘”中的文件和文件夹移至子文件夹。如果在 drive.mount() 运行成功后从其他文件夹中读取数据,可能会出现类似问题。从含有许多项目的任何文件夹中访问项目都可能会导致错误,例如 OSError: [Errno 5] Input/output error (python 3) 或 IOError: [Errno 5] Input/output error (python 2)。同样,您只需将直接包含的项目移至子文件夹中,便可解决此问题。

后期可能存在的问题:

1.K80不够用,速度不行
2.Google Drive 15G还是不够用
3.Google Drive mount 看上去是块磁盘,实际上每次文件访问都会转成 一次api调用,速度很慢

本文参考了以下内容:
Colaboratory免费云端运行Python深度学习框架
Google Colaboratory 奇技淫巧
Drive FUSE example.ipynb
External data: Drive, Sheets, and Cloud Storage
Colab toturial2018FAQ
Google Colab 免费GPU使用教程
Fast.ai课程中文版笔记 有StudyGroup
Google Colab新手指南
Colaboratory常见问题解答FAQ
机器学习深度学习云GPU资源与对比
Fast.ai Documentation

请使用科学上网方式。

欢迎加Q群讨论

MachineLearning/AI/PyTorch/DeepLearning

备注SFAI:669072360


yint
388 声望21 粉丝

转AIing