问题描述:
在研究深度学习时,通常会遇到需要下载外网数据集的情况。有时会发现,找到官方下载链接后通过浏览器直接下载至本地,速度非常慢,甚至会达到 10+ kb/s 的情况,假设一个数据集是 4G,则预测需要 2-3 天的情况。因此本文提供了一种使用 colab 有效提升数据集下载速度的方法。
试验后的效果:下载一个 4G 左右的数据集,用时 6 min + 40 min ≈ 46 min。虽然不算特别快,但比 10+ kb/s 的下载速度还是快了不少。
本方法参考来源:
一个使下载国外数据集速度提升一千倍以上的方法_gmao数据下载加速_flyfor2013的博客-CSDN博客
需要条件:能够科学上网
具体步骤:
1. 创建 colab 文件
打开谷歌云端硬盘,右键 - 更多 - Google Colaboratory,创建 colab 文件
贴心附上云端硬盘网址:https://drive.google.com/
2. 装载云端硬盘并切换到对应下载目录:
打开刚刚创建的文件,点击左侧边栏的文件标识,装载云端硬盘(即依次点击下图中①②标识),出现图中 “drive” 文件夹即可。并输入以下代码并运行
from google.colab import drive
drive.mount("/content/drive",force_remount=True)
然后输入并运行下面这行命令,切换到自己需要的下载目录下(此处的下载目录指在云端硬盘中的目录,非本地目录)。其中 drive/MyDrive/ 为固定路径,xxxx 为自己在云端硬盘中创建的目录
cd drive/MyDrive/xxxx/
3. 输入并执行下载命令:
!wget 下载地址 --no-check-certificate
举个例子,假设我要下载数据集 UCF-QNRF,其官网提供的下载地址为 https://www.crcv.ucf.edu/data/ucf-qnrf/UCF-QNRF_ECCV18.zip,则我需要输入的命令就是 !wget https://www.crcv.ucf.edu/data/ucf-qnrf/UCF-QNRF_ECCV18.zip --no-check-certificate
执行上述命令后,能够观察到 colab 的下载速度基本能达到 10+ Mb/s,下载一个大小为 4G 左右的数据集大概需要 5-6 min
4. 从 colab 下载至本地
点击右侧网址回到云端硬盘主页 https://drive.google.com/,找到预先设定的下载路径下的数据集,右键单击下载(没有立刻出现数据集的话,可以尝试刷新或者稍等一会儿)
温馨提示:
1. 下载至本地的路径,一般为浏览器默认下载路径,可以在 浏览器 - 下载 项中查看并修改
2. 从 colab 下载至本地的过程中,题主遇到了 3-4 次的下载失败,在第 5 次尝试后成功下载,怀疑是科学上网不够稳定引起。如果有遇到相似情况的小伙伴,可以耐心一点多次尝试,有相关经验的朋友也可以在评论区分享如何有效规避这类问题,感谢🙇!