一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

矩阵求逆方法、装置、存储介质及电子设备与流程

2022-07-13 22:18:20 来源:中国专利 TAG:


1.本技术涉及矩阵求逆领域,尤其涉及一种矩阵求逆方法、装置、存储介质及电子设备。


背景技术:

2.在信号处理的研究过程中(例如,麦克风阵列的频域协方差矩阵、维纳滤波的自相关矩阵以及rls自适应算法)常常会面临大量的矩阵求逆问题。
3.当前主要采用数值计算法(例如,ldu分解法、高斯消元法等)以实现矩阵求逆运算,然而,由于矩阵求逆的运算量较大,采用上述传统的数值计算法进行矩阵求逆运算容易出现运算耗时较长、运算精度较低的情况,导致矩阵求逆的运算效率低。


技术实现要素:

4.本技术提供一种矩阵求逆方法、装置、存储介质及电子设备,能够缓解当前矩阵求逆运算效率低的技术问题。
5.为了解决上述技术问题,本技术提供以下技术方案:
6.本技术提供一种矩阵求逆方法,包括:
7.获取待处理矩阵;
8.根据所述待处理矩阵的矩阵信息,确定所述待处理矩阵的矩阵分块模式;
9.基于所述矩阵分块模式,对所述待处理矩阵进行矩阵分块处理,得到初始待处理矩阵子块;
10.当所述初始待处理矩阵子块满足预设条件,切换所述矩阵分块模式,并根据切换后的所述矩阵分块模式对所述初始待处理矩阵子块进行矩阵分块处理,得到目标待处理矩阵子块;
11.根据矩阵迭代模式对所述目标待处理矩阵子块进行矩阵迭代处理,得到逆矩阵。
12.其中,所述矩阵分块模式包括第一矩阵分块模式和第二矩阵分块模式,所述矩阵信息包括矩阵维度的数值,所述根据所述待处理矩阵的矩阵信息,确定所述待处理矩阵的矩阵分块模式的步骤,包括:
13.当所述待处理矩阵的所述矩阵维度的数值为二的整数次幂,确定所述待处理矩阵的所述矩阵分块模式为所述第一矩阵分块模式;
14.当所述待处理矩阵的所述矩阵维度的数值为非二的整数次幂,确定所述待处理矩阵的所述矩阵分块模式为所述第二矩阵分块模式。
15.其中,所述基于所述矩阵分块模式,对所述待处理矩阵进行矩阵分块处理,得到初始待处理矩阵子块的步骤,包括:
16.当所述待处理矩阵的所述矩阵分块模式为所述第一矩阵分块模式,基于所述第一矩阵分块模式将所述待处理矩阵分为若干矩阵子块;其中,所述矩阵子块的数量为二的整数次幂;
17.将所述矩阵子块作为所述初始待处理矩阵子块。
18.其中,所述基于所述矩阵分块模式,对所述待处理矩阵进行矩阵分块处理,得到初始待处理矩阵子块的步骤,还包括:
19.当所述待处理矩阵的所述矩阵分块模式为所述第二矩阵分块模式,基于所述第二矩阵分块模式将所述待处理矩阵分为若干矩阵子块;其中,所述矩阵子块的数量为非二的整数次幂;
20.将所述矩阵子块作为所述初始待处理矩阵子块。
21.其中,所述当所述初始待处理矩阵子块满足预设条件,切换所述矩阵分块模式,并根据切换后的所述矩阵分块模式对所述初始待处理矩阵子块进行矩阵分块处理,得到目标待处理矩阵子块的步骤,包括:
22.当所述初始待处理矩阵子块的矩阵维度的数值为非二的整数次幂,确定所述初始待处理矩阵子块满足所述预设条件;
23.将所述第一矩阵分块模式切换为所述第二矩阵分块模式;
24.根据所述第二矩阵分块模式对所述初始待处理矩阵子块进行矩阵分块处理,得到若干所述目标待处理矩阵子块;其中,所述目标待处理矩阵子块的数量为非二的整数次幂。
25.其中,所述当所述初始待处理矩阵子块满足预设条件,切换所述矩阵分块模式,并根据切换后的所述矩阵分块模式对所述初始待处理矩阵子块进行矩阵分块处理,得到目标待处理矩阵子块的步骤,还包括:
26.当所述初始待处理矩阵子块的矩阵维度的数值为二的整数次幂,确定所述初始待处理矩阵子块满足所述预设条件;
27.将所述第二矩阵分块模式切换为所述第一矩阵分块模式;
28.根据所述第一矩阵分块模式对所述初始待处理矩阵子块进行矩阵分块处理,得到若干所述目标待处理矩阵子块;其中,所述目标待处理矩阵子块的数量为二的整数次幂。
29.其中,所述矩阵迭代模式包括第一矩阵迭代算法和第二矩阵迭代算法,所述矩阵迭代处理包括迭代运算,所述根据矩阵迭代模式对所述目标待处理矩阵子块进行矩阵迭代处理,得到逆矩阵的步骤,包括:
30.当所述目标待处理矩阵子块的矩阵维度的数值为二的整数次幂,根据所述第一矩阵迭代算法对所述目标待处理矩阵子块进行所述迭代运算,得到所述逆矩阵;
31.当所述目标待处理矩阵子块的矩阵维度的数值为非二的整数次幂,根据所述第二矩阵迭代算法对所述目标待处理矩阵子块进行所述迭代运算,得到所述逆矩阵。
32.本技术实施例还提供了一种矩阵求逆装置,包括:
33.获取模块,用于获取待处理矩阵;
34.确定模块,用于根据所述待处理矩阵的矩阵信息,确定所述待处理矩阵的矩阵分块模式;
35.矩阵分块模块,用于基于所述矩阵分块模式,对所述待处理矩阵进行矩阵分块处理,得到初始待处理矩阵子块;
36.切换模块,用于当所述初始待处理矩阵子块满足预设条件,切换所述矩阵分块模式,并根据切换后的所述矩阵分块模式对所述初始待处理矩阵子块进行矩阵分块处理,得到目标待处理矩阵子块;
37.矩阵迭代模块,用于根据矩阵迭代模式对所述目标待处理矩阵子块进行矩阵迭代处理,得到逆矩阵。
38.本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有多条指令,所述指令适于由处理器加载以执行上述矩阵求逆方法中的步骤。
39.本技术实施例还提供了一种电子设备,包括处理器和存储器,所述处理器与所述存储器电性连接,所述存储器用于存储指令和数据,所述处理器用于执行上述矩阵求逆方法中的步骤。
40.有益效果:本技术实施例提供一种矩阵求逆方法、装置、存储介质及电子设备,根据待处理矩阵的矩阵信息进行多种模式的矩阵分块处理,以降低矩阵的维度,并对矩阵子块进行迭代运算,使得矩阵求逆的计算量得到有效减少的同时还提高了运算精度,从而提高矩阵求逆的运算效率,进而缓解当前矩阵求逆运算效率低的技术问题。
附图说明
41.下面结合附图,通过对本技术的具体实施方式详细描述,将使本技术的技术方案及其它有益效果显而易见。
42.图1是本技术实施例提供的矩阵求逆方法的流程示意图。
43.图2a-2d是本技术实施例提供的矩阵分块示意图。
44.图3a-3b是本技术实施例提供的矩阵迭代示意图。
45.图4是本技术实施例提供的矩阵求逆装置的结构示意图。
46.图5是本技术实施例提供的电子设备的结构示意图。
47.图6是本技术实施例提供的电子设备的另一结构示意图。
具体实施方式
48.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
49.本技术实施例提供一种矩阵求逆方法、装置、存储介质及电子设备。
50.如图1所示,图1是本技术实施例提供的矩阵求逆方法的流程示意图,具体流程可以如下:
51.s101.获取待处理矩阵。
52.其中,矩阵是按照长方阵列排列的复数或实数集合,最早来自于方程组的系数及常数所构成的方阵。矩阵是物理学、高等代数学、计算机科学、数值分析、以及统计分析等应用数学等学科中的常见工具,例如,在物理学中,矩阵于电路学、力学、光学和量子物理中都有应用;在计算机科学中,矩阵用于三维动画的制作。
53.具体地,在本实施例中,待处理矩阵为需进行求逆运算的矩阵。在实际应用过程中,会面临许多需要进行矩阵相除运算的情况,例如,工程师在设计建筑物构图、制作视频游戏和计算机动画时,由于矩阵之间无法进行除法运算,也即矩阵没有相除的概念,而对矩阵进行求逆即可用来解决“矩阵相除”的问题,因此,提高矩阵求逆运算效率对工程技术的
发展具有重要意义。
54.s102.根据待处理矩阵的矩阵信息,确定待处理矩阵的矩阵分块模式。
55.其中,待处理矩阵的矩阵信息包括待处理矩阵的矩阵维度的数值,矩阵分块模式用于表征待处理矩阵的分块方式。
56.具体地,待处理矩阵的求逆运算量随着矩阵维度的增大而增加,从而容易出现运算耗时较长的情况,会导致求逆运算效率受到影响,为了避免上述问题,在本实施例中,预先设置多种不同的矩阵分块模式,在实际应用时可根据待处理矩阵的矩阵维度选用不同的矩阵分块模式,以使待处理矩阵的矩阵维度尽可能减小,从而减少待处理矩阵的求逆运算量,提高求逆运算效率。
57.可选地,在本实施例中,矩阵分块模式包括第一矩阵分块模式和第二矩阵分块模式,上述步骤s102具体包括:
58.当待处理矩阵的矩阵维度的数值为2m(二的整数次幂)或k2m(其中,k,m均为正整数,且k不为2的倍数),确定待处理矩阵的矩阵分块模式为第一矩阵分块模式;
59.当待处理矩阵的矩阵维度的数值非2m或k2m,确定待处理矩阵的矩阵分块模式为第二矩阵分块模式。
60.其中,第一矩阵分块模式表征的分块方式为将待处理矩阵分为2n(n为正整数)个矩阵子块,例如,如图2a所示,待处理矩阵a的矩阵维度为8*8,由于待处理矩阵a的矩阵维度的数值为2m(其中,m=3),故确定第一矩阵分块模式为待处理矩阵a的矩阵分块模式,也即后续将待处理矩阵a分为2n个矩阵子块;第二矩阵分块模式表征的分块方式为将待处理矩阵分为非二的整数次幂个矩阵子块,例如,如图2b所示,待处理矩阵b的矩阵维度为9*9,由于待处理矩阵b的矩阵维度的数值不为2m或k2m,故确定第二矩阵分块模式为待处理矩阵b的矩阵分块模式,也即后续将待处理矩阵b分为非二的整数次幂个矩阵子块。
61.s103.基于矩阵分块模式,对待处理矩阵进行矩阵分块处理,得到初始待处理矩阵子块。
62.其中,初始待处理矩阵子块为待处理矩阵基于矩阵分块模式分成的最小维度的矩阵子块。
63.在一个实施例中,当待处理矩阵的矩阵分块模式为第一矩阵分块模式,将待处理矩阵分为若干矩阵子块,其中,矩阵子块的数量为二的整数次幂,然后将该矩阵子块作为初始待处理矩阵子块。具体地,第一矩阵分块模式是将待处理矩阵q=k2m划分为k*k个矩阵维度为2m的初始待处理矩阵子块,如图2a,基于第一矩阵分块模式将a待处理矩阵200划分为4*4个矩阵维度为2*2的初始待处理矩阵子块2001。
64.在另一个实施例中,当待处理矩阵的矩阵分块模式为第二矩阵分块模式,将待处理矩阵分为若干矩阵子块,其中,矩阵子块的数量为非二的整数次幂,然后将该矩阵子块作为初始待处理矩阵子块。具体地,第二矩阵分块模式是将待处理矩阵q=m*n划分为m*m个矩阵维度为n*n的初始待处理矩阵子块,如图2b,基于第二矩阵分块模式将b待处理矩阵201划分为3*3个矩阵维度为3*3的初始待处理矩阵子块2011。
65.进一步地,当待处理矩阵q=m*n中的n=2*l,在将待处理矩阵q=m*n划分为m*m个矩阵维度为n*n的矩阵子块后,将各矩阵子块继续分为4*4块矩阵维度为l*l的矩阵子块,并将该矩阵子块(第二次划分得到的矩阵子块)作为初始待处理矩阵子块。例如,待处理矩阵c
的矩阵维度为18*18,基于第二矩阵分块模式将待处理矩阵c划分为3*3块矩阵维度为6*6的矩阵子块,由于6=2*3,故将各矩阵子块分别继续划分得到4*4块矩阵维度为3*3的矩阵子块,由于此时得到的矩阵子块的维度为3*3,无法再继续划分,故将各矩阵维度为3*3的矩阵子块作为初始待处理矩阵子块。
66.s104.当初始待处理矩阵子块满足预设条件,切换矩阵分块模式,并根据切换后的矩阵分块模式对初始待处理矩阵子块进行矩阵分块处理,得到目标待处理矩阵子块。
67.其中,考虑到在实际应用过程中,通过上述步骤中的矩阵分块处理得到的初始待处理矩阵子块的矩阵维度的数值可能仍然较大,故需要对初始待处理矩阵子块进一步划分,以减小后续求逆过程的运算量。
68.在一个实施例中,当基于第一矩阵分块模式得到的初始待处理矩阵子块的矩阵维度的数值不为二的整数次幂,确定初始待处理矩阵子块满足预设条件,然后将第一矩阵分块模式切换为第二矩阵分块模式,最后根据第二矩阵分块模式对初始待处理矩阵子块进行矩阵分块处理,得到若干目标待处理矩阵子块,其中,目标待处理矩阵子块的数量为非二的整数次幂。
69.例如,如图2c所示,当基于第一矩阵分块模式得到的初始待处理矩阵子块300的矩阵维度为9*9,故确定初始待处理矩阵子块300满足预设条件,然后将第一矩阵分块模式切换为第二矩阵分块模式,最后根据第二矩阵分块模式对初始待处理矩阵子块300进行矩阵分块处理,得到3*3个矩阵维度为3*3的目标待处理矩阵子块3001。
70.在另一个实施例中,当基于第二矩阵分块模式得到的初始待处理矩阵子块的矩阵维度的数值为二的整数次幂,确定初始待处理矩阵子块满足预设条件,然后将第二矩阵分块模式切换为第一矩阵分块模式,最后根据第一矩阵分块模式对初始待处理矩阵子块进行矩阵分块处理,得到若干目标待处理矩阵子块,其中,目标待处理矩阵子块的数量为二的整数次幂。
71.例如,如图2d所示,当基于第二矩阵分块模式得到的初始待处理矩阵子块301的矩阵维度为4*4,故确定初始待处理矩阵子块301满足预设条件,然后将第二矩阵分块模式切换为第一矩阵分块模式,最后根据第一矩阵分块模式对初始待处理矩阵子块301进行矩阵分块处理,得到2*2个矩阵维度为2*2的目标待处理矩阵子块3011。
72.在又一实施例中,当初始待处理矩阵子块存在预设数量个元素(即数字)的数值大于阈值,确定该初始待处理矩阵子块满足预设条件。其中,由于初始待处理矩阵子块存在多个元素的数值较大的现象,说明若直接对其进行求逆运算会出现运算量过大的情况,因此有必要再继续对其进行矩阵划分,以减小后续求逆过程的运算量。
73.可选地,当初始待处理矩阵子块无法基于切换后的矩阵分块模式进行分块,则将初始待处理矩阵子块作为目标待处理矩阵子块。例如,当基于第一矩阵分块模式得到的初始待处理矩阵子块的矩阵维度为3*3,故确定该初始待处理矩阵子块满足预设条件,并将第一矩阵分块模式切换为第二矩阵分块模式,由于第二矩阵分块模式无法对维度为3*3的矩阵进一步分块,故将该初始待处理矩阵子块作为目标待处理矩阵子块。
74.s105.根据矩阵迭代模式对目标待处理矩阵子块进行矩阵迭代处理,得到逆矩阵。
75.其中,矩阵迭代模式为矩阵求逆相关的算法。具体地,通过上述步骤已经将待处理矩阵分为了若干维度较小的矩阵子块(即目标待处理矩阵子块),此时即可基于矩阵迭代模
式对各目标待处理矩阵子块进行求逆运算,以得到待处理矩阵的逆矩阵。
76.可选地,在本实施例中,矩阵迭代模式包括第一矩阵迭代算法和第二矩阵迭代算法,当目标待处理矩阵子块的矩阵维度的数值为二的整数次幂(例如,8*8),则根据第一矩阵迭代算法对目标待处理矩阵子块进行迭代运算,得到逆矩阵;当目标待处理矩阵子块的矩阵维度的数值为非二的整数次幂(例如,12*12),则根据第二矩阵迭代算法对目标待处理矩阵子块进行迭代运算,得到逆矩阵。
77.具体地,关于第一矩阵迭代算法:
78.根据矩阵求逆公式:
[0079][0080]
由此可知,若想求出h-1
,需要先获取a-1
以及(d-ca-1
b)-1
(在本实施例中将其简记为m-1
),为此,在本实施例中,首先根据实际情况从a矩阵子块、b矩阵子块、c矩阵子块和d矩阵子块中选取一个,并将所选取的矩阵子块中所包含的目标待处理矩阵子块记为:
[0081]arf
、b
rf
、c
rf
和d
rf
[0082]
其中,r为目标待处理矩阵子块所处的区域标识,可选地,将“1”作为a矩阵子块标识,将“2”作为b矩阵子块标识,将“3”作为c矩阵子块标识,将“4”作为d矩阵子块标识;f为由待处理矩阵至得到目标待处理矩阵子块所经历的矩阵分块处理的次数,然后再根据各目标待处理矩阵子块反向推算出所处矩阵子块的逆矩阵(即a-1
、b-1
、c-1
或d-1
)及m-1
,最后将a-1
、b-1
、c-1
或d-1
以及m-1
代入上述矩阵求逆公式以求出h-1

