[发明专利]在处理系统上对矩阵进行奇异值、特征值分解的方法和装置无效
申请号: | 200810091689.8 | 申请日: | 2008-04-14 |
公开(公告)号: | CN101561797A | 公开(公告)日: | 2009-10-21 |
发明(设计)人: | 潘家铭;龚志刚 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | G06F17/16 | 分类号: | G06F17/16 |
代理公司: | 北京市中咨律师事务所 | 代理人: | 李 峥;周春燕 |
地址: | 美国*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 处理 系统 矩阵 进行 奇异 特征值 分解 方法 装置 | ||
技术领域
本发明涉及数据处理领域,具体地,涉及在处理系统上对矩阵进行奇异值分解的方法和装置以及对矩阵进行特征值分解的方法和装置。
背景技术
LAPACK(Linear Algebra PACKage,线性代数包)是Oak Ridge国家实验室、加州大学Davis分校和Illinois大学等联合开发的非常有效、强大且广泛使用的线性代数函数库,用于在不同高性能计算环境上高效求解数值线性代数问题,其已经有效地为HPC(High Performance Computing,高性能计算)和计算科学组织工作了20多年的时间。关于LAPACK的详细内容,可参见http://netlib.amss.ac.cn/lapack/index.html。
作为专业的线性代数库,LAPACK提供了各种线性代数的子程序,其中包括实现矩阵的奇异值分解的例程和实现矩阵的特征值分解的例程。
矩阵的奇异值分解的含义是:对于给定的矩阵A,找出分解
A=UA*S*VAT,
其中,UA是正交矩阵,其是A的左奇异向量矩阵;S是对角矩阵,其是A的奇异值矩阵,其对角线上的元素就是A的奇异值;VA是正交矩阵,其是A的右奇异向量矩阵。
矩阵的特征值分解的含义是:对于给定的矩阵A,找出分解
A=UA*Z*UAT,
其中,UA是正交矩阵,其是A的特征向量矩阵;Z是对角矩阵,其是A的特征值矩阵,其对角线上的元素就是A的特征值。
现有的LAPACK中的奇异值分解过程是:对于给定的矩阵A,首先将其转换为双对角矩阵B,同时得到中间矩阵U和V,以满足下面的公式:
B=UTAV。
然后,迭代地找出并转换该双对角矩阵B中、副对角线上的元素不为0的子矩阵,使该双对角矩阵B逐渐收敛为对角矩阵S;其中,在每一次迭代中都会在当前副对角线上的元素不为0的子矩阵的QR迭代过程中生成两个Givens旋转参数组,并且利用这两个Givens旋转参数组分别对中间矩阵U和V进行Givens旋转,以使中间矩阵U和V最终分别被转换为矩阵A的左奇异向量矩阵UA和右奇异向量矩阵VA。
图1示出了上述现有的奇异值分解过程的详细流程。如图1所示,首先,在步骤105,对于给定的矩阵A,将其双对角化,即将矩阵A转换为如图2(a)或2(b)所示的形式的双对角矩阵B,同时得到中间矩阵U和V。其中在该双对角矩阵B中,除主对角线以及副对角线之外的所有元素均为零。
接着,迭代地执行以下的步骤110~130,以使双对角矩阵B逐渐收敛为对角矩阵S,并且分别将中间矩阵U和V转换为矩阵A的左奇异向量矩阵UA和右奇异向量矩阵VA。
具体地,在步骤110,判断当前的双对角矩阵B是否已经收敛为对角矩阵。如果是,则该过程结束,否则,前进到步骤115。
在步骤115,从双对角矩阵B中找出当前其副对角线上的元素均不为0的子矩阵B1,而在该子矩阵B1之前的对角线上的元素均已收敛为0。
在步骤120,对所找出的子矩阵B1进行QR迭代。
在该步骤中,对于子矩阵B1进行QR迭代的迭代步数是该子矩阵B1的阶数n减去1。其中,在每一步迭代中都会生成一个如图3(a)所示的形式的Givens旋转矩阵Qk,{k=1,...,n-1}和一个如图3(b)所示的形式的Givens旋转矩阵Pk,{k=1,...,n-1}。如图3(a)和3(b)所示,Givens旋转矩阵Qk,{k=1,...,n-1}和Pk,{k=1,...,n-1}中分别包括一对Givens旋转参数c和s。并且,在每一步迭代之后,都会利用所生成的Qk,{k=1,...,n-1}和Pk,{k=1,...,n-1}按照如下公式更新双对角矩阵B:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810091689.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:利用纳米颗粒进行酶抑制
- 下一篇:一种燃料电池膜电极及其制备方法