原文:hippocampus-garden.com/kaggle_cola…

原文标题:How to Kaggle with Colab Pro & Google Drive

译文作者:kbsc13

联络办法:

Github:github.com/ccc013/AI_a…

知乎专栏:机器学习与核算机视觉,A算法的特征I 论文笔记

微信大众号:AI 算法笔记

前语

Colab Pro(现在仅在美国、加拿大、日本、巴西、德国、法国、印度、英国和泰国可用)供给了随时可用和加快可是保护起来既昂贵又繁琐的云核算资源。和其免费版不同,Colab Pro 允许用户运用 TPUs 和高端的 GPUs,比方 V100 和 P100 等等,可以拜访高内存的实例,而且坚持 notebooks 作业的时刻最长可以到达 24 小时,费用是每个月 10 美元。

Colab Pro可以满足 Kaggle 比赛中大部分比赛作业总结的资源要求。可是这儿存在一个问题算法的时刻复杂度取决于,每个会话只能坚持 24 小时。每次都需求预备数据集,依据预备的办法,这需求一些时刻。不才面的表格中,从初始化加github直播渠道永久回家载和磁盘github永久回家地址读写的时刻来比照 5 种预备 Kaggle 数据集的办法:

依据Colab Pro & Google Drive的Kaggle实战

不幸的是,根google地球据上述表格并没有看到两个办法都很快速的笔记本电脑开不了机办法。考虑到我们更想要的是在数据集上经过屡次迭代的练习模型,快速的磁盘读写的速度是更加重要。在现在的情况下,我会选择第三个办法:首要经过 K算法的特征aggle API 下载数据集,并以 zip 紧缩包办法保存在 Google 硬盘上,当开始会话的时分,解紧缩并存放到实例的磁盘上。这个操作进程将不才一节中一步github打不开步的说明。

Kaggle on Colab Pro

下载数据集到 Go笔记本ogle 硬盘上

首要,算法的有穷性是指需求经过作业总结 Kaggle API 下载数据集,并以 zip 紧缩包办法保存在 Google 硬盘上,具体进程如下所示:

  1. 登录到 https://www.kaggle.com/<YourKgoogleaggleID>/account,然后下载 kaggle.json

依据Colab Pro & Google Drive的Kaggle实战

  1. 在Google 硬盘上创立一个姓名为 kaggle 的文件算法的特征夹,然后上传 kaggle.json
  2. 开始一个 Colab 的会话
  3. 经过点击右上角的图标来挂载 Google 硬盘,如下图所示

依据Colab Pro & Google Drive的Kaggle实战

  1. 从 Google 硬盘里拷贝 kaggle.json 到当时会话,并修正文件的权限,指令如下所示:
! mkdir -p ~/.kaggle
! cp ./drive/MyDrive/kaggle/kaggle.json ~/.kaggle/
! chmod 600 ~/.kaggle/kaggle.json
  1. (可选)晋级 Kaggle API。这个包是预算法的五个特性设备在 Colab 的实例上的,不过在 2021 年 5笔记本电脑性价比排行 月份,Kaggle notebooks 的版别是更新了github下载,两个版别是有些不一样的github怎样下载文件
! pip install -U kaggle
  1. 经过 Kaggle API 下载数据集到 Google 硬盘上,这可能会花点时刻完毕而且在 Google 硬盘界面上显示出来也需算法导论求几分钟。
! mkdir -p ./drive/MyDrive/kagglegoogle空间/<CompetitionID>
! kaggle competitions download -c <CompetitionID> -p ./笔记drive/MyDriv笔记本cpu天梯图e/kaggle/<Cgoogle空间ompetitionID>

你也可以晋级你的 G算法的时刻复杂度取决于oogle 硬盘计划来获取更多的存储空间。

解紧缩文件到实例上

解紧缩文件到当时会话中,指令如下所示,这一步也需求花费一些时刻:

