我的磁盘上存储了一个巨大的数据集。由于我的数据集约为 1.5 TB。我将其分为 32 个样本,以便能够在 python 2.7 中使用
numpy.save('data_1.npy')
。这是 9 个子数据集的示例。每一张约30GB。
每个
.npy
文件的形状为 (number_of_examples,224,224,19
),值是浮点数。
data_1.npy
data_2.npy
data_3.npy
data_4.npy
data_5.npy
data_6.npy
data_7.npy
data_8.npy
data_9.npy
使用 np.save(' *.npy'),我的数据集在我的磁盘中占用了 1.5 Tera。
1)是否有一种有效的方法来压缩我的数据集以获得一些可用磁盘空间? 2)是否有一种比 np.save() 占用更少空间的有效保存文件的方法?
谢谢你
您可能想查看此答案中提到的 xz 压缩。我发现它是最好的压缩方法,同时可以保存数十万个 .npy 文件,总计可达数百 GB。包含
dataset
文件的名为 .npy
的目录的 shell 命令为:
tar -vcJf dataset.tar.xz dataset/
或者长参数:
tar --verbose --create --xz --file=dataset.tar.xz dataset/
这只是为了在存储和移动数据集时节省磁盘空间;在加载到 python 之前需要解压。