Почему мой большой файл при извлечении имеет меньший размер в Google Colab?
Я использую набор данных "Dogs vs. Cats Redux: Kernels Edition" из kaggle для модели глубокого обучения.
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) приблизительно превышает 800 МБ.
ls -sh
112K sample_submission.csv 272M test.zip 544M train.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.
Любой подход к проблеме или альтернативное решение было бы полезно.
1 ответ
Вы смотрите на размер каталога вместо размера его содержимого.
Попробуйте проверить размер с du
вместо.