next up previous


Algorithm of Singular Value Decomposition


Algorithm 3.3.1. To find the singular value decomposition of the matrix tex2html_wrap_inline7037 one has to:
I Find the eigenvalues of the matrix ATA and arrange them in descending order.
II Find the number of nonzero eigenvalues of the matrix ATA.
III Find the orthogonal eigenvectors of the matrix ATA corresponding to the obtained eigenvalues, and arrange them in the same order to form the column-vectors of the matrix tex2html_wrap_inline7825.
IV Form a diagonal matrix tex2html_wrap_inline7935 placing on the leading diagonal of it the square roots tex2html_wrap_inline7937 of tex2html_wrap_inline7735 first eigenvalues of the matrix ATA got in I in descending order.
V Find the first column-vectors of the matrix tex2html_wrap_inline7821:
 equation2159

VI Add to the matrix U the rest of m-r vectors using the Gram-Schmidt orthogonalization process. tex2html_wrap_inline7949

Example 3.3.1. Let us find the singular value decomposition of the matrix
displaymath7855
I Find the eigenvalues of the matrix tex2html_wrap_inline7951 :
tex2html_wrap_inline7953
II Find the number of nonzero eigenvalues of the matrix ATA: r=2.
III Find the orthonormal eigenvectors of the matrix ATA corresponding to the eigenvalues tex2html_wrap_inline7963 and tex2html_wrap_inline7965:
tex2html_wrap_inline7967 and tex2html_wrap_inline7969 forming a matrix
displaymath7856

IV Find the singular value matrix tex2html_wrap_inline7971
displaymath7857
on the leading diagonal of which are the square roots of the eigenvalues of the matrix ATA (in descending order) and the rest of the entries of the matrix tex2html_wrap_inline7731 are zeros.
V Find the first two column-vectors of the matrix tex2html_wrap_inline7977 using the formula (9)
displaymath7858
and
displaymath7859
VI To find the vector tex2html_wrap_inline7979 we shall first find, applying the Gram-Schmitd process, a vector tex2html_wrap_inline7981 perpendicular to tex2html_wrap_inline7983 and tex2html_wrap_inline7985:
displaymath7860
Norming the vector tex2html_wrap_inline7987 we get
displaymath7861
Hence
displaymath7862
and the singular value decomposition of the matrix A is

displaymath7863

Example 3.3.2. Let us find the singular value decomposition of the matrix tex2html_wrap_inline7991.
I Find the eigenvalues of the matrix ATA:
displaymath7864
II Find the number of the nonzero eigenvalues of the matrix ATA: r=1.
III Find the eigenvector of the matrix ATA:
displaymath7865

displaymath7866
Since the eigenvalue 0 is multiple, the Gram-Schmidt orthogonalization process is used to find the vector tex2html_wrap_inline8001. We compile the orthonormal matrix V:
displaymath7867
IV Form the singular value matrix:
displaymath7868
V Calculate the unique column-vector of the matrix U applying the formula (9):
displaymath7869
Thus the singular value decomposition of the matrix A is

displaymath7870

Example 3.3.3.* Let us find the singular value decomposition of the matrix
displaymath7871
The given tex2html_wrap_inline8011 matrix A has utterly three nonzero singular values. Therefore it is suitable to find nonzero singular values of the matrix A using the tex2html_wrap_inline8017 matrix AAT (not the tex2html_wrap_inline7051 matrix ATA). Since
displaymath7872
then the characteristic equation of AAT is
displaymath7873
or
displaymath7874
and the solutions of this equation are tex2html_wrap_inline8027 and tex2html_wrap_inline8029 Since tex2html_wrap_inline8031 and the matrix tex2html_wrap_inline7731 is a tex2html_wrap_inline8011 matrix, then on the leading diagonal of the matrix tex2html_wrap_inline7731 there are the singular values of the matrix A in descending order, and all other elements of the matrix tex2html_wrap_inline7731 are zeros:
displaymath7875
The matrix U has for column-vectors the orthonormed eigenvectors of the matrix AAT:
displaymath7876

displaymath7877

displaymath7878
Collecting the vectors tex2html_wrap_inline8047 and tex2html_wrap_inline8049 we obtain the matrix
displaymath7879
According to the relation (6), we shall find the first three column-vectors of the matrix V (the matrix tex2html_wrap_inline7731 has on its leading diagonal three nonzero entries) using the formula
displaymath7880
Hence
displaymath7881
To calculate the vector tex2html_wrap_inline8055, we find first, using the Gram-Schmitd orthogonalization process, the vector tex2html_wrap_inline8057 perpendicular to the vectors tex2html_wrap_inline8059 tex2html_wrap_inline8061 and tex2html_wrap_inline8001:
displaymath7882

displaymath7883
Since tex2html_wrap_inline8065 then
displaymath7884
and
displaymath7885
Let us check the result:
displaymath7886

displaymath7887
and
displaymath7888
:

displaymath7889

Problem 3.3.1.* Applying the singular value decomposition of the matrix A got in example 3.3.3, find the bases of the subspace of the column-vectors tex2html_wrap_inline8071 the right null space tex2html_wrap_inline8073 the subspace of the row-vectors tex2html_wrap_inline8075, and the left null space tex2html_wrap_inline8077 of the matrix A.

Problem 3.3.2.* Find the singular value decomposition and the QR factorization of the matrix tex2html_wrap_inline8085.

Problem 3.3.3.* Find the singular value decomposition of the matrix tex2html_wrap_inline8089.


next up previous