1 连接Colab

1.1 上传文件夹到云端硬盘

1.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} &1 | grep URL
vcode = getpass.getpass()
!echo {vcode} | google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret}

1.3 Colab上挂载Google Drive

from google.colab import drive
drive.mount("/content/drive")

1.4 进入到文件所在的目录

import os
path="/content/drive/MyDrive"
os.chdir(path)
os.listdir(path)

path="/content/drive/MyDrive"包含内容为如下界面内容:

得到的结果为:['Colab Notebooks', 'Untitled', 'Untitled0.ipynb', 'colab']

2 下载图像数据集

最近在用谷歌云盘的colab跑目标检测的代码,要把KITTI图像数据集保存在谷歌云盘,但是在官网上好像需要发送到邮箱然后再下载比较麻烦,所以在CSDN上找到了这个好链接,可以直接在colab上用代码下载保存在谷歌云盘,非常nice! 分享给大家

2.1 下载地址

各类图像数据集下载地址

2.2 下载代码

在云盘中要保存的地址

import os
os.chdir('/content/drive/MyDrive/Colab')

下面是下载数据集的代码,只需要【!wget 网址

# 下载数据集,后面记得换上自己需要的数据集网址
!wget https://s3.eu-central-1.amazonaws.com/avg-kitti/data_object_image_2.zip

3 命令说明

3.1 查询GPU性能

!/opt/bin/nvidia-smi

3.2 查询当前位置所在目录

!ls

3.3 查看当前的工作路径

!pwd

3.4 新建文件夹

!mkdir  XXX  新建文件夹,XXX是你的路径与文件名,例如下图是在根目录下创建data文件夹。

!mkdir ./data

3.5 设置工作路径

#设置根目录为此路径,即工作路径
import os
os.chdir('/content/drive/MyDrive/paper/fastswa_semi_metric_files/')

上面代码是设置云端硬盘项目主目录为工作根目录,这样子的话就无需改动,项目里面的路径了,对了项目中要使用相对路径,否则会报错。如实在需要使用绝对路径,那么一定要是 /content/drive/MyDrive/ 开头。这样的话,我们就进入到了我们的项目中了,再执行下面的命令就可以运行我们的mian.py 了,前面感叹号一定要是英文感叹号。

! python main.py

3.6 复制解压数据集

如此一来就可以在Colab中连接到谷歌云端硬盘,然后再进入项目主目录运行我们的代码了。但是又有个问题来了,就是我们的Colab服务器与云端硬盘并不是在一台服务器上,所以如果我们的项目中有大量的数据需要读取,那么这个I/O操作是非常消耗时间的。这个时间简直让人疯了,比我本机还慢,所以为了解决这个问题,需要把云端的数据加载到上文的 content 路径下,例如上文的data 目录下。首先把数据打包成zip压缩包上传到云端硬盘中,例如我的数据是data-local.zip,放在Demo路径下,使用如下命令进行copy到./data/下,也就是content/data路劲下,Linux中./表示主目录content/。

!cp /content/drive/MyDrive/paper/Demo/data-local.zip ./data/

然后再进入到./data目录下,解压data-local.zip数据,这个过程都很快,前面copy数据也非常快,然后就需要改一下代码中的读取数据的路径了,改成./data/data-local/XXX 即可读取,这时候运行起来就非常快了!

!cd ./data && unzip data-local.zip

4 运行自己的py文件

  1. 将py文件和其他必要文件上传到Google Drive
  2. 将工作目录切换到py文件所在的目录
import os
os.chdir('drive/Colab/自己的文件')

不放心的话切换之后用!s命令查看是不是到指定目录

3. 运行代码

!python xx.py

5 注意事项

1. Linux系统下文件路径使用‘/’而不是“\”,所有带“\”路径都会提示文件不存在
2. 使用云端硬盘保存数据
直接使用colab可以上传临时数据,保存临时结果,一旦断开连接,数据将会丢失,所以强烈建议使用云端硬盘保存数据。
3. 断开连接的解决办法
在使用Colab时,一段时间挂机未操作有可能导致连接断开,但是要是想跑时间较长的项目时不可能一直盯着屏幕,解决办法如下:
在浏览器中按F12,找到console将下面的代码粘贴到控制台运行即可。

function ClickConnect(){colab.configconsole.log("Connnect Clicked - Start"); document.querySelector("#top-toolbar > colab-connect-button").shadowRoot.querySelector("#connect").click();console.log("Connnect Clicked - End");
};
setInterval(ClickConnect, 60000)

4. 运行时间过长的项目
建议保存中间结果,下次使用时直接读取中间结果继续跑。

6 防中断

在Firefox和Chrome中,在colab页面,按Ctrl+Shit+i,打开检查页面(也可以右击鼠标,选择“检查”),并切换到控制台或terminal标签,chrome中为Console。

function ConnectButton(){console.log("Connect pushed"); document.querySelector("#top-toolbar > colab-connect-button").shadowRoot.querySelector("#connect").click()
}setInterval(ConnectButton,60000);

执行了代码后,记下弹出的数字,那是intervalId,当想停止这段代码的执行时,只需要执行

clearInterval(intervalId)

7 在gdrive中保存调用模型

7.1 保存模型

要保存我们的模型检查点(或任何文件),我们需要将其保存在驱动器的安装路径中。eg.

model_save_name = 'classifier.pt'
path = F"/content/gdrive/My Drive/{model_save_name}"
torch.save(model.state_dict(), path)

