已关闭。此问题为opinion-based。它目前不接受回答。
**希望改进此问题?**请更新问题,以便editing this post能够以事实和引文来回答。
3个月前关闭。
此帖子于25天前编辑并提交审核,未能重新打开帖子:
原始关闭原因未解决
Improve this question的
我想存储数千到数百万个不同形状的Tensor到磁盘。我们的目标是将它们用作时间序列数据集。数据集可能不适合内存,我将不得不从磁盘加载样本或样本范围。
有哪些好的替代方案可以实现这一点,以及它们在以下方面的权衡:
- 压缩选项
- 读写开销
- 灵活性(是否允许存储异构形状和相关的Tensor元数据?)
- 代码易于使用(库API)
- 易于设置(是否需要运行服务器或其他进程?)
2条答案
按热度按时间myss37ts1#
在磁盘中保存任何内容的最简单方法是使用pickle:
字符串
你也可以直接用pytorch保存东西,但那只是pikle的一个pytorch Package 。
型
如果你想在一个文件中保存多个Tensor,你可以将它们 Package 在一个字典中:
型
qyswt5oh2#
h5py允许你将大量Tensor保存到同一个文件中,你不必将整个文件的内容放入内存。h5py将直接将Tensor存储到磁盘,您可以在需要时加载Tensor。它允许在加载和保存时对这些Tensor进行切片,其以类似的方式工作,即不需要将整个Tensor加载到内存中,以便加载它的一个切片,或者为了保存它的一个切片。