[0083]
如图3a所示,其中,h的矩阵维度为8*8,a
12
、b
12
、c
12
......c
42
、d
42
的矩阵维度均为2*2。首先选取a矩阵子块(相当于经上述步骤得到的初始待处理矩阵子块),其中,在上述步骤中已获取a矩阵子块所包含的各目标待处理矩阵子块(即a
12
、b
12
、c
12
、d
12
),此时h的表达式为h=a*m,进一步地,a=a
12 m
12
,m=a
1 m1(其中,a1与m1由m矩阵分解得到,“1”表征由m矩阵分解的次数)。
[0084]
具体地,由于a
12
的矩阵维度为2*2,基于矩阵求逆公式可以快速计算出然后将代入m
12
表达式即可得到m
12
矩阵,可见m
12
的矩阵维度亦为2*2,基于矩阵求逆公式可以快速计算出到此已计算出和将和代入矩阵求逆公式可计算得出a-1
;同理,由于a1的矩阵维度为2*2,基于矩阵求逆公式可以快速计算出然后将代入m1表达式即可得到m1矩阵,可见m1的矩阵维度亦为2*2,基于矩阵求逆公式可以快速计算出到此已计算出和将和代入矩阵求逆公式可计算得出m-1
,最后将所得的a-1
和m-1
代入上述矩阵求逆公式即可得到h-1