7.2 调用模型

记住我们保存的路径:

eg.

model_save_name = 'classifier.pt'
path = F"/content/gdrive/My Drive/{model_save_name}"
model.load_state_dict(torch.load(path))

8 在需要同步的地方手动强制刷新

我想将训练的中间结果写到Drive里保存,需要等所有任务都完成,并且在这边显示已经存在,回到Drive目录里查看仍然啥都没有,这个时候就可能页面关了,缓存文件还没更新过去。实际使用中,可以在需要同步的地方手动强制刷新:

# 实现对网盘的同步
drive.flush_and_unmount()

谷歌云盘Colab使用心得相关推荐

  1. google colab连接谷歌云盘

    在做深度学习项目时,我们一定会需要一个服务器,有时候因为条件限制没有服务器,可以用google的colab来跑我们的程序,它最大的特点是有GPU支持,型号Tesla P100-PCIE-16GB GP ...

  2. 谷歌云盘Colaboratory如何载入文件

    谷歌云的Colaboratory的项目的确不错,提供Tesla K80这块高级的GPU加速功能,但是也存在一个问题. 因为Colaboratory是完全云端的,所以,每次如果想让他访问谷歌云盘的内容, ...

  3. 【我的第一个目标检测课题】2、薅一把Google的羊毛!使用Colaboratory链接谷歌云盘在线进行网络训练

    2020.12.30晚记 在上一篇中已经介绍了用自己的电脑配置了GPU,配置完后训练速度确实是大大提升,但是因为自己的轻薄本显存太少了,只有2G,而我们的数据集还挺大,图片分辨率也高,所以尽管把bat ...

  4. 谷歌云服务器CoLab跑Faster_RCNN记录

    本文参考:使用colab训练faster-rcnn_LCCFlccf的博客-CSDN博客 首先下载配置谷歌云盘下载配置不做介绍. 1.配置环境 !apt-get install -y -qq soft ...

  5. 2019 Google Drive Api 上传文件到谷歌云盘 获取分享下载链接

    如果图片失效或者格式已乱,建议阅读原文   在[案例]搭建 Quizzes 网站,每天赚取 30-50 美元 提到下载站项目,因为整个项目代码加上一些说明,会导致内容太多,所以准备分成几部分,这样看起 ...

  6. google谷歌云盘_Google舞蹈综合症

    google谷歌云盘 Good stuff-just the thing my buddy Adam Cogan is looking for as he dances to the top of t ...

  7. google谷歌云盘_如何(以及为什么)开始使用Google云打印

    google谷歌云盘 Wouldn't it be wonderful if you could print from any of your devices (desktops, phones, t ...

  8. google谷歌云盘_Google 12岁生日快乐

    google谷歌云盘 It's Google's 12th Birthday. You'd probably realized that if you've visited the search en ...

  9. google谷歌云盘_Google诗歌中的冬天

    google谷歌云盘 Seasonal decoration and localization have been discussion points around the SitePoint off ...

  10. Google Colab 读取/存储 google drive(谷歌云盘)内的文件

    当然使用个命令需要登录google账号 获取相应的验证码 将验证码复制到框内 回车即可继续执行 完整如下: import os from google.colab import drive drive ...

最新文章

  1. 2018-3-5 (论文—网络评论中结构化信息处理的应用于研究)笔记三(互信息,信息增益,期望交叉熵,基于词频的方法,CHI统计)
  2. RadioButton 自定义控件
  3. BZOJ1922 SDOI2010 大陆争霸 最短路
  4. java中8种数据类型和默认值所占字节数
  5. (王道408考研操作系统)第一章计算机系统概述-第一节5:系统调用
  6. java 用 jxl poi 进行excel 解析 *** 最爱那水货
  7. 关于PHP的工作流引擎
  8. 微信内置浏览器调起外部浏览器打开指定网页连接
  9. Windws Server 2012 Server Backup(备份与还原)
  10. Android -- TabHost
  11. QT5.14.2 + MSVC2017_64 + MySQL5.7.29 数据库驱动编译及配置
  12. 二维码QR 码纠错级别
  13. Windows下的MySQL实例没有mysql.user表#Olivia丶长歌#
  14. 计算机换内存条解决方案
  15. TM4C123GXL_PWM
  16. 手动挡停车技巧;换挡注意
  17. 接口练习:猫狗案例扩展跳高功能
  18. Source Insight 许可证激活
  19. vscode cshtml 智能提示
  20. 傻瓜式使用SpringSecurity完成前后端分离+JWT+登录认证+权限控制

热门文章

  1. mysql 取首字母_MySQL中获取拼音首字母的方法
  2. Matlab - 演化博弈论实现
  3. Unity 工具之 UniWebView 内嵌网页/浏览器到应用中,并且根据UGUI大小放置(简单适配UGUI)
  4. acunetix12及Awvs12.x安装
  5. Eclipse ADT插件版本下载大全
  6. 前端学习/ Day1/HTTP简单易懂/GET POST/HTTP特性/HTTP与HTTPS/HTTP版本演变/加解密数字签名数字证书
  7. 总结:IDEA如何解析wsdl文件为Java源代码
  8. 使用foobar2000将cue文件分割wav、ape、flac无损音乐
  9. chrome frame 在 iframe frameset 下无效 的处理方法
  10. 笔记本linux电脑系统下载软件,戴尔笔记本 linux 系统下载软件