标签:数组 blog sky 行存储 数据 csr details tor pre
那些零元素数目远远多于非零元素数目,并且非零元素的分布没有规律的矩阵称为稀疏矩阵(sparse matrix)。
不同类型的矩阵有不同的压缩方式,比如对角矩阵只存储对角元素即可。要想充分压缩,就要找到数据的特点。
压缩算法也有很多种,如:音频压缩算法、视频压缩算法、通用压缩算法。不同压缩算法有不同的使用领域,一般专用领域的压缩算法效率高于通用压缩算法。因为专用领域压缩算法抓住了数据的特点。
本文主要介绍scipy提供的八种稀疏矩阵存储格式。
它使用三个数组进行存储:rows、columns、values,三个数组长度相等。分别表示数组元素的行、列、值。
对角线矩阵,它由两个数组进行存储:values是一个二维数组,distance是一个一维数组,distance[i]表示对角线相对主对角线的偏移量。values[i][j]表示第i行,相对主对角线偏离distance[j]的那条对角线上的数值。
压缩稀疏行矩阵,它由values、columns、rows三个数组组成。values是一个一维数组,columns是一个和values等长的一维数组,表示values中每个元素所在的列。rows是一个一维数组,rows[i]表示第i行拥有的元素个数。所以rows的长度等于行数。
压缩稀疏列矩阵,和CSR一样,区别在于它按照列来存储。
三角矩阵压缩
块矩阵压缩
存储values和offset两个矩阵,values[i][j]元素在第i行的偏移用offset[i][j]来表示。
混合压缩矩阵,融合了ELL和COO
https://blog.csdn.net/pipisorry/article/details/41762945
标签:数组 blog sky 行存储 数据 csr details tor pre
原文地址:https://www.cnblogs.com/weiyinfu/p/9557696.html