稀疏矩阵算法

什么是稀疏矩阵

将矩阵中的元素按照零和非零分为两个集合,对于零元素,其占整个矩阵的元素个数比成为稠密度。

  • 稠密度 > 0.05 稠密矩阵
  • 稠密度 < 0.05 稀疏矩阵

稀疏矩阵算法

通过压缩稀疏矩阵中的零元素,节省运算空间。 常用算法 BLAS sparse matrix (稀疏矩阵)algorithms

1. coordinate storage - coo

一个直接的思路是只存储非零元素。而 coo 是其中最简单的存储结构。

coo index strucutre: 三个稀疏向量 three sparse vectors

coo 第一个 vector:存储所有的非零元素

coo 第二个 vector:存储非零元素的 column index

coo 第三个 vector:存储非零元素的 row index

2. compressed sparse row - csr

与 coo 类似,唯一的区别是在第三个 vector

第三个 vector 存储的是 row 的指针,如下图所示,存储某个 row 的第一个元素

3. compressed sparse column - csc

与 csr 同理, 第二个 vector 存储的是 column 的指针

4. block sparse row - bsr

bsr 有四个 vector

第一个 vector 存储非零元素

第二个 vector 存储 column index

第三个 vector 和 第四个 vector 存储的都是 row 指针,但是分别是第一个元素和最后一个元素 

pointer begin and pointer end

转载于:https://my.oschina.net/u/2362565/blog/2239727

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值