稀疏矩阵的调整方法、装置、电子设备及存储介质

文档序号:34300662发布日期:2023-05-31 15:58阅读:54来源:国知局
稀疏矩阵的调整方法、装置、电子设备及存储介质

本发明涉及数据处理领域,具体而言,涉及一种稀疏矩阵的调整方法、装置、电子设备及存储介质。


背景技术:

1、在科学计算中,矩阵是最基本的数据类型之一。一个矩阵通常可以认为是m行和n列的数组的二维表示,它通常需要存储m*n个数据。随着计算规模的增大,如何将数据高效的存储是一个巨大的挑战,若不能高效的将数据存储,对后续具有特定结构的矩阵的操作、运算均有影响。

2、针对上述的问题,目前尚未提出有效的解决方案。


技术实现思路

1、本发明实施例提供了一种稀疏矩阵的调整方法、装置、电子设备及存储介质,以至少解决对稀疏矩阵进行调整的调整准确率低的技术问题。

2、根据本发明实施例的一个方面,提供了一种稀疏矩阵的调整方法,包括:获取待调整稀疏矩阵,其中,待调整稀疏矩阵包含满足预设条件的第一元素;生成待调整稀疏矩阵对应的目标数组,其中,目标数组至少包括:元素值数组、坐标数组、起始数组以及终止数组,其中,元素值数组用于存储第一元素的元素值,坐标数组用于存储第一元素在待调整稀疏矩阵中的第一坐标,起始数组用于存储待调整稀疏矩阵的每行或每列中满足预设条件的第一个元素在元素值数组中的位置,以及元素值数组的总长度,终止数组用于存储待调整稀疏矩阵的每行或每列中满足预设条件的最后一个元素在元素值数组中的位置;基于目标数组对待调整稀疏矩阵进行调整。

3、可选地,生成待调整稀疏矩阵对应的元素值数组,包括:基于第一预设规则对待调整稀疏矩阵进行遍历,生成初始元素值数组,其中,初始元素值数组中的元素均满足预设条件;基于目标格式与第一坐标对初始元素值数组的存储空间的长度进行扩充,得到扩充后的初始元素值数组,其中,目标格式用于表征待调整稀疏矩阵的行数和列数,初始元素值数组中每行或每列的子数组的长度小于或等于目标格式的长度,初始元素值数组中的元素相邻关系与待调整稀疏矩阵中的元素相邻关系一一对应;对扩充后的初始元素值数组的预设位置填充预设值,得到元素值数组,其中,预设位置用于表示扩充后无第一元素的位置,预设值为元素值为零的值。

4、可选地,生成待调整稀疏矩阵对应的坐标数组包括:确定第一元素在元素值数组中的第一位置;将第一元素的第一坐标存储至坐标数组中的目标位置,其中,元素值数组和坐标数组的长度相同。

5、可选地,生成待调整稀疏矩阵对应的起始数组,包括:遍历元素值数组或坐标数组;对元素值数组或坐标数组中不同列或不同行的起始第一元素的位置进行存储,得到起始数组。

6、可选地,生成待调整稀疏矩阵对应的终止数组,包括:遍历元素值数组或坐标数组;对元素值数组或坐标数组中不同列或不同行的终止第一元素的位置进行存储,得到终止数组。

7、可选地,该方法还包括:响应于待调整稀疏矩阵中的第二元素发生了变化,确定第二元素是否满足预设条件;响应于第二元素满足预设条件,基于第二元素对目标数组进行更新。

8、可选地,基于第二元素对元素值数组进行更新,包括:确定第二元素在待调整稀疏矩阵中的第二坐标;将第二坐标与第一坐标进行比对,响应于第二坐标与第一坐标不同,基于第二坐标,确定第二元素在元素值数组中的第二位置;确定元素值数组中存储在第一预设位置上的第一目标元素,其中,第一目标元素满足预设条件,第一预设位置包括:第二位置,以及第二位置之后预设数量的位置;将第二元素存储至第二位置,并将第一目标元素存储在第二位置之后的位置上。

9、可选地,响应于第二坐标与第一坐标相同,该方法还包括:确定第二元素在元素值数组中的位置为第一位置;将第二元素存储至第一位置上。

10、可选地,基于第二元素对坐标数组进行更新,包括:确定第二元素在待调整稀疏矩阵中的第二坐标;将第二坐标与第一坐标进行比对,响应于第二坐标与第一坐标不同,基于第二坐标,确定第二元素在坐标数组中的第二位置;确定坐标数组中存储在第一预设位置上的第一目标坐标,其中,第一目标坐标为第一元素对应的坐标,第一预设位置包括:第二位置,以及第二位置之后预设数量的位置;将第二元素的坐标存储至第二位置,并将第一目标坐标存储在第二位置之后的位置上。

11、可选地,响应于第二坐标与第一坐标相同,该方法还包括:确定第二元素在坐标值数组中的位置为第一位置;将第二元素存储至第一位置上。

12、可选地,基于第二元素对终止数组进行更新,包括:确定最后一个元素在更新后的元素值数组中的新位置;确定最后一个元素在终止数组中的第二目标位置;基于新位置对终止数组中第二目标位置上存储的数据进行更新。

13、可选地,确定元素值数组中存储在第一预设位置上的第一目标元素,包括:响应于第二位置是元素值数组中的预设位置,其中,预设位置为第二坐标对应的目标列或目标行的终止第一元素在元素值数组中的位置,基于待调整稀疏矩阵对目标数组的存储空间的长度进行扩充,得到扩充后的目标数组,并基于第二元素对扩充后的目标数组进行更新;响应于第二位置不是预设位置,确定元素值数组中存储的第一目标元素。

14、根据本发明实施例的另一方面,还提供了一种稀疏矩阵的调整装置,包括:获取模块,用于获取待调整稀疏矩阵,其中,待调整稀疏矩阵包含满足预设条件的第一元素;生成模块,用于生成待调整稀疏矩阵对应的目标数组,其中,目标数组至少包括:元素值数组、坐标数组、起始数组以及终止数组,其中,元素值数组用于存储第一元素的元素值,坐标数组用于存储第一元素在待调整稀疏矩阵中的第一坐标,起始数组用于存储待调整稀疏矩阵的每行或每列中满足预设条件的第一个元素在元素值数组中的位置,以及元素值数组的总长度,终止数组用于存储待调整稀疏矩阵的每行或每列中满足预设条件的最后一个元素在元素值数组中的位置;调整模块,用于基于目标数组对待调整稀疏矩阵进行调整。

15、根据本发明实施例的另一方面,还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器执行上述任意一项的稀疏矩阵的调整方法。

16、根据本发明实施例的另一方面,还提供了一种非易失性存储介质,非易失性存储介质包括存储的程序,其中,在程序运行时控制所在设备的处理器中执行上述任意一项的稀疏矩阵的调整方法。

17、在本发明实施例中,采用获取待调整稀疏矩阵,其中,待调整稀疏矩阵包含满足预设条件的第一元素;生成待调整稀疏矩阵对应的目标数组,其中,目标数组至少包括:元素值数组、坐标数组、起始数组以及终止数组,其中,元素值数组用于存储第一元素的元素值,坐标数组用于存储第一元素在待调整稀疏矩阵中的第一坐标,起始数组用于存储待调整稀疏矩阵的每行或每列中满足预设条件的第一个元素在元素值数组中的位置,以及元素值数组的总长度,终止数组用于存储待调整稀疏矩阵的每行或每列中满足预设条件的最后一个元素在元素值数组中的位置;对目标数组进行存储的方式。容易注意到的是,本技术新提出的列终止数组能够实现预留和压缩机制,进一步的,通过获取待调整稀疏矩阵中满足预设条件的第一元素,以及基于第一元素生成对应的目标数组,能够使数据高效的存储在数组中,进而可以基于目标数组对稀疏矩阵进行准确的调整,达到了能够高效存储数组的目的,从而实现了提高对稀疏矩阵进行调整的调整准确率的技术效果,进而解决了对稀疏矩阵进行调整的调整准确率低的技术问题。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1