分享使用谷歌Colab 常用小tips, 玩转Google Colab

文章目录

  • 分享使用谷歌Colab 常用小tips, 玩转Google Colab
    • 什么是Google Colab
    • 挂载谷歌云盘
    • 命令
      • 1.wget下载命令
      • 2.git clone深度学习库
      • 3.Linux 复制命令
      • 4.解压unzip命令
      • 5.建立软连接
      • 6.运行python文件
      • 7.使用交互式shell
    • 防掉线措施
    • 查看当前的内存和存储使用情况 以及 有效增加colab 12GB + RAM
    • 总结

colab实际上就是一个可以白嫖GPU的linux服务器,所以里面其实有很多东西是很有用的,如果单纯去利用colab的一些命令,还是慢了,linux真的yyds,现在来学习一下。

如果遇到好玩的,也会不断进行补充

什么是Google Colab

Google Colab是谷歌提供的免费Jupyter 笔记本环境,不需要什么设置与环境配置就可以使用,完全在云端运行。不影响本地的使用。

Google Colab为研究者提供一定免费的GPU,可以编写和执行代码,所有这些都可通过浏览器免费使用。同学们可以在上面轻松地跑 Tensorflow、Pytorch 等深度学习框架。

尽管Google Colab提供了一定的免费资源,但资源量是受限制的,所有 Colab 运行时都会在一段时间后重置。Colab Pro 订阅者的使用量仍会受到限制,但相比非订阅者可享有的限额要多出大约一倍。Colab Pro+ 订阅者还可获享更高的稳定性。

不过这里简单提一下,如果要用colab,需要进外网,这可能就要靠大家自己了

Colab官网:https://colab.research.google.com/
(需要外网才可以进入)

挂载谷歌云盘

有时候如果数据在云盘上的时候,我们可以通过一下命令挂载云盘,不过这一部分是需要验证权限的。

from google.colab import drive
drive.mount('/content/gdrive')

命令

1.wget下载命令

wget可以应对很多很多下载的数据集,比如我想下我挂载在我的github的一个猫狗数据集

我就可以用以下代码进行下载并解压

!wget https://github.com/Dreaming-future/Pytorch-Image-Classification/releases/download/v1.1.0/cats_and_dogs_filtered.zip
!unzip -q cats_and_dogs_filtered.zip

只需要有下载链接和权限,我们就可以从中进行下载,除此之外,为了有时候不重复下载,会利用wget -nc,就是如果本地有这个文件就不会下载了。

2.git clone深度学习库

这一步,我们需要完成深度学习仓库的下载,我们使用git clone指令进行下载。执行如下指令后,左边的文件中多出了Pytorch-Image-Classification。没有的话就去左侧刷新一下。

%cd /content
!rm -rf Pytorch-Image-Classification
!git clone https://github.com/Dreaming-future/Pytorch-Image-Classification.git

3.Linux 复制命令

有时候希望把数据从云盘复制到云端文件夹,但是google本身含有一个shutil太慢了,我发现linux命令才是yyds,这里介绍一下

这样就可以将path1 文件 复制到path2文件,而且速度很快

!cp path1 path2

4.解压unzip命令

前面有提过一点,我们可以直接进行解压文件,发到当前文件夹下,也可以自己设置

!unzip -q cats_and_dogs_filtered.zip

如果要解压到某一个位置,可以利用-d+指定位置

5.建立软连接

我发现有个东西是真的很聪明,就是软连接,我们可以将云端文件夹和自己的colab的Drive进行同步。

如果将权值保存在原始根目录下的logs文件夹,发生断线网络就白训练了,浪费大量的时间。

可以将google云盘软连接到根目录下,那么即使断线,权值也保留在云盘中。

!rm -rf logs
# 与drive建立软连接
!ln -s /content/gdrive/MyDrive/模型权重文件/logs logs

6.运行python文件

我们需要python文件的时候,也是可以运行的,比如我们想运行train.py文件,我们就可以直接运行以下代码即可

!python train.py

7.使用交互式shell

Colab 中没有内置的交互终端。但是可以使用 bash 命令以交互方式使用 shell 命令。只需运行此命令,你将获得交互式输入。

!bash

现在,你可以在给定的输入框中运行任何 shell 命令。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LibMJNTQ-1659690887939)(https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2020%2F0927%2F4f59948fp00qhb20n000ec000g10055m.png&thumbnail=660x2147483647&quality=80&type=jpg)]

