FACTOID # 32: Guatamalan women work 11.5 hours a day, while South African men work only 4.5.
 
 Home   Encyclopedia   Statistics   Countries A-Z   Flags   Maps   Education   Forum   FAQ   About 
 
WHAT'S NEW
RECENT ARTICLES
More Recent Articles »
 

FACTS & STATISTICS    Simple view

  1. Select countries to view: (hold down Control key and click to select several)

     

     

    Compare:

     

     

  1. Select fact or statistic: (* = graphable)

     

     

     

  2. (OPTIONAL) Compare to statistic: (both need to be graphable)

     

     

     

  3. View result as:

     

       
(OR) SEARCH ALL encyclopedia, stats & forums:   

Encyclopedia > QR decomposition

In linear algebra, the QR decomposition (also called the QR factorization) of a matrix is a decomposition of the matrix into an orthogonal and a triangular matrix. The QR decomposition is often used to solve the linear least squares problem. The QR decomposition is also the basis for a particular eigenvalue algorithm, the QR algorithm. Linear algebra is the branch of mathematics concerned with the study of vectors, vector spaces (also called linear spaces), linear maps (also called linear transformations), and systems of linear equations. ... In mathematics, a matrix (plural matrices) is a rectangular table of numbers or, more generally, a table consisting of abstract quantities that can be added and multiplied. ... In the mathematical discipline of linear algebra, a matrix decomposition is a factorization of a matrix into some canonical form. ... In matrix theory, a real orthogonal matrix is a square matrix Q whose transpose is its inverse: // Overview An orthogonal matrix is the real specialization of a unitary matrix, and thus always a normal matrix. ... In the mathematical discipline of linear algebra, a triangular matrix is a special kind of square matrix where the entries below or above the main diagonal are zero. ... Linear least squares is a mathematical optimization technique to find an approximate solution for a system of linear equations that has no exact solution. ... It has been suggested that this article or section be merged with Symbolic computation of matrix eigenvalues. ... A QR algorithm is a procedure to calculate the eigenvalues of a matrix. ...

Contents

Definition

A QR decomposition of a real square matrix A is a decomposition of A as

A = QR, ,

where Q is an orthogonal matrix (meaning that QTQ = I ) and R is an upper triangular matrix. Analogously, we can define the QL, RQ, and LQ decompositions of A. In matrix theory, a real orthogonal matrix is a square matrix Q whose transpose is its inverse: // Overview An orthogonal matrix is the real specialization of a unitary matrix, and thus always a normal matrix. ... In the mathematical discipline of linear algebra, a triangular matrix is a special kind of square matrix where the entries below or above the main diagonal are zero. ...


More generally, we can factor a complex m×n matrix (with mn) as the product of an m×n unitary matrix (in the sense that QQ = I ) and an n×n upper triangular matrix. In mathematics, a unitary matrix is an n by n complex matrix U satisfying the condition where In is the identity matrix and U* is the conjugate transpose (also called the Hermitian adjoint) of U. Note this condition says that a matrix U is unitary if it has an inverse...


If A is nonsingular, then this factorization is unique if we require that the diagonal elements of R are positive. In linear algebra, an n-by-n (square) matrix is called invertible or non-singular if there exists an n-by-n matrix such that where denotes the n-by-n identity matrix and the multiplication used is ordinary matrix multiplication. ...


Computing the QR decomposition

There are several methods for actually computing the QR decomposition, such as by means of the Gram–Schmidt process, Householder transformations, or Givens rotations. Each has a number of advantages and disadvantages. In mathematics and numerical analysis, the Gram–Schmidt Process is a method of orthogonalizing a set of vectors in an inner product space, most commonly the Euclidean space Rn. ... In mathematics, a Householder transformation in 3-dimensional space is the reflection of a vector in a plane. ... In mathematics, a Givens rotation is a matrix of the form where c = cos(θ) and s = sin(θ) appear in the i-th / k-th row and column, respectively. ...


Computing QR by means of Gram-Schmidt

Consider the Gram–Schmidt process, with the vectors to be considered in the process as columns of the matrix A=(mathbf{a}_1| cdots|mathbf{a}_n). We define mathrm{proj}_{mathbf{e}}mathbf{a} = (mathbf{a}^Tmathbf{e})mathbf{e} In mathematics and numerical analysis, the Gram–Schmidt Process is a method of orthogonalizing a set of vectors in an inner product space, most commonly the Euclidean space Rn. ...


