我正在使用kaggle的“狗对猫Redux:内核版本”数据集进行深度学习。
import os
from getpass import getpass
user = getpass('Kaggle Username: ')
key = getpass('Kaggle API key: ')
if '.kaggle' not in os.listdir('/root'):
!mkdir ~/.kaggle
!touch /root/.kaggle/kaggle.json
!chmod 666 /root/.kaggle/kaggle.json
with open('/root/.kaggle/kaggle.json', 'w') as f:
f.write('{"username":"%s","key":"%s"}' % (user, key))
!kaggle competitions download -c dogs-vs-cats-redux-kernels-edition
我已经在我的colab笔记本环境中下载了它,数据集的总大小(test + train)大约大于800mbs。
ls -sh
112K sample_submission.csv 272M test.zip 544M train.zip
但是,当我提取火车并测试zip时,为什么提取的文件这么小?
unzip test.zip && unzip train.zip
ls -sh
total 816M
112K sample_submission.csv 272M test.zip 544M train.zip
276K test 752K train
在没有安静模式的情况下会发生解压缩,因此我可以看到文件正在逐个提取
我还可以看到test
文件夹中的图像,这些图像可以通过侧面目录完全访问
我认为ls
命令在显示大小时出现了一些错误,并且确实提取了文件,但是在运行训练代码时,它会引发与找不到图像有关的错误。
我通过在本地上传一个小的数据集来解压缩某些文件,它们工作正常,因此unzip
也工作正常,与7z和python解压缩相同。
任何解决问题或替代解决方案的方法都会有所帮助。
答案 0 :(得分:1)
您正在查看目录的大小,而不是其内容的大小。
尝试使用du
检查大小。