要退出 shell,只需在输入框中键入 exit。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5aANYZBO-1659690887940)(https://nimg.ws.126.net/?url=http%3A%2F%2Fdingyue.ws.126.net%2F2020%2F0927%2F1f9853ffp00qhb20n000vc0009w004fm.png&thumbnail=660x2147483647&quality=80&type=jpg)]

防掉线措施

有时候掉线是因为网络不稳定,有时候就是谷歌的验证机制了

听说可以通过自动点击来减少掉线频率,这时候可以利用javascript的语法,类似与不间断的点击得到以下代码
在Google colab的按F12,点击网页的控制台,粘贴如下代码:

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

如果天天还掉线的话,我们就可以每次记录一下权重的文件的和学习率的值

这样的话,即使我们掉线也可以重新进行训练即可

查看当前的内存和存储使用情况 以及 有效增加colab 12GB + RAM

Colab 提供了 RAM 和磁盘使用情况的指示器。如果将鼠标悬停在指示器上,将弹出一个窗口,其中包含当前内存和存储使用情况和总容量。

我发现,有时候我们现在创建的系统更多的RAM是12GB的,有时候程序太大会RAM崩溃,自动断掉,这个时候,需要我们用pro才能解决。

不过其实还有一个办法可以得到,获得超过12 GB RAM 的唯一方法是复制以前分配的25 GB内存的笔记本

打开链接:https://colab.research.google.com/drive/155S_bb3viIoL0wAwkIyr1r8XQu4ARwA9?usp=sharing

(1)按图操作,在谷歌云盘中保存副本

(2)在谷歌云盘中用Google Colab打开副本

(3)成功获得25GRAM

总结

使用Colab训练比较重要的是处理好路径的关系,找到哪个文件在哪里,文件夹的执行目录在哪里,就可以比较简单的运行起程序了,不过Colab确实存在断线问题,我们需要时刻保存好文件,因此我将权值直接保存在云盘上,这样也不会丢失。

分享使用谷歌Colab 常用小tips, 玩转Google Colab相关推荐

  1. 20 种小技巧,玩转 Google Colab

    选自 | amitness.com 作者 | Amit Chaudhary 转自 | 机器之心 编辑 | 陈萍 Google Colab 给广大的 AI 开发者提供了免费的 GPU,你可以在上面轻松地 ...

  2. 20种小技巧,玩转Google Colab

    本文转载自机器之心. 选自amitness.com 作者:Amit Chaudhary 机器之心编译 编辑:陈萍 Google Colab 给广大的 AI 开发者提供了免费的 GPU,你可以在上面轻松 ...

  3. yolov4用Google Colab训练自己的数据集

    yolov4训练数据 简介 运用google Colab训练自己的Yolov4数据集 google colab的使用 项目使用流程 1.设置GPU可用 2.clone项目构建Darknet git c ...

  4. 初学者学习深度学习,不得不会的Google Colab基本操作

    @Author:Runsen 最近,一直在学习Google Colab.可以来说,学习Ai,入门就是Google Colab 文章目录 Google Colab 启动Google Colab 从Git ...

  5. 本人常用的一些编码小Tips(虽然不多,但很好用)

    本人常用的一些编码小Tips 我是可爱的目录 本人常用的一些编码小Tips 一.概述 二.Windows的一些常用的快捷键 (一).Win + others 类型 (二).Alt + others 类 ...

  6. Google Colab——用谷歌免费GPU跑你的深度学习代码

    Google Colab简介 Google Colaboratory是谷歌开放的一款研究工具,主要用于机器学习的开发和研究.这款工具现在可以免费使用,但是不是永久免费暂时还不确定.Google Col ...

  7. 谷歌 colab_使用Google Colab在Python中将图像和遮罩拆分为多个部分

    谷歌 colab Data labelers use special annotation tools for objects annotation. For example, the Compute ...

  8. 分享几个微信实用小技巧(二)

    苏生不惑第298 篇原创文章,将本公众号设为星标,第一时间看最新文章. 之前分享过分享几个微信实用小技巧 ,最近微信又更新到8.0.16版本,这里再整理几个微信实用小技巧. 检测是否被好友删除 上周分 ...

  9. 前端必备,5大mock省时提效小tips,用了提前下班一小时

    一.一些为难前端的业务场景 在我的工作经历里,需要等待后端童鞋配合我的情形大概有以下几种: a.我们跟外部有项目合作,需要调用到第三方接口. 一般这种情况下,商务那边谈合同,走流程,等第三方审核,我们 ...

  10. 前端防错以及好用小tips指南总结

    @前端防錯以及好用小tips指南總結 1.一般情況下我們接收到的都是對象格式,某些情況下,需要接到後端傳過來的奇怪的字符串格式的JSON,需要解析成對象,但是有時候他們傳過來的格式有問題,會報錯 解決 ...

最新文章

  1. 大学毕业后,我将何去何从?
  2. suse linux 命令 收藏
  3. timer定时器_拾遗Timer定时器
  4. Java面试绕不开的问题: Java中HashMap底层实现原理(JDK1.8)源码分析
  5. 面试问到java并发_那些面试官必问的JAVA多线程和并发面试题及回答
  6. 【Trie】bzoj1212 [HNOI2004]L语言
  7. Shiro 整合 SpringBoot
  8. JAVA实体类不要使用基本类型,基本类型包含byte、int、short、long、float、double、char、boolean...
  9. 高大上的集团名字_最火的微信名字大全男成熟内涵高大上
  10. 日期选择窗口_Excel攻略|添加日期、智能填充、多窗口同步、两列(行)交换
  11. IEEE Signal Processing Letters
  12. D3之svg transform 与 css3 transform 区别与联系
  13. Python Tutorial 实践(2)
  14. 程序员写三十行代码,被应届生怼:我能三行搞定!也配叫程序员?
  15. L1-8 估值一亿的AI核心代码 (20 分)
  16. 信贷风控四:高校地址自动化识别
  17. PortMap端口映射器(提供下载资源)
  18. JAVA音视频解决方案----开源jtt1078源码与沟通群
  19. Mysql - 巧用join来优化sql
  20. 数据分布度的度量Measures of Spread

热门文章

  1. 计算机小喇叭找不到,电脑右下角小喇叭不见了怎么办?
  2. Win32反汇编(一) 初步探索Win32反汇编 与 Ollydbg的简单使用
  3. 软件测试面试题整理(二)之测试用例集
  4. Win10微软应用商店打不开/无响应/闪退/错误/无法加载的解决方法
  5. 21家科技巨头名字背后的故事|
  6. unity 局域网读取文件_C#读写局域网共享文件夹文件
  7. 【深度学习】梯度消失与梯度爆炸的原因分析与解决策略
  8. 怎么制作gif动图,gif动态图怎么制作
  9. mysql 后缀 deleted,MySQL · 特性分析 · (deleted) 临时空间
  10. 小米手机获取完整ROOT权限教程