Matrix decomposition: Difference between revisions

Content deleted Content added
m Fixed EOM link
Boldface; italics
Line 6:
In [[numerical analysis]], different decompositions are used to implement efficient matrix [[algorithm]]s.
 
For instance, when solving a [[system of linear equations]] <math>AxA \mathbf{x} = \mathbf{b}</math>, the matrix ''A'' can be decomposed via the [[LU decomposition]]. The LU decomposition factorizes a matrix into a [[lower triangular matrix]] ''L'' and an [[upper triangular matrix]] ''U''. The systems <math>L(UxU \mathbf{x}) = \mathbf{b}</math> and <math>UxU \mathbf{x} = L^{-1} \mathbf{b}</math> require fewer additions and multiplications to solve, compared with the original system <math>AxA \mathbf{x} = \mathbf{b}</math>, though one might require significantly more digits in inexact arithmetic such as [[floating point]].
 
Similarly, the [[QR decomposition]] expresses ''A'' as ''QR'' with ''Q'' an [[orthogonal matrix]] and ''R'' an upper triangular matrix. The system ''Q''(''RxR'''''x''') = '''b''' is solved by ''RxR'''''x''' = ''Q''<sup>T</sup>'''b''' = '''c''', and the system ''RxR'''''x''' = '''c''' is solved by '[[Triangular matrix#Forward and back substitution|back substitution]]'. The number of additions and multiplications required is about twice that of using the LU solver, but no more digits are required in inexact arithmetic because the QR decomposition is [[numerically stable]].
 
== Decompositions related to solving systems of linear equations ==
Line 19:
*Related: the [[LUP decomposition|''LUP'' decomposition]] is <math>A=LUP</math>, where ''L'' is [[triangular matrix|lower triangular]], ''U'' is [[triangular matrix|upper triangular]], and ''P'' is a [[permutation matrix]].
*Existence: An LUP decomposition exists for any square matrix ''A''. When ''P'' is an [[identity matrix]], the LUP decomposition reduces to the LU decomposition. If the LU decomposition exists, then the LDU decomposition exists.<ref>{{harvnb|Simon|Blume|1994}} Chapter 7.</ref>
*Comments: The LUP and LU decompositions are useful in solving an ''n''-by-''n'' system of linear equations <math>AxA \mathbf{x} = \mathbf{b}</math>. These decompositions summarize the process of [[Gaussian elimination]] in matrix form. Matrix ''P'' represents any row interchanges carried out in the process of Gaussian elimination. If Gaussian elimination produces the [[row echelon form]] without requiring any row interchanges, then ''P''&nbsp;=&nbsp;''I'', so an LU decomposition exists.
 
