分享使用谷歌Colab 常用小tips, 玩转Google Colab
分享使用谷歌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相关推荐
- 20 种小技巧,玩转 Google Colab
选自 | amitness.com 作者 | Amit Chaudhary 转自 | 机器之心 编辑 | 陈萍 Google Colab 给广大的 AI 开发者提供了免费的 GPU,你可以在上面轻松地 ...
- 20种小技巧,玩转Google Colab
本文转载自机器之心. 选自amitness.com 作者:Amit Chaudhary 机器之心编译 编辑:陈萍 Google Colab 给广大的 AI 开发者提供了免费的 GPU,你可以在上面轻松 ...
- yolov4用Google Colab训练自己的数据集
yolov4训练数据 简介 运用google Colab训练自己的Yolov4数据集 google colab的使用 项目使用流程 1.设置GPU可用 2.clone项目构建Darknet git c ...
- 初学者学习深度学习,不得不会的Google Colab基本操作
@Author:Runsen 最近,一直在学习Google Colab.可以来说,学习Ai,入门就是Google Colab 文章目录 Google Colab 启动Google Colab 从Git ...
- 本人常用的一些编码小Tips(虽然不多,但很好用)
本人常用的一些编码小Tips 我是可爱的目录 本人常用的一些编码小Tips 一.概述 二.Windows的一些常用的快捷键 (一).Win + others 类型 (二).Alt + others 类 ...
- Google Colab——用谷歌免费GPU跑你的深度学习代码
Google Colab简介 Google Colaboratory是谷歌开放的一款研究工具,主要用于机器学习的开发和研究.这款工具现在可以免费使用,但是不是永久免费暂时还不确定.Google Col ...
- 谷歌 colab_使用Google Colab在Python中将图像和遮罩拆分为多个部分
谷歌 colab Data labelers use special annotation tools for objects annotation. For example, the Compute ...
- 分享几个微信实用小技巧(二)
苏生不惑第298 篇原创文章,将本公众号设为星标,第一时间看最新文章. 之前分享过分享几个微信实用小技巧 ,最近微信又更新到8.0.16版本,这里再整理几个微信实用小技巧. 检测是否被好友删除 上周分 ...
- 前端必备,5大mock省时提效小tips,用了提前下班一小时
一.一些为难前端的业务场景 在我的工作经历里,需要等待后端童鞋配合我的情形大概有以下几种: a.我们跟外部有项目合作,需要调用到第三方接口. 一般这种情况下,商务那边谈合同,走流程,等第三方审核,我们 ...
- 前端防错以及好用小tips指南总结
@前端防錯以及好用小tips指南總結 1.一般情況下我們接收到的都是對象格式,某些情況下,需要接到後端傳過來的奇怪的字符串格式的JSON,需要解析成對象,但是有時候他們傳過來的格式有問題,會報錯 解決 ...
最新文章
- 大学毕业后,我将何去何从?
- suse linux 命令 收藏
- timer定时器_拾遗Timer定时器
- Java面试绕不开的问题: Java中HashMap底层实现原理(JDK1.8)源码分析
- 面试问到java并发_那些面试官必问的JAVA多线程和并发面试题及回答
- 【Trie】bzoj1212 [HNOI2004]L语言
- Shiro 整合 SpringBoot
- JAVA实体类不要使用基本类型,基本类型包含byte、int、short、long、float、double、char、boolean...
- 高大上的集团名字_最火的微信名字大全男成熟内涵高大上
- 日期选择窗口_Excel攻略|添加日期、智能填充、多窗口同步、两列(行)交换
- IEEE Signal Processing Letters
- D3之svg transform 与 css3 transform 区别与联系
- Python Tutorial 实践(2)
- 程序员写三十行代码,被应届生怼:我能三行搞定!也配叫程序员?
- L1-8 估值一亿的AI核心代码 (20 分)
- 信贷风控四:高校地址自动化识别
- PortMap端口映射器(提供下载资源)
- JAVA音视频解决方案----开源jtt1078源码与沟通群
- Mysql - 巧用join来优化sql
- 数据分布度的度量Measures of Spread
热门文章
- 计算机小喇叭找不到,电脑右下角小喇叭不见了怎么办?
- Win32反汇编(一) 初步探索Win32反汇编 与 Ollydbg的简单使用
- 软件测试面试题整理(二)之测试用例集
- Win10微软应用商店打不开/无响应/闪退/错误/无法加载的解决方法
- 21家科技巨头名字背后的故事|
- unity 局域网读取文件_C#读写局域网共享文件夹文件
- 【深度学习】梯度消失与梯度爆炸的原因分析与解决策略
- 怎么制作gif动图,gif动态图怎么制作
- mysql 后缀 deleted,MySQL · 特性分析 · (deleted) 临时空间
- 小米手机获取完整ROOT权限教程