gpt4 book ai didi

python - 序列化大型 scipy 稀疏矩阵的最佳方法是什么?

转载 作者:行者123 更新时间:2023-11-28 20:22:09 24 4
gpt4 key购买 nike

我有一个很大的 scipy 稀疏矩阵,它占用了我总系统内存的 90% 以上。我想将它保存到磁盘,因为构建矩阵需要几个小时...

我试过 cPickle,但这会导致内存大爆炸......

import numpy as np
from scipy.sparse import lil_matrix
import cPickle

dim = 10**8

M = lil_matrix((dim, dim), dtype=np.float)

with open(filename, 'wb') as f:
cpickle.dump(M, f) # leads to a major memory explosion, presumably there is lots of copying

虽然 HDF5 不喜欢数据类型:TypeError: Object dtype dtype('O') has no native HDF5 equivalent

那我该怎么办呢?

最佳答案

不幸的是,Pickling 的内存效率非常低。我建议访问稀疏矩阵的底层数据数组属性,并以高效的方式存储这些属性,例如 hdf5。从行/列/数据向量的三元组重建稀疏矩阵应该很容易。

关于python - 序列化大型 scipy 稀疏矩阵的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24947028/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com