[0085]
进一步地,关于第二矩阵迭代算法:
[0086]
如图3b,以h矩阵维度为12*12为例,其中,m
ij
与n
ij
(m
ij
为目标待处理矩阵子块,i,j分别为目标待处理矩阵子块在h矩阵中的行数与列数)具有对应关系,m
ij
的矩阵维度为3*3,通过计算各n
ij
即可得到h-1

[0087]
具体地,将h分解为4块,分别为:
[0088][0089][0090]
接下来,再将m》a、m》b、m》c和m》d分别分解为4块,以m》a为例,将m》a分解为4块得到:
[0091][0092][0093]
然后根据公式1计算:
[0094][0095][0096]
同理,采用上述方式计算出《m》b》a、《m》b》b、《m》b》c、《m》b》d;《m》c》a、《m》c》b、《m》c》c、《m》c》d;《m》d》a、《m》d》b、《m》d》c以及《m》d》d,并将所得矩阵进行组合:
[0097][0098][0099][0100][0101]
接下来,采用与公式1相同的计算方法计算:
[0102]
《《m》a》、《《m》b》、《《m》c》以及《《m》d》
[0103]
最后将《《m》a》、《《m》b》、《《m》c》以及《《m》d》组成矩阵:
[0104][0105]
到此即可计算出n
11