Then

mathbf{u}_1 = mathbf{a}_1, qquadmathbf{e}_1 = {mathbf{u}_1 over |mathbf{u}_1|}
mathbf{u}_2 = mathbf{a}_2-mathrm{proj}_{mathbf{e}_1},mathbf{a}_2, qquadmathbf{e}_2 = {mathbf{u}_2 over |mathbf{u}_2|}
mathbf{u}_3 = mathbf{a}_3-mathrm{proj}_{mathbf{e}_1},mathbf{a}_3-mathrm{proj}_{mathbf{e}_2},mathbf{a}_3, qquadmathbf{e}_3 = {mathbf{u}_3 over |mathbf{u}_3|}
vdots
mathbf{u}_k = mathbf{a}_k-sum_{j=1}^{k-1}mathrm{proj}_{mathbf{e}_j},mathbf{a}_k,qquadmathbf{e}_k = {mathbf{u}_kover|mathbf{u}_k|}

Naturally then, we rearrange the equations so the ais are the subject, to get the following

mathbf{a}_1 = mathbf{e}_1|mathbf{u}_1|
mathbf{a}_2 = mathrm{proj}_{mathbf{e}_1},mathbf{a}_2+mathbf{e}_2|mathbf{u}_2|
mathbf{a}_3 = mathrm{proj}_{mathbf{e}_1},mathbf{a}_3+mathrm{proj}_{mathbf{e}_2},mathbf{a}_3+mathbf{e}_3|mathbf{u}_3|
vdots
mathbf{a}_k = sum_{j=1}^{k-1}mathrm{proj}_{mathbf{e}_j},mathbf{a}_k+mathbf{e}_k|mathbf{u}_k|

