Colab——大规模数据集解压问题:Unzip解压不完整/时间过长/强制掉线
本笔记用于解决Colab挂载Google Drive进行模型训练时,大规模数据集(如:COCO)解压问题——使用unzip命令解压不完整/时间过长/强制掉线:
问题描述
在使用Google Colab挂载Drive进行模型训练之前,首先需要下载数据集,一般我们会使用wget命令直接从开源数据库下载压缩包,随后进行解压。
但在Google Colab使用unzip对挂载的Drive当中的超大zip文件进行解压时,往往会出现时间过长而被强制掉线,进而导致各种解压不完整的问题。
解决方案
之前有博主提出了使用mv命令进行文件传递的解决方案【colab】unzip数据集不完整/出错/时间过长,但是这种方法中使用到的mv命令也会出现时间过长而被强制掉线的情况。
本博客打算使用文件备份cp命令和增量同步rsync命令,来替换mv命令。步骤如下:
# 将zip文件备份到content(实例的本地磁盘)下,这里unzip速度非常快
!cp /content/drive/MyDrive/example.zip /content
# 执行unzip命令
%cd /content
!unzip example.zip
# 安装增量同步rsync库
!apt-get install rsync -y
# 将解压后的文件夹增量同步至挂载的Google drive
!rsync -ah --progress /content/example/ /content/drive/MyDrive/path/
此命令测试下来,没有出现被Google colab终止的情况。如果仍然出现被中止的情况的话,直接运行如下命令,将自动继续刚才的解压缩进程:
# 增量同步(跳过已存在且未修改的文件,继续刚才的解压缩进程)
!rsync -ah --progress --ignore-existing /content/example/ /content/drive/MyDrive/path/