! mkdir -p <CompetitionID>
! unzip -q ./drive/MyDrive/kaggle/<CompetitionID>.zip -枸杞d <CompetitionID>
# Ygoogleplayou can specify the portion of dataset for saving timgoogle谷歌查找主页e and disk space笔记
! unzip -q ./drive/MyDrive/kaggle/<CompetitionID>.zip train/* -d <Competitiongoogleplay安卓版下载ID>

这就可以开始练习模型了。完毕练习后,可以将权重文件导出到Kaggle数据集,并经过Kaggle API提交猜想,关于完好的教程,可以参阅 github.com/Kaggle/kagg…

速度比较

从Google 硬盘紧缩需求很长的时刻,这种办法是真的比直接经过 Kaggle API 或许 gs算法导论util 下载要更快吗?为了答复这个问题,我预备了房价猜想比赛(www.kagglgooglee.com/c/house-pri… 935KB,并测验这 3 种笔记本电脑办法的解紧缩时刻,作用如下所示:

依据Colab Pro & Google Drive的Kaggle实战

上述作用可能会遭到实例所在区域而有些影响,可是大部分情况下,从google商店 Google 硬盘上解紧缩仍是最快的办法。

留心磁盘巨细

Colab Pro 现在供给一个 150GB 巨细的磁盘,所以紧缩文件不能超过 75GB。

是否可以挂载外部存储器呢?

github直播渠道永久回家载谷歌云存储桶(Mounting Google Cloud Stora宫颈癌ge Buckets)

Colab 可以挂载 Google 云存储磁盘,并在不必下载的情况下googleplay拜访 Kaggle 的数据集。其操作有几个进程,首要,经过下述代码授权你的账户:

from googithub下载gle.colab import auth
auth.authenticat算法的五个特性e_u笔记ser()

接着,设备 gcsfuse

! echo "deb http://packages.cloud.google.com/a笔记本pt gcsfuse-bionic mgithub怎样下载文件ain" > /etc/apt/sources.list.d/gcsfuse.list
! curl https://packages.cloud.g算法的有穷性是指oogle.com/apt/d算法剖析的意图是oc/笔记本电脑排名前十a龚俊pGooglet-key.gpg | apt-key add -
! apt updategithub中文社区
! apt install gcsfuse

然后,翻开一个你喜爱的比赛项意图 Kaggle 的 notebook,然后作业下面的代码获取 GCS (Ggoogleplay安卓版下载oogle Cloud Storage)的途径:

from kaggle_datasets import KaggleDatasets
print(KaggleDatasets().get_github直播渠道永久回家gcs_path())

比方房价猜想比赛House Prices – Advanced Regression Techniques,其得到的作用如下:

gs://kds-ecc57ad1aae587b0e86e3b9422baab9785fc1220431f0b88e5327ea5

现在就可以经过 gcsfuse 来挂载 GCS:

! mkdir -p <CompetitionID>
! gcsfuse  -算法-implicit-dirs --limit-bytes-per-sec -1 --limit-ops-per-sec -1 <GCSPathgithub打不开 without gs://> <Cogithub永久回家地址mpetitigoogleonID>

经过上述指令进行挂载,1s 内即可完毕。但当你开始测验在数据集上进行迭代操作的时分,你会github官网发现磁盘拜访速度是十分的慢。拜访速度是依赖于 Colab 实例和 GCS 桶 所在的区域,但一般来说,应该防止这种挂载操作。

可以经过以下办法获取Colab实例的区域信息:

! curl ipinfo.io

GCS 桶的区域信息本来是可以经过下述指令获取的,可是我这边提示 Agithub官网ccessDeniedException 失常差错,而且无法处理。

! gsutil ls -Lb gs://kds-ecc57ad1aae587b0e86e3b9422baab9785fc1220431f0bgoogle谷歌查找主页88e5327ea5

挂载 Google D磁盘

这种办法的磁盘拜访速度太慢了!


总结

运用 Colab Pro 是可以用到更好的显卡,比方 TPU,或许 P100,V100 这个等级的 GPU,当然这是一个付费版别,每个月需求花费 10 美元,而且每次会话作业时刻最长只要 24 小时,所以假如练习模型时刻太久,就需求屡次作业会话,这就导致需求重新加载数据集和读取前次练习保存的权重文件。

因而为了最大化运用 Colab Pro 的时刻,当然就希望削减加载数据集的时刻,本文作者依据这个思路,比照了 5 种办法,最终是依据实际情况,即主要是练习模型,对磁盘读取速度要求更高,所以选择了在 Google 磁github下载盘上解紧缩文件到 Kaggle 实例上的办法,并给出了操作流程,然后还研究了是否可以经过github下载挂载外算法的有穷性是指部存储器,但磁盘拜访速度太慢,并不建议这种操作。

别的,Col算法工程师ab Pro 供给的磁盘空间仅有 150GB,关于紧缩文件巨细是不能超过 75GB,因而,公积金这种办法关于大数据集,参数量很大的网络模型都是不太合适的,但关于数据量不大,不必太大的网络模型的比赛,仍是可以用 Colab Pro 来练习Google模型。

大众号后台回复这些google地球关键词,可以获得相应的材料:

  1. 回复”入门书本“,获取机器学习入门资源,包括书本、视频以及 pythongithub直播渠道永久回家 入门书本;
  2. 回复”数据结构“,获取数据结构算法书本和 leetcode 题解;
  3. 回复”多标签“,获取运用 keras 完github直播渠道永久回家成的多标签图像分类代码和数据集
  4. 回复“pytorch 搬迁学习”,获取 pytorch 的搬迁学习教程代码
  5. 回复“pyGo_ml”,获取初学者的机器学习入门教程代码和数据集