Each of these projections of the vectors mathbf{a}_i onto one of these ej are merely the inner product of the two, since the vectors are normed. In geometry, an orthogonal projection of a k-dimensional object onto a d-dimensional hyperplane (d < k) is obtained by intersections of (k &#8722; d)- dimensional hyperplanes drawn through the points of an object orthogonally to the d-hyperplane. ...


Now these equations can be written in matrix form, viz.,

left(mathbf{e}_1left|ldotsright|mathbf{e}_nright) begin{pmatrix} |mathbf{u}_1| & langlemathbf{e}_1,mathbf{a}_2rangle & langlemathbf{e}_1,mathbf{a}_3rangle & ldots  0 & |mathbf{u}_2| & langlemathbf{e}_2,mathbf{a}_3rangle & ldots  0 & 0 & |mathbf{u}_3| & ldots  vdots & vdots & vdots & ddots end{pmatrix}

But the product of each row and column of the matrices above give us a respective column of A that we started with, and together, they give us the matrix A, so we have factorized A into an orthogonal matrix Q (the matrix of eks), via Gram Schmidt, and the obvious upper triangular matrix as a remainder R. In the mathematical discipline of linear algebra, a triangular matrix is a special kind of square matrix where the entries below or above the main diagonal are zero. ...


Alternatively, begin{matrix} R end{matrix} can be calculated as follows:


Recall that begin{matrix}Qend{matrix} = left(mathbf{e}_1left|ldotsright|mathbf{e}_nright). Then, we have

begin{matrix} R = Q^{T}A = end{matrix} begin{pmatrix} langlemathbf{e}_1,mathbf{a}_1rangle & langlemathbf{e}_1,mathbf{a}_2rangle & langlemathbf{e}_1,mathbf{a}_3rangle & ldots  0 & langlemathbf{e}_2,mathbf{a}_2rangle & langlemathbf{e}_2,mathbf{a}_3rangle & ldots  0 & 0 & langlemathbf{e}_3,mathbf{a}_3rangle & ldots  vdots & vdots & vdots & ddots end{pmatrix}.

Note that langlemathbf{e}_j,mathbf{a}_jrangle = |mathbf{u}_j|, langlemathbf{e}_j,mathbf{a}_krangle = 0 mathrm{~~for~~} j > k, and QQT = I, so QT = Q − 1.


Example

Consider the decomposition of

A = begin{pmatrix} 12 & -51 & 4  6 & 167 & -68  -4 & 24 & -41 end{pmatrix} .

Recall the orthogonal matrix Q such that

begin{matrix} Q,Q^{T} = I. end{matrix}

Then, we can calculate Q by means of Gram-Schmidt as follows:

U = begin{pmatrix} mathbf u_1 & mathbf u_2 & mathbf u_3 end{pmatrix} = begin{pmatrix} 12 & -69 & -58/5  6 & 158 & 6/5  -4 & 30 & -33 end{pmatrix};
Q = begin{pmatrix} frac{mathbf u_1}{|mathbf u_1|} & frac{mathbf u_2}{|mathbf u_2|} & frac{mathbf u_3}{|mathbf u_3|} end{pmatrix} = begin{pmatrix} 6/7 & -69/175 & -58/175  3/7 & 158/175 & 6/175  -2/7 & 6/35 & -33/35 end{pmatrix};

Thus, we have

begin{matrix} A = Q,Q^{T}A = Q R; end{matrix}
begin{matrix} R = Q^{T}A = end{matrix} begin{pmatrix} 14 & 21 & -14  0 & 175 & -70  0 & 0 & 35 end{pmatrix}.

Performing this operation using MATLAB, including numerical errors due to finite precision operation, leads to: begin{matrix} Q = end{matrix} begin{pmatrix} 0.857142857142857 & -0.394285714285714 & -0.331428571428571  0.428571428571429 & 0.902857142857143 & 0.034285714285714  -0.285714285714286 & 0.171428571428571 & -0.942857142857143 end{pmatrix}; MATLAB is a numerical computing environment and programming language. ...

begin{matrix} R = end{matrix} begin{pmatrix} 14 & 21 & -14  1.11022302462516 times 10^{-16} & 175 & -70  -1.77635683940025 times 10^{-15} & -5.32907051820075 times 10^{-14} & 35 end{pmatrix}.

Computing QR by means of Householder reflections

A Householder reflection (or Householder transformation) is a transformation that takes a vector and reflects it about some plane. We can use this property to calculate the QR factorization of a matrix. In mathematics, a Householder transformation in 3-dimensional space is the reflection of a vector in a plane. ...


Q can be used to reflect a vector in such a way that all coordinates but one disappear.


Let mathbf{x} be an arbitrary real m-dimensional column vector such that ||mathbf{x}|| = |α| for a scalar α. If the algorithm is implemented using floating-point arithmetic, then α should get the opposite sign as the first coordinate of mathbf{x} to avoid loss of significance. If mathbf{x} is a complex vector, then the definition A floating-point number is a digital representation for a number in a certain subset of the rational numbers, and is often used to approximate an arbitrary real number on a computer. ... Loss of significance is an undesirable effect in calculations using floating-point arithmetic. ...

alpha = - mathrm{e}^{mathrm{i} arg x_1} |mathbf{x}|

should be used (Stoer & Bulirsch 2002, p. 225).


Then, where mathbf{e}_1 is the vector (1,0,...,0)T, and ||·|| the Euclidean norm, set Around 300 BC, the Greek mathematician Euclid laid down the rules of what has now come to be called Euclidean geometry, which is the study of the relationships between angles and distances in space. ...

mathbf{u} = mathbf{x} - alphamathbf{e}_1,
mathbf{v} = {mathbf{u}over|mathbf{u}|},
Q = I - 2 mathbf{v}mathbf{v}^T.

Q is a Householder matrix and

Qx = (alpha, 0, cdots, 0)^T.,

This can be used to gradually transform an m-by-n matrix A to upper triangular form. First, we multiply A with the Householder matrix Q1 we obtain when we choose the first matrix column for x. This results in a matrix QA with zeros in the left column (except for the first row). For alternate meanings, such as the musical instrument, see triangle (disambiguation). ...

Q_1A = begin{bmatrix} alpha_1&star&dots&star 0 & & &  vdots & & A' &  0 & & & end{bmatrix}

This can be repeated for A′ (obtained from Q1A by deleting the first row and first column), resulting in a Householder matrix Q2. Note that Q2 is smaller than Q1. Since we want it really to operate on Q1A instead of A′ we need to expand it to the upper left, filling in a 1, or in general:

Q_k = begin{pmatrix} I_{k-1} & 0 0 & Q_k'end{pmatrix}.

After t iterations of this process, t = min(m − 1,n),

R = Q_t cdots Q_2Q_1A

is a upper triangular matrix. So, with

Q = Q_1Q_2 cdots Q_t

A = QR is a QR decomposition of A.


This method has greater numerical stability than the Gram-Schmidt method above. In the mathematical subfield of numerical analysis, numerical stability is a property of numerical algorithms. ...


The following table gives the number of operations in the k-th step of the QR-Decomposition by the Householder transformation, assuming a square matrix with size n.

Operation Number of operations in the k-th step
multiplications 2(nk + 1)2
additions (nk + 1)2 + (nk + 1)(nk) + 2
division 1
square root 1

Summing these numbers over the (n − 1) steps (for a square matrix of size n), the complexity of the algorithm is given by

frac{4}{3}n^3+frac{3}{2}n^2+frac{19}{6}n-6=O(n^3)

Example

Let us calculate the decomposition of

A = begin{pmatrix} 12 & -51 & 4  6 & 167 & -68  -4 & 24 & -41 end{pmatrix}.

First, we need to find a reflection that transforms the first column of matrix A, vector mathbf{a}_1 = (12, 6, -4)^T, to |mathbf{a}_1| ;mathrm{e}_1 = (14, 0, 0)^T.


Now,

mathbf{u} = mathbf{x} - alphamathbf{e}_1,

and

mathbf{v} = {mathbf{u}over|mathbf{u}|},.

Here,

α = 14 and mathbf{x} = mathbf{a}_1 = (12, 6, -4)^T

Therefore

mathbf{u} = (-2, 6, -4)^T and mathbf{v} = {1 over sqrt{14}}(-1, 3, -2)^T, and then
Q_1 = I - {2 over sqrt{14} sqrt{14}} begin{pmatrix} -1  3  -2 end{pmatrix}begin{pmatrix} -1 & 3 & -2 end{pmatrix}
= I - {1 over 7}begin{pmatrix} 1 & -3 & 2  -3 & 9 & -6  2 & -6 & 4 end{pmatrix}
= begin{pmatrix} 6/7 & 3/7 & -2/7  3/7 &-2/7 & 6/7  -2/7 & 6/7 & 3/7  end{pmatrix}.

Now observe:

Q_1A = begin{pmatrix} 14 & 21 & -14  0 & -49 & -14  0 & 168 & -77 end{pmatrix},

so we already have almost a triangular matrix. We only need to zero the (3, 2) entry.


Take the (1, 1) minor, and then apply the process again to In linear algebra, a minor of a matrix is the determinant of a certain smaller matrix. ...

A' = M_{11} = begin{pmatrix} -49 & -14  168 & -77 end{pmatrix}.

By the same method as above, we obtain the matrix of the Householder transformation

Q_2 = begin{pmatrix} 1 & 0 & 0  0 & -7/25 & 24/25  0 & 24/25 & 7/25 end{pmatrix}

after performing a direct sum with 1 to make sure the next step in the process works properly.


Now, we find

Q=Q_1Q_2=begin{pmatrix} 6/7 & -69/175 & 58/175 3/7 & 158/175 & -6/175  -2/7 & 6/35 & 33/35 end{pmatrix}
R=Q_2Q_1A=Q^top A=begin{pmatrix} 14 & 21 & -14  0 & 175 & -70  0 & 0 & -35 end{pmatrix}.

The matrix Q is orthogonal and R is upper triangular, so A = QR is the required QR-decomposition.


Computing QR by means of Givens rotations

QR decompositions can also be computed with a series of Givens rotations. Each rotation zeros an element in the subdiagonal of the matrix, forming the R matrix. The concatenation of all the Givens rotations forms the orthogonal Q matrix. In mathematics, a Givens rotation is a matrix of the form where c = cos(&#952;) and s = sin(&#952;) appear in the i-th / k-th row and column, respectively. ...


In practice, Givens rotations are not actually performed by building a whole matrix and doing a matrix multiplication. A Givens rotation procedure is used instead which does the equivalent of the sparse Givens matrix multiplication, without the extra work of handling the sparse elements. The Givens rotation procedure is useful in situations where only a relatively few off diagonal elements need to be zeroed, and is more easily parallelized than Householder transformations.


Example

Let us calculate the decomposition of

A = begin{pmatrix} 12 & -51 & 4  6 & 167 & -68  -4 & 24 & -41 end{pmatrix}.

First, we need to form a rotation matrix that will zero the lowermost left element, mathbf{a}_{31} = -4. We form this matrix using the Givens rotation method, and call the matrix G1. We will first rotate the vector (6, − 4), to point along the X axis. This vector has an angle theta = arctan({-4 over 6}). We create the orthogonal Givens rotation matrix, G1: In mathematics, a Givens rotation is a matrix of the form where c = cos(&#952;) and s = sin(&#952;) appear in the i-th / k-th row and column, respectively. ...

G_1 = begin{pmatrix} 1 & 0 & 0  0 & cos(theta) & sin(theta)  0 & -sin(theta) & cos(theta) end{pmatrix}
approx begin{pmatrix} 1 & 0 & 0  0 & 0.83205 & -0.55470  0 & 0.55470 & 0.83205 end{pmatrix}

And the result of G1A now has a zero in the mathbf{a}_{31} element.

G_1A approx begin{pmatrix} 12 & -51 & 4  7.21110 & 125.6396 & -33.83671  0 & 112.6041 & -71.83368 end{pmatrix}

We can similarly form Givens matrices G2 and G3, which will zero the sub-diagonal elements a21 and a32, forming a triangular matrix R. The orthogonal matrix QT is formed from the concatenation of all the Givens matrices QT = G3G2G1. Thus, we have G3G2G1A = QTA = R, and the QR decomposition is A = QR.


Connection to a determinant or a product of eigenvalues

We can use QR decomposition to find the absolute value of the determinant of a square matrix. Suppose a matrix is decomposed as A = QR. Then we have In algebra, a determinant is a function depending on n that associates a scalar, det(A), to every n×n square matrix A. The fundamental geometric meaning of a determinant is as the scale factor for volume when A is regarded as a linear transformation. ...

det(A)=det(Q)cdotdet(R).

Since Q is unitary, | det(Q) | = 1. Thus,

|det(A)|=|det(R)|=Big|prod_{i} r_{ii}Big|,

where rii are the entries on the diagonal of R.


Furthermore, because the determinant equals the product of the eigenvalues, we have

Big|prod_{i} r_{ii}Big|=Big|prod_{i} lambda_{i}Big|,

where λi are eigenvalues of A.


We can extend the above properties to non-square complex matrix A by introducing the definition of QR-decomposition for non-square complex matrix and replacing eigenvalues with singular values.


Suppose a QR decomposition for a non-square matrix A:

A = Q begin{pmatrix}ROend{pmatrix}, qquad Q^*Q = I,

where O is a zero matrix and Q is an unitary matrix.


From the properties of SVD and determinant of matrix, we have In linear algebra, the singular value decomposition (SVD) is an important factorization of a rectangular real or complex matrix, with several applications in signal processing and statistics. ...

Big|prod_{i} r_{ii}Big| = prod_{i} sigma_{i},

where σi are singular values of A.


Note that the singular values of A and R are identical, although the complex eigenvalues of them may be different. However, if A is square, it holds that

{prod_{i} sigma_{i}} = Big|{prod_{i} lambda_{i}}Big|.

In conclusion, QR decomposition can be used efficiently to calculate a product of eigenvalues or singular values of matrix.


See also

In mathematics, particularly in linear algebra and functional analysis, the polar decomposition of a matrix or linear operator is a factorization analogous to polar decomposition of a nonzero complex number z where r is the absolute value of z (a positive real number), and is the complex sign of z. ... In mathematics, particularly linear algebra and functional analysis, the spectral theorem is any of a number of results about linear operators or about matrices. ... In mathematics, particularly linear algebra and functional analysis, the spectral theorem is a collection of results about linear operators or about matrices. ...

References

  • Horn, Roger A. & Charles R. Johnson (1985), Matrix Analysis, Cambridge University Press, ISBN 0-521-38632-2. Section 2.8.
  • Stoer, Josef & Roland Bulirsch (2002), Introduction to Numerical Analysis (3rd ed.), Springer, ISBN 0-387-95452-X.

External links


  Results from FactBites:
 
QR decomposition - Wikipedia, the free encyclopedia (1112 words)
In linear algebra, the QR decomposition of a matrix is a decomposition of the matrix into an orthogonal and a triangular matrix.
The QR decomposition is also the basis for a particular eigenvalue algorithm, the QR algorithm.
A = R, and the QR decomposition is A = QR.
NMath Matrix User's Guide - 5.1 QR Decompositions (607 words)
A QR decomposition is a representation of a matrix A of the form:
Instances of the QR decomposition classes are constructed from general matrices of the appropriate datatype.
Once a QR decomposition object has been constructed from a matrix, various read-only properties are provided for retrieving the elements of the decomposition, and for retrieving information about the original matrix:
  More results at FactBites »


 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments
Please enter the 5-letter protection code

Want to know more?
Search encyclopedia, statistics and forums:

 


Lesson Plans | Student Area | Student FAQ | Reviews | Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms.