我有大约200,000张高分辨率图像,每次加载如此高质量的图像都非常耗时。 预加载所有图像可能会占用太多内存。 如何将每个图像保存为.npz文件格式并加载.npz而不是.jpg?它会提高速度吗?
答案 0 :(得分:4)
您无需一次将所有图像加载到内存中。还考虑到我们需要在模型训练期间对数据集进行数据增强,因此无法加载所有图像。
在PyTorch中,您可以使用Dataset
来存储您的培训和验证集。 Dataset
类具有参数transforms
(例如,Scale,RandomCrop等),其用于在训练期间即时变换训练图像。 torchvision
包也提供了几个现成的数据集,请参阅here。
PyTorch的内置Dataloader
有一个num_worker
,用于控制用于加载数据的子进程数。由于您的数据集不是很大,这足以满足您的需求。关于如何设置适当的工作人员数量,请参阅here。