首页 > 编程知识 正文

线性代数对称矩阵的对角化,svd矩阵分解例题

时间:2023-05-04 19:11:28 阅读:224275 作者:1751

矩阵的对角化、SVD分解及应用 矩阵的对角化、SVD分解及应用矩阵运算的总结矩阵对角化SVD分解(奇异值分解)应用

矩阵的对角化、SVD分解及应用 许多数学对象可以通过将它们分解成多个组成部分或者找到它们的一些属性而更好地理解,这些属性是通用的,而不是由我们选择表示它们的方式产生的。例如,整数可以分解为质因数。我们可以用十进制或二进制等不同方式表示整数 12,但是 12 = 2 × 2 × 3 永远是对的。从这个表示中我们可以获得一些有用的信息,比如 12 不能被 5 整除,或者 12 的倍数可以被 3 整除。正如我们可以通过分解质因数来发现整数的一些内在性质,我们也可以通过分解矩阵来发现矩阵表示成数组元素时不明显的函数性质。这里重点关注矩阵的SVD分解和应用。 矩阵运算的总结

先复习一下矩阵运算的几个关键性质:

矩阵运算满足分配率,结合律,特别的一般情况下不能满足交换律。

矩阵对角化


只有对称矩阵可以对角化,一般的矩阵是不一定能对角化的。
矩阵B(方阵)的对角化公式: P-1AP = B,其中A为对角矩阵,P为单位正交矩阵。
注:正交矩阵是指行向量和列向量是分别标准正交的方阵。
对于单位正交矩阵来说:PTP=PPT=I,也就是说P-1=PT 。
所以B=PTAP,正交矩阵受到关注是因为求逆计算代价小 。
设PT 为一系列u的向量,u属于实数范围。
根据公式得A等于值为 λ 的对角矩阵,推导B对角化计算:

由这里引出问题:怎么通过矩阵对角化实现对矩阵的有损压缩?
当我们的矩阵很大时,运算代价很大,通过矩阵对角化上述表达式丢弃部分数据实现矩阵压缩。

SVD分解(奇异值分解)

在我们的现实应用中,更常见的并不是对称方阵,而是一般普通的m x n矩阵,我们应该怎么去分解呢? 通过SVD来实现一般矩阵的分解

一般的 A m , n A_{m,n} Am,n​矩阵是不能直接做对角化分解的,通过SVD的方法,将A矩阵转化:
1、 A T A A^TA ATA为对称正定矩阵
2、 ( A T A ) T = A T ( A T ) T = A T A (A^TA)^T = A^T(A^T)^T=A^TA (ATA)T=AT(AT)T=ATA=>对称性
3、 x T A T A x = ( x T A T ) ( A x ) = ( A x ) T ( A x ) > = 0 x^TA^TAx=(x^TA^T)(Ax)=(Ax)^T(Ax)>=0 xTATAx=(xTAT)(Ax)=(Ax)T(Ax)>=0=>正定性

应用

能够极大的减小神经网络中算法的复杂度,在深度神经网络中有着广泛的应用

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。