=== LU reduction ===
Line 31:
*Applicable to: ''m''-by-''n'' matrix ''A'' of rank ''r''
*Decomposition: <math>A=CF</math> where ''C'' is an ''m''-by-''r'' full column rank matrix and ''F'' is an ''r''-by-''n'' full row rank matrix
*Comment: The rank factorization can be used to [[Moore–Penrose pseudoinverse#Rank decomposition|compute the Moore–Penrose pseudoinverse]] of ''A'',<ref>{{cite journal|last1=Piziak|first1=R.|last2=Odell|first2=P. L.|title=Full Rank Factorization of Matrices|journal=Mathematics Magazine|date=1 June 1999|volume=72|issue=3|pages=193|doi=10.2307/2690882|jstor=2690882}}</ref> which one can apply to [[Moore–Penrose pseudoinverse#Obtaining all solutions of a linear system|obtain all solutions of the linear system]] <math>AxA \mathbf{x} = \mathbf{b}</math>.
 
=== Cholesky decomposition ===
{{main|Cholesky decomposition}}
*Applicable to: [[square matrix|square]], [[symmetric matrix|hermitian]], [[positive-definite matrix|positive definite]] matrix ''A''
*Decomposition: <math>A=U^*U^\mathsf{T}</math>, where <math>U</math> is upper triangular with real positive diagonal entries
*Comment: if the matrix <math>A</math> is Hermitian and positive semi-definite, then it has a decomposition of the form <math>A=U^*U^\mathsf{T}</math> if the diagonal entries of <math>U</math> are allowed to be zero
*Uniqueness: for positive definite matrices Cholesky decomposition is unique. However, it is not unique in the positive semi-definite case.
*Comment: if A is real and symmetric, <math>U</math> has all real elements
Line 47:
*Decomposition: <math>A=QR</math> where <math>Q</math> is a [[unitary matrix]] of size ''m''-by-''m'', and <math>R</math> is an [[triangular matrix|upper triangular]] matrix of size ''m''-by-''n''
*Uniqueness: In general it is not unique, but if <math>A</math> is of full [[Matrix rank|rank]], then there exists a single <math>R</math> that has all positive diagonal elements. If <math>A</math> is square, also <math>Q</math> is unique.
*Comment: The QR decomposition provides an effective way to solve the system of equations <math>AxA \mathbf{x} = \mathbf{b}</math>. The fact that <math>Q</math> is [[orthogonal matrix|orthogonal]] means that <math>Q^{\mathrm{T}}Q=I</math>, so that <math>AxA \mathbf{x} = \mathbf{b}</math> is equivalent to <math>RxR \mathbf{x} = Q^{\mathrmmathsf{T}} \mathbf{b}</math>, which is very easy to solve since <math>R</math> is [[triangular matrix|triangular]].
 
=== RRQR factorization ===
Line 66:
*Comment: One can always normalize the eigenvectors to have length one (see the definition of the eigenvalue equation)
*Comment: Every [[normal matrix]] ''A'' (i.e., matrix for which <math>AA^*=A^*A</math>, where <math>A^*</math> is a [[conjugate transpose]]) can be eigendecomposed. For a [[normal matrix]] ''A'' (and only for a normal matrix), the eigenvectors can also be made orthonormal (<math>VV^*=I</math>) and the eigendecomposition reads as <math>A=VDV^*</math>. In particular all [[Unitary matrix|unitary]], [[Hermitian matrix|Hermitian]], or [[Skew-Hermitian matrix|skew-Hermitian]] (in the real-valued case, all [[Orthogonal matrix|orthogonal]], [[Symmetric matrix|symmetric]], or [[Skew-symmetric matrix|skew-symmetric]], respectively) matrices are normal and therefore possess this property.
*Comment: For any real [[symmetric matrix]] ''A'', the eigendecomposition always exists and can be written as <math>A=VDV^\mathsf{T}</math>, where both ''D'' and ''V'' are real-valued.
*Comment: The eigendecomposition is useful for understanding the solution of a system of linear ordinary differential equations or linear difference equations. For example, the difference equation <math>x_{t+1}=Ax_t</math> starting from the initial condition <math>x_0=c</math> is solved by <math>x_t = A^tc</math>, which is equivalent to <math>x_t = VD^tV^{-1}c</math>, where ''V'' and ''D'' are the matrices formed from the eigenvectors and eigenvalues of ''A''. Since ''D'' is diagonal, raising it to power <math>D^t</math>, just involves raising each element on the diagonal to the power ''t''. This is much easier to do and understand than raising ''A'' to power ''t'', since ''A'' is usually not diagonal.
 
Line 78:
*Applicable to: [[square matrix]] ''A''
*Decomposition (complex version): <math>A=UTU^*</math>, where ''U'' is a [[unitary matrix]], <math>U^*</math> is the [[conjugate transpose]] of ''U'', and ''T'' is an [[upper triangular]] matrix called the complex [[Schur form]] which has the [[eigenvalue]]s of ''A'' along its diagonal.
*Comment: if ''A'' is a [[normal matrix]], then ''T'' is diagonal and the Schur decomposition coincides with the spectral decomposition.
 
=== Real Schur decomposition ===
*Applicable to: [[square matrix]] ''A''
*Decomposition: This is a version of Schur decomposition where <math>V</math> and <math>S</math> only contain real numbers. One can always write <math>A=VSV^\mathsf{T}</math> where ''V'' is a real [[orthogonal matrix]], <math>V^\mathsf{T}</math> is the [[matrix transpose|transpose]] of ''V'', and ''S'' is a [[block matrix|block upper triangular]] matrix called the real [[Schur form]]. The blocks on the diagonal of ''S'' are of size 1×1 (in which case they represent real eigenvalues) or 2×2 (in which case they are derived from [[complex conjugate]] eigenvalue pairs).
 
=== QZ decomposition ===
Line 90:
*Comment: there are two versions of this decomposition: complex and real.
*Decomposition (complex version): <math>A=QSZ^*</math> and <math>B=QTZ^*</math> where ''Q'' and ''Z'' are [[unitary matrix|unitary matrices]], the * superscript represents [[conjugate transpose]], and ''S'' and ''T'' are [[upper triangular]] matrices.
*Comment: in the complex QZ decomposition, the ratios of the diagonal elements of ''S'' to the corresponding diagonal elements of ''T'', <math>\lambda_i = S_{ii}/T_{ii}</math>, are the generalized [[eigenvalue]]s that solve the [[Eigendecomposition of a matrix#Additional topics|generalized eigenvalue problem]] <math>AvA \mathbf{v} = \lambda BvB \mathbf{v}</math> (where <math>\lambda</math> is an unknown scalar and '''v''' is an unknown nonzero vector).
*Decomposition (real version): <math>A=QSZ^\mathsf{T}</math> and <math>B=QTZ^\mathsf{T}</math> where ''A'', ''B'', ''Q'', ''Z'', ''S'', and ''T'' are matrices containing real numbers only. In this case ''Q'' and ''Z'' are [[orthogonal matrix|orthogonal matrices]], the ''T'' superscript represents [[matrix transpose|transposition]], and ''S'' and ''T'' are [[block matrix|block upper triangular]] matrices. The blocks on the diagonal of ''S'' and ''T'' are of size 1×1 or 2×2.
 
=== Takagi's factorization ===
*Applicable to: square, complex, symmetric matrix ''A''.
*Decomposition: <math>A=VDV^\mathsf{T}</math>, where ''D'' is a real nonnegative [[diagonal matrix]], and ''V'' is [[unitary matrix|unitary]]. <math>V^\mathsf{T}</math> denotes the [[matrix transpose]] of ''V''.
*Comment: The diagonal elements of ''D'' are the nonnegative square roots of the eigenvalues of <math>AA^*</math>.
*Comment: ''V'' may be complex even if ''A'' is real.
*Comment: This is not a special case of the eigendecomposition (see above), which uses <math>V^{-1}</math> instead of <math>V^\mathsf{T}</math>. Moreover, if ''A'' is not real, it is not Hermitian and the form using <math>V^*</math> also does not apply.
 
=== Singular value decomposition ===
{{main|Singular value decomposition}}
*Applicable to: ''m''-by-''n'' matrix ''A''.
*Decomposition: <math>A=UDV^*</math>, where ''D'' is a nonnegative [[diagonal matrix]], and ''U'' and ''V'' satisfy <math>U^*U = I, V^*V = I</math>. Here <math>V^*</math> is the [[conjugate transpose]] of ''V'' (or simply the [[matrix transpose|transpose]], if ''V'' contains real numbers only), and ''I'' denotes the identity matrix (of some dimension).
*Comment: The diagonal elements of ''D'' are called the [[singular value]]s of ''A''.
*Comment: Like the eigendecomposition above, the singular value decomposition involves finding basis directions along which matrix multiplication is equivalent to scalar multiplication, but it has greater generality since the matrix under consideration need not be square.
Line 133:
*Applicable to: square, complex, non-singular matrix ''A''.<ref>{{harvnb|Choudhury|Horn|1987|pp=219–225}}</ref>
*Decomposition: <math>A=QS</math>, where ''Q'' is a complex orthogonal matrix and ''S'' is complex symmetric matrix.
*Uniqueness: If <math>A^\mathsf{T}A</math> has no negative real eigenvalues, then the decomposition is unique.<ref name=":0">{{Cite journal|last=Bhatia|first=Rajendra|date=2013-11-15|title=The bipolar decomposition|journal=Linear Algebra and Its Applications|volume=439|issue=10|pages=3031–3037|doi=10.1016/j.laa.2013.09.006|doi-access=free}}</ref>
*Comment: The existence of this decomposition is equivalent to <math>AA^\mathsf{T}</math> being similar to <math>A^\mathsf{T}A</math>.<ref>{{harvnb|Horn|merino|1995|pp=43–92}}</ref>
*Comment: A variant of this decomposition is <math>A=RC</math>, where ''R'' is a real matrix and ''C'' is a [[circular matrix]].<ref name=":0" />
 
Line 141:
* Applicable to: square, complex, non-singular matrix ''A''.<ref>{{citation|last=Mostow|first= G. D.|title= Some new decomposition theorems for semi-simple groups|series= Mem. Amer. Math. Soc. |year=1955|volume=14|pages= 31–54|url=https://archive.org/details/liealgebrasandli029541mbp|publisher= American Mathematical Society}}</ref><ref>{{Cite book|title=Matrix Information Geometry|last=Nielsen|first=Frank|last2=Bhatia|first2=Rajendra|publisher=Springer|year=2012|isbn=9783642302329|pages=224|language=en|doi=10.1007/978-3-642-30232-9|arxiv = 1007.4402}}</ref>
* Decomposition: <math>A=Ue^{iM}e^{S}</math>, where ''U'' is unitary, ''M'' is real anti-symmetric and ''S'' is real symmetric.
* Comment: The matrix ''A'' can also be decomposed as <math>A=U_2e^{S_2}e^{iM_2}</math>, where ''U''<sub>2</sub>'' is unitary, ''M''<sub>2</sub>'' is real anti-symmetric and ''S''<sub>2</sub>'' is real symmetric.<ref name=":0" />
 
=== Sinkhorn normal form ===
Line 153:
 
=== Williamson's normal form ===
* Applicable to: square, [[Positive-definite matrix|positive-definite]] real matrix ''A'' with order 2''n''-by-2×2''n''.
* Decomposition: <math>A=S^\mathsf{T}\textrmoperatorname{diag}(D,D)S</math>, where <math>S \in \text{Sp}(2n)</math> is a [[symplectic matrix]] and ''D'' is a nonnegative ''n''-by-''n'' diagonal matrix.<ref>{{Cite journal|last=Idel|first=Martin|last2=Soto Gaona|first2=Sebastián|last3=Wolf|first3=Michael M.|date=2017-07-15|title=Perturbation bounds for Williamson's symplectic normal form|journal=Linear Algebra and Its Applications|volume=525|pages=45–58|doi=10.1016/j.laa.2017.03.013|arxiv=1609.01338}}</ref>
 
== Generalizations ==