[0106][0107]
具体地,本技术提供的各实施例可应用于矩阵元素为实数或复数的情况,若矩阵
元素为复数,则:
[0108][0109]
进一步地,通过交换图3b中h矩阵的行和列,以依次将每一m
ij
移动至h矩阵中的第一行且第一列,并同样采用上述方式即可计算出n
ij
,以求出h-1

[0110]
在采用第一矩阵迭代算法或第二矩阵迭代算法进行运算的过程中,可根据实际情况引入矩阵分块模式,和/或切换矩阵迭代算法进行矩阵求逆运算,以进一步提高运算效率。例如,在上文计算时,需要先计算出若此时m
22
的矩阵维度为4*4,则可引入第一矩阵分块模式将m
22
分为4块,再利用第一矩阵迭代算法快速计算出
[0111]
需要说明的是,在实际应用过程中,可根据实际情况将第一矩阵分块模式、第二矩阵分块模式、第一矩阵迭代算法以及第二矩阵迭代算法进行相互嵌套、结合,故在此不对第一矩阵分块模式、第二矩阵分块模式、第一矩阵迭代算法以及第二矩阵迭代算法的使用顺序作出具体限定。
[0112]
由上述可知,本技术提供的矩阵求逆方法,首先获取待处理矩阵,然后根据待处理矩阵的矩阵信息确定待处理矩阵的矩阵分块模式,并基于矩阵分块模式对待处理矩阵进行矩阵分块处理,得到初始待处理矩阵子块,当初始待处理矩阵子块满足预设条件则切换矩阵分块模式,并根据切换后的矩阵分块模式对初始待处理矩阵子块进行矩阵分块处理得到目标待处理矩阵子块,最后根据矩阵迭代模式对目标待处理矩阵子块进行矩阵迭代处理,得到逆矩阵。根据待处理矩阵的矩阵信息进行多种模式的矩阵分块处理,以降低矩阵的维度,并对矩阵子块进行迭代运算,使得矩阵求逆的计算量得到有效减少的同时还提高了运算精度,从而提高矩阵求逆的运算效率,进而缓解当前矩阵求逆运算效率低的技术问题。
[0113]
根据上述实施例所描述的方法,本实施例将从矩阵求逆装置的角度进一步进行描述。
[0114]
请参阅图4,图4具体描述了本技术实施例提供的矩阵求逆装置,该矩阵求逆装置可以包括:获取模块10、确定模块20、矩阵分块模块30、切换模块40以及矩阵迭代模块50,其中:
[0115]
(1)获取模块10
[0116]
获取模块10,用于获取待处理矩阵。
[0117]
(2)确定模块20
[0118]
确定模块20,用于根据待处理矩阵的矩阵信息,确定待处理矩阵的矩阵分块模式。
[0119]
其中,矩阵分块模式包括第一矩阵分块模式和第二矩阵分块模式,矩阵信息包括矩阵维度的数值,确定模块20具体用于:
[0120]
当待处理矩阵的矩阵维度的数值为二的整数次幂,确定待处理矩阵的矩阵分块模式为第一矩阵分块模式;
[0121]
当待处理矩阵的矩阵维度的数值为非二的整数次幂,确定待处理矩阵的矩阵分块模式为第二矩阵分块模式。
[0122]
(3)矩阵分块模块30
[0123]
矩阵分块模块30,用于基于矩阵分块模式,对待处理矩阵进行矩阵分块处理,得到
初始待处理矩阵子块。
[0124]
其中,矩阵分块模块30具体用于:
[0125]
当待处理矩阵的矩阵分块模式为第一矩阵分块模式,基于第一矩阵分块模式将待处理矩阵分为若干矩阵子块;其中,矩阵子块的数量为二的整数次幂;
[0126]
将矩阵子块作为初始待处理矩阵子块。
[0127]
具体地,矩阵分块模块30还用于:
[0128]
当待处理矩阵的矩阵分块模式为第二矩阵分块模式,基于第二矩阵分块模式将待处理矩阵分为若干矩阵子块;其中,矩阵子块的数量为非二的整数次幂;
[0129]
将矩阵子块作为初始待处理矩阵子块。
[0130]
(4)切换模块40
[0131]
切换模块40,用于当初始待处理矩阵子块满足预设条件,切换矩阵分块模式,并根据切换后的矩阵分块模式对初始待处理矩阵子块进行矩阵分块处理,得到目标待处理矩阵子块。
[0132]
其中,切换模块40具体用于:
[0133]
当初始待处理矩阵子块的矩阵维度的数值为非二的整数次幂,确定初始待处理矩阵子块满足预设条件;
[0134]
将第一矩阵分块模式切换为第二矩阵分块模式;
[0135]
根据第二矩阵分块模式对初始待处理矩阵子块进行矩阵分块处理,得到若干目标待处理矩阵子块;其中,目标待处理矩阵子块的数量为非二的整数次幂。
[0136]
具体地,切换模块40还用于:
[0137]
当初始待处理矩阵子块的矩阵维度的数值为二的整数次幂,确定初始待处理矩阵子块满足预设条件;
[0138]
将第二矩阵分块模式切换为第一矩阵分块模式;
[0139]
根据第一矩阵分块模式对初始待处理矩阵子块进行矩阵分块处理,得到若干目标待处理矩阵子块;其中,目标待处理矩阵子块的数量为二的整数次幂。
[0140]
(5)矩阵迭代模块50
[0141]
矩阵迭代模块50,用于根据矩阵迭代模式对目标待处理矩阵子块进行矩阵迭代处理,得到逆矩阵。
[0142]
其中,矩阵迭代模式包括第一矩阵迭代算法和第二矩阵迭代算法,矩阵迭代处理包括迭代运算,矩阵迭代模块50具体用于:
[0143]
当目标待处理矩阵子块的矩阵维度的数值为二的整数次幂,根据第一矩阵迭代算法对目标待处理矩阵子块进行迭代运算,得到逆矩阵;
[0144]
当目标待处理矩阵子块的矩阵维度的数值为非二的整数次幂,根据第二矩阵迭代算法对目标待处理矩阵子块进行迭代运算,得到逆矩阵。
[0145]
具体实施时,以上各个模块可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个模块的具体实施可参见前面的方法实施例,在此不再赘述。
[0146]
由上述可知,本技术提供的矩阵求逆装置,首先通过获取模块10获取待处理矩阵,然后通过确定模块20根据待处理矩阵的矩阵信息确定待处理矩阵的矩阵分块模式,并利用
矩阵分块模块30基于矩阵分块模式对待处理矩阵进行矩阵分块处理得到初始待处理矩阵子块,当初始待处理矩阵子块满足预设条件则利用切换模块40切换矩阵分块模式,并根据切换后的矩阵分块模式对初始待处理矩阵子块进行矩阵分块处理得到目标待处理矩阵子块,最后通过矩阵迭代模块50根据矩阵迭代模式对目标待处理矩阵子块进行矩阵迭代处理,得到逆矩阵。根据待处理矩阵的矩阵信息进行多种模式的矩阵分块处理,以降低矩阵的维度,并对矩阵子块进行迭代运算,使得矩阵求逆的计算量得到有效减少的同时还提高了运算精度,从而提高矩阵求逆的运算效率,进而缓解当前矩阵求逆运算效率低的技术问题。
[0147]
相应的,本发明实施例还提供一种矩阵求逆系统,包括本发明实施例所提供的任一种矩阵求逆装置,该矩阵求逆装置可以集成在电子设备中。
[0148]
其中,获取待处理矩阵;根据待处理矩阵的矩阵信息,确定待处理矩阵的矩阵分块模式;基于矩阵分块模式,对待处理矩阵进行矩阵分块处理,得到初始待处理矩阵子块;当初始待处理矩阵子块满足预设条件,切换矩阵分块模式,并根据切换后的矩阵分块模式对初始待处理矩阵子块进行矩阵分块处理,得到目标待处理矩阵子块;根据矩阵迭代模式对目标待处理矩阵子块进行矩阵迭代处理,得到逆矩阵。
[0149]
以上各个设备的具体实施可参见前面的实施例,在此不再赘述。
[0150]
由于该矩阵求逆系统可以包括本发明实施例所提供的任一种矩阵求逆装置,因此,可以实现本发明实施例所提供的任一种矩阵求逆装置所能实现的有益效果,详见前面的实施例,在此不再赘述。
[0151]
另外,本技术实施例还提供一种电子设备。如图5所示,电子设备500包括处理器501、存储器502。其中,处理器501与存储器502电性连接。
[0152]
处理器501是电子设备500的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或加载存储在存储器502内的应用程序,以及调用存储在存储器502内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。
[0153]
在本实施例中,电子设备500中的处理器501会按照如下的步骤,将一个或一个以上的应用程序的进程对应的指令加载到存储器502中,并由处理器501来运行存储在存储器502中的应用程序,从而实现各种功能:
[0154]
获取待处理矩阵;
[0155]
根据待处理矩阵的矩阵信息,确定待处理矩阵的矩阵分块模式;
[0156]
基于矩阵分块模式,对待处理矩阵进行矩阵分块处理,得到初始待处理矩阵子块;
[0157]
当初始待处理矩阵子块满足预设条件,切换矩阵分块模式,并根据切换后的矩阵分块模式对初始待处理矩阵子块进行矩阵分块处理,得到目标待处理矩阵子块;
[0158]
根据矩阵迭代模式对目标待处理矩阵子块进行矩阵迭代处理,得到逆矩阵。
[0159]
图6示出了本发明实施例提供的电子设备的具体结构框图,该电子设备可以用于实施上述实施例中提供的矩阵求逆方法。
[0160]
rf电路610用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯。rf电路610可包括各种现有的用于执行这些功能的电路元件,例如,天线、射频收发器、数字信号处理器、加密/解密芯片、用户身份模块(sim)卡、存储器等等。rf电路610可与各种网络如互联网、企业内部网、无线网络进行通讯或者通过无线网络与其他设备进行通讯。上述的无线网络可包括蜂窝式电话网、无线局域网或者城域网。
上述的无线网络可以使用各种通信标准、协议及技术,包括但并不限于全球移动通信系统(global system for mobile communication,gsm)、增强型移动通信技术(enhanced data gsm environment,edge),宽带码分多址技术(wideband code division multiple access,wcdma),码分多址技术(code division access,cdma)、时分多址技术(time division multiple access,tdma),无线保真技术(wireless fidelity,wi-fi)(如美国电气和电子工程师协会标准ieee802.11a,ieee 802.11b,ieee802.11g和/或ieee 802.11n)、网络电话(voice over internet protocol,voip)、全球微波互联接入(worldwide interoperability for microwave access,wi-max)、其他用于邮件、即时通讯及短消息的协议,以及任何其他合适的通讯协议,甚至可包括那些当前仍未被开发出来的协议。
[0161]
存储器620可用于存储软件程序以及模块,处理器680通过运行存储在存储器620内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现存储5g能力信息的功能。存储器620可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器620可进一步包括相对于处理器680远程设置的存储器,这些远程存储器可以通过网络连接至电子设备600。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0162]
输入单元630可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元630可包括触敏表面631以及其他输入设备632。触敏表面631,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面631上或在触敏表面631附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面631可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器680,并能接收处理器680发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面631。除了触敏表面631,输入单元630还可以包括其他输入设备632。具体地,其他输入设备632可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
[0163]
显示单元640可用于显示由用户输入的信息或提供给用户的信息以及电子设备600的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元640可包括显示面板641,可选的,可以采用lcd(liquid crystal display,液晶显示器)、oled(organic light-emitting diode,有机发光二极管)等形式来配置显示面板641。进一步的,触敏表面631可覆盖显示面板641,当触敏表面631检测到在其上或附近的触摸操作后,传送给处理器680以确定触摸事件的类型,随后处理器680根据触摸事件的类型在显示面板641上提供相应的视觉输出。虽然在图6中,触敏表面631与显示面板641是作为两个独立的部件来实现输入和输出功能,但是在某些实施例中,可以将触敏表面631与显示面板641集成而实现输入和输出功能。
[0164]
电子设备600还可包括至少一种传感器650,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板641的亮度,接近传感器可在电子设备600移动到耳边时,
关闭显示面板641和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于电子设备600还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
[0165]
音频电路660、扬声器661,传声器662可提供用户与电子设备600之间的音频接口。音频电路660可将接收到的音频数据转换后的电信号,传输到扬声器661,由扬声器661转换为声音信号输出;另一方面,传声器662将收集的声音信号转换为电信号,由音频电路660接收后转换为音频数据,再将音频数据输出处理器680处理后,经rf电路610以发送给比如另一终端,或者将音频数据输出至存储器620以便进一步处理。音频电路660还可能包括耳塞插孔,以提供外设耳机与电子设备600的通信。
[0166]
电子设备600通过传输模块670(例如wi-fi模块)可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图6示出了传输模块670,但是可以理解的是,其并不属于电子设备600的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
[0167]
处理器680是电子设备600的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器620内的软件程序和/或模块,以及调用存储在存储器620内的数据,执行电子设备600的各种功能和处理数据。可选的,处理器680可包括一个或多个处理核心;在一些实施例中,处理器680可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器680中。
[0168]
电子设备600还包括给各个部件供电的电源690(比如电池),在一些实施例中,电源可以通过电源管理系统与处理器680逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源690还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
[0169]
尽管未示出,电子设备600还可以包括摄像头(如前置摄像头、后置摄像头)、蓝牙模块等,在此不再赘述。具体在本实施例中,电子设备的显示单元是触摸屏显示器,电子设备还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行一个或者一个以上程序包含用于进行以下操作的指令:
[0170]
获取待处理矩阵;
[0171]
根据待处理矩阵的矩阵信息,确定待处理矩阵的矩阵分块模式;
[0172]
基于矩阵分块模式,对待处理矩阵进行矩阵分块处理,得到初始待处理矩阵子块;
[0173]
当初始待处理矩阵子块满足预设条件,切换矩阵分块模式,并根据切换后的矩阵分块模式对初始待处理矩阵子块进行矩阵分块处理,得到目标待处理矩阵子块;
[0174]
根据矩阵迭代模式对目标待处理矩阵子块进行矩阵迭代处理,得到逆矩阵。
[0175]
具体实施时,以上各个模块可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个模块的具体实施可参见前面的方法实施例,在此不再赘述。
[0176]
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。为此,本发明实施例提供一种存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本发明实施例所提供的任一种矩阵求逆方法中的步骤。
[0177]
其中,该存储介质可以包括:只读存储器(rom,read only memory)、随机存取记忆体(ram,random access memory)、磁盘或光盘等。
[0178]
由于该存储介质中所存储的指令,可以执行本发明实施例所提供的任一种矩阵求逆方法中的步骤,因此,可以实现本发明实施例所提供的任一种矩阵求逆方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
[0179]
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
[0180]
综上,虽然本技术已以优选实施例揭露如上,但上述优选实施例并非用以限制本技术,本领域的普通技术人员,在不脱离本技术的精神和范围内,均可作各种更动与润饰,因此本技术的保护范围以权利要求界定的范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献