首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >矩阵的稀疏或密集存储

矩阵的稀疏或密集存储
EN

Stack Overflow用户
提问于 2014-08-26 11:25:15
回答 1查看 947关注 0票数 3

我正在处理不是非常稀疏的大型稀疏矩阵,我总是在想,需要多少稀疏性才能将矩阵存储为稀疏矩阵才是有益的?我们知道,一个相当密集的矩阵的稀疏表示可以具有比原始矩阵更大的大小。那么,矩阵的密度是否有一个阈值,以便更好地将其存储为稀疏矩阵?我知道这个问题的答案通常取决于稀疏性的结构,等等,但我想知道是否有一些指导原则?例如,我有一个非常大的矩阵,密度约为42%。我应该将这个矩阵存储为密集的还是稀疏的?

EN

回答 1

Stack Overflow用户

发布于 2014-08-26 12:18:39

scipy.coo_matrix格式将矩阵存储为3 np.arraysrowcol是整数索引,data具有与等价密集矩阵相同的数据类型。因此,应该直接计算作为整体形状和稀疏度(以及数据类型)的函数的内存。

csr_matrix可能更紧凑。dataindicescoo相同,但是indptr的每一行都有一个值加1。我认为indptr会比其他的更短,但我只是在它更长的地方构造了一个小矩阵。例如,空行需要indptr中的值,但不需要dataindices中的值。这种格式的重点是计算效率。

csc与此类似,但使用的是列。同样,您应该能够通过数学计算出这个大小。

浅谈MATLAB的内存优势(使用类似的存储选项) http://www.mathworks.com/help/matlab/math/computational-advantages.html#brbrfxy

MATLAB designers的背景文件http://www.mathworks.com/help/pdf_doc/otherdocs/simax.pdf SPARSE MATLAB IN MATLAB:设计与实现

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25497544

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档