Colaboratory 简称“Colab”,Google Research 团队开发,任何人都可以通过浏览器编写和执行任意 Python 代码,尤其适合机器学习、数据分析、教育目的。Colab 是一种托管式 Jupyter 笔记本服务,用户无需设置,就可直接使用,还能免费使用 GPU/TPU计算资源。从“文件”菜单中选择“上传笔记本”即可将现有的 Jupyter/IPython 笔记本导入,Colab 笔记本存储在 Google 云端硬盘上,也可从 GitHub 加载,更多详情请看文档:colaboratory。
问题一:Colab解压CIFAR-10数据集
在使用Colab中的GPU进行深度学习训练时,如果用CIFAR-10官方提供的数据集进行训练很轻松只有几个文件,如果没有解压工具也可以轻松跑起来。如果是有60000张图片大小为55M的数据集,那么解压缩可能需要花费一天时间(亲测使用下图方式,解压8小时左右才解压了3w张图片)。
 
问题二:Colab不支持删除非空文件夹
刚才解压缩的数据集如果想要删除掉怎么搞?一个图片一个图片删除?那么坐你就慢了。
通用解决方案:Python脚本
归根到底Colab可以为我们提供Python环境,我们便可以执行Python脚本,而使用Python脚本往往可以实现我们想要的功能,除了上面两个问题可以从这个角度出发考虑,其余的问题也可以。
先进行谷歌硬盘装载,不会的自行百度吧。
 
问题一解决方案:解压缩命令
!unzip "/content/drive/MyDrive/Colab Notebooks/ResNet18/data.zip" -d "/content/drive/MyDrive/Colab Notebooks/ResNet18/"
目录替换为自己的目录(执行命令前一定要好好检查路径)
 
 这种方式快到起飞,短短几分钟就把6w张图片解压完毕!
 
问题二解决方案:递归删除非空文件夹
直接上代码好了,大家搞深度学习应该懂这些基本的知识!
import os
# os.listdir('/content/drive/MyDrive/Colab Notebooks/ResNet18/data')
# os.remove(f'/content/drive/MyDrive/Colab Notebooks/ResNet18/data/')
def rmdir(dir):
    #判断是否是文件夹,如果是,递归调用rmdir()函数
    if(os.path.isdir(dir)):
        #遍历地址下的所有文件及文件夹
        for file in os.listdir(dir):
            #进入下一个文件夹中进行删除
            rmdir(os.path.join(dir,file))
        #如果是空文件夹,直接删除
        if (os.path.exists(dir)):
            os.rmdir(dir)
            print(dir,"文件夹删除成功!")
    #如果是文件,直接删除
    else:
        if(os.path.exists(dir)):
            os.remove(dir)
            print(dir,"文件删除成功!")
#调用定义函数(路径换成自己的,最好自己先找个废目录测试一下!)
rmdir("/content/drive/MyDrive/Colab Notebooks/ResNet18/data")
秒级别删除非空目录!
 







![深度学习基础入门篇[9.3]:卷积算子:空洞卷积、分组卷积、可分离卷积、可变性卷积等详细讲解以及应用场景和应用实例剖析](https://img-blog.csdnimg.cn/img_convert/8458852e6b0157f98825fde38279e3c2.png)










