home
PDF

Review of similarity transformation and Singular Value Decomposition

Nasser M. Abbasi

Applied Mathematics Department, California State University, Fullerton. July 8 2007 page compiled on June 29, 2015 at 9:52pm

Contents

1 Similarity transformation
 1.1 Derivation of similarity transformation based on algebraic method
 1.2 Derivation of similarity transformation based on geometric method
  1.2.1 Finding matrix representation of linear transformationT
  1.2.2 Finding matrix representation of change of basis
  1.2.3 Examples of similarity transformation
  1.2.4 How to find the best basis to simplify the representation of T  ?
 1.3 Summary of similarity transformation
2 Singular value decomposition (SVD)
 2.1 What is right and left eigenvectors?
 2.2 SVD
3 Conclusion
4 References

1 Similarity transformation

A similarity transformation is

B = M  −1AM

Where B, A,M  are square matrices. The goal of similarity transformation is to find a B  matrix which has a simpler form than A  so that we can use B  in place of A  to ease some computational work. Lets set our goal in having B  be a diagonal matrix (a general diagonal form is called block diagonal or Jordan form, but here we are just looking at the case of B  being a diagonal matrix).

The question becomes: Given A  , can we find M  such that    −1
M    AM  is diagonal?

The standard method to show the above is via an algebraic method, which we show first. Next we show a geometric method that explains similarity transformation geometrically.

1.1 Derivation of similarity transformation based on algebraic method

Starting with

       −1
B = M    AM

Our goal is to find a real matrix B  such that it is diagonal.  From the above, by pre multiplying each side by M  we obtain

AM  =  M B

Now, since our goal is to make B  diagonal, let us select the eigenvalues of A  to be the diagonal of    B  . Now we write the above in expanded form as follows

⌊| a11  ⋅⋅⋅ a1n⌋| ⌊| m11   ⋅⋅⋅ m1n ⌋|    ⌊|m11   ⋅⋅⋅  m1n⌋| ⌊| λ1   0   0 ⌋|
|  ...   ...   ... | |  ...    ...    ... | =  |  ...   ...   ... | | 0   ...  0 |
⌈             ⌉ ⌈               ⌉    ⌈              ⌉ ⌈            ⌉
  an1  ⋅⋅⋅ ann    mn1   ⋅⋅⋅ mnn       mn1   ⋅⋅⋅ mnn     0    0   λn

The above can be written as n  separate equations by looking at the column view of matrix multiplication

⌊              ⌋ ⌊    ⌋      ⌊     ⌋
| a11  ⋅⋅⋅  a1n| |m11 |      | m11 |
|  ...   ...   ... | |  ... | =  λ1|  ...  |
⌈              ⌉ ⌈    ⌉      ⌈     ⌉
  an1  ⋅⋅⋅  ann   mn1          mn1

and

⌊              ⌋ ⌊    ⌋      ⌊     ⌋
| a11  ⋅⋅⋅  a1n| |m12 |      | m12 |
|  ...   ...   ... | |  ... | =  λ2|  ...  |
⌈              ⌉ ⌈    ⌉      ⌈     ⌉
  an1  ⋅⋅⋅  ann   mn2          mn2

all the way to the nth  column of M

⌊             ⌋ ⌊     ⌋      ⌊     ⌋
  a    ⋅⋅⋅ a      m            m
|  1.1        1n.| |   1.n|      |  .1n|
|⌈  ..   ...   ..|⌉ |⌈   .. |⌉ = λn |⌈  ..  |⌉

  an1  ⋅⋅⋅ ann    mnn          mnn

Each of the above n  equations is in the form

Ax  = λx

and this is the key idea.

The above shows that if we take the diagonal elements of B  to be the eigenvalues of A  then the  M  matrix is the (right) eigenvectors of A.

Hence, if we want the B  matrix to be diagonal and real, this means the A  matrix itself must have some conditions put on it. Specifically, A  eigenvalues must be all distinct and real. This happens when A  is real and symmetric. Therefore, we have the general result that given a matrix A  which has distinct and real eigenvalues, only then can we find a similar matrix to it which is real and diagonal, and these diagonal values are the eigenvalues of A  .

1.2 Derivation of similarity transformation based on geometric method

It turns out that this derivation is more complicated than the algebraic approach. It involves a change of basis matrix (which will be our M  matrix) and the representation of linear transformation T  as a matrix under some basis (which will be our A  matrix). Let us start from the beginning.

Given the vector x  in ℝn  , it can have many different representations (or coordinates) depending on which basis are used. There are an infinite number of basis that span   n
ℝ  , hence there are infinite representations for the same vector. Consider for example ℝ2   . The standard basis vectors are {[  ]  [ ]}
   1    0
      ,
   0    1 , but another basis are { [ ]  [  ]}
   1    0
      ,
   1    1 , and yet another are { [ ]  [   ] }
   1     0
      ,
   1    − 1 , and so on.

PIC

In ℝn  any n  linearly independent vectors can be used as basis. Let xv  be the vector representation in w.r.t. basis v  , and let x ′
  v be the vector representation w.r.t. basis v′ .

PIC

An important problem in linear algebra is to obtain xv  given xv ′ and the change of basis matrix [M  ]v′→v .

This requires finding a matrix representation for the change of basis. Once the [M ]v′→v  matrix is found, we can write

xv =  [M  ]v′→v xv ′
(1)

Where [M  ]v′→v  is the change of basis matrix which when applied to xv′ returns the coordinates of the vector w.r.t. basis v.

From (1) we see that given xv  , then to obtain xv′ we write

          −1
xv ′ = [M ]v′→vxv
(1A)

Another important problem is that of linear transformation T  , where now we apply some transformation on the whole space and we want to find what happens to the space coordinates (all the position vectors) due to this transformation.

Consider for example T  which is a rotation in ℝ2   by some angle 𝜃  . Here, every position vector in the space is affected by this rotation but the basis remain fixed, and we want to find the new coordinates of each point in space.  

Let xv  be the position vector before applying the linear transformation, and let yv  be the new position vector. Notice that both vectors are written with respect to the same basis v  . Similar to change basis, we want a way to find yv  from xv  , hence we need a way to represent this linear transformation by a matrix, say [T ]v  with respect to the basis v  and so we could write the following

yv =  [T ]v xv
(2)

PIC

Assume the basis is changed to v′ . Let the representation of the same linear transformation T  w.r.t. basis  ′
v be called [T]v′ , so we write

yv′ = [T ]v′ xv′
(2A)

PIC

Hence when the basis changes from v  to v′ , T  representation changes from [T]
   v  to [T] ′ .
   v

Now assume we are given some linear transformation T  and its representation [T]v  w.r.t. basis v  , how could we find T  representation [T ]v′ w.r.t. to new basis  ′
v ?

From (2) we have

yv =  [T ]v xv

But from (1) xv = [M ] ′  xv′
         v→v , hence the above becomes

y  = [T]  ([M ]′   x ′)
 v      v      v→v  v

Pre-multiplying from left the above equation by     −1
[M ]v′→v  we obtain

    −1          − 1
[M ]v′→vyv =  [M  ]v′→v[T ]v[M ]v′→vxv ′

But since [M  ]−v1′→vyv = yv ′ , then above reduces to

          −1
yv ′ = [M ]v′→v [T ]v[M ]v′→vxv′

But from (2A) yv′ = [T ]v′ xv′ , hence the above becomes

[T ]v′xv′ = [M ]−v1′→v [T]v[M ]v′→vxv ′

Therefore

[T]v′ = [M ]−v1′→v [T]v[M ]v′→v
(3)

Notice the difference between change of basis and linear transformation. In change of basis, the vector     x  remained fixed in space, but the basis changed, and we want to find the coordinates of the vector w.r.t the new basis. With linear transformation, the vector itself is changed from xv  to yv  , but both vectors are expressed w.r.t. the same basis.

Equation (3) allows us to obtain a new matrix representation of the linear transformation T  by expressing the same T  w.r.t. to different basis. Hence if we are given a representation of T  which is not the most optimal representation, we can, by change of basis, obtain a different representation of the same T  by using (3). The most optimal matrix representation for linear transformation is a diagonal matrix.

Equation (3) is called a similarity transformation.  To make it easier to compare (3) above with what we wrote in the previous section when we derived the above using an algebraic approach, we let [T ]v′ = B, [T ]v = A  , hence (3) is

B = M  −1AM

The matrix [T ]v′ is similar to [T]v  . (i.e. B  is similar to A )  . Both matrices represent the same linear transformation applied on the space. We will show below some examples of how to find [T]v′ given [T]v  and [M  ] . But first we show how to obtain matrix representation of T.

1.2.1 Finding matrix representation of linear transformationT

Given a vector       n
x ∈ ℝ  and some linear transformation (or a linear operator) T  that acts on the vector     x  transforming this vector into another vector y ∈ ℝn  according to some prescribed manner T  : x → y  . Examples of such linear transformation are rotation, elongation, compression, and reflection, and any combination of these operations, but it can not include the translation of the vector, since translation is not linear.

The question to answer here is how to write down a representation of this linear transformation? It turns out that T  can be represented by a matrix of size n × n  , and the actual numbers that go into the matrix, or the shape of the matrix, will depend on which basis in ℝn  we choose to represent x  .

We would like to pick some basis so that the final shape of the matrix is the most simple shape.

Let us pick a set of basis v = {e1,e2,⋅⋅⋅,en} that span  n
ℝ  hence

xv = a1e1 + a2e2 + ⋅⋅⋅ + anen

Now

T x  = T (a e +  a e +  ⋅⋅⋅ + a e )
   v       1 1    2 2         n  n

And since T  is linear we can rewrite the above as

T xv = a1T e1 + a2T e2 + ⋅⋅ ⋅ + anT en
(1)

We see from above that the new transformed vector Txv  has the same coordinates as xv  if we view     Tei  as the new basis.

Now Tei  itself is an application of the linear transformation but now it is being done on each basis vector ei  . Hence it will cause each specific basis vector to transform in some manner to a new vector. Whatever this new vector is, we must be able to represent it in terms of the same basis vectors {e ,e ,⋅⋅ ⋅,e },
  1   2      n  therefore, we write

T e1 = ξ11e1 + ξ21e2 + ⋅⋅⋅ + ξn1en

Where ξij  is the  th
i  coordinate of the vector T ej

And we do the same for Te2

T e2 = ξ12e1 + ξ22e2 + ⋅⋅⋅ + ξn2en

and so on until

Te  =  ξ e  + ξ  e  + ⋅⋅⋅ + ξ e
   n    1n  1   2n 2         nn  n

Or

Tej = ξijei

Now plug the above into (1) and obtain

pict

Hence, if we take the ei  as common factors, we have

pict

Hence, since T xv = a1T e1 + a2Te2 + ⋅⋅⋅ + anT en  from (1), then by comparing coefficients of each basis vector ei  we obtain

pict

Or in matrix form

  (   )    (                  )  (   )
  | a1|    | ξ11  ξ12  ⋅⋅⋅ ξ1n|  | a1|
  | a2|    | ξ21  ξ22  ⋅⋅⋅ ξ2n|  | a2|
T ||  .||  = ||  .    .        . ||  || . ||
  |(  ..|)    |(  ..    ..   ⋅⋅⋅  .. |)  |( .. |)

    an       ξn1  ξn2  ⋅⋅⋅ ξnn     an

Hence we finally obtain that

            (                  )
              ξ11  ξ12  ⋅⋅⋅  ξ1n
            ||                  ||
T ⇒  [T ] =  || ξ21  ξ22  ⋅⋅⋅  ξ2n||
        v   |  ...    ...  ⋅⋅⋅   ... |
            (                  )
              ξn1 ξn2  ⋅⋅⋅  ξnn

Let us call the matrix that represents T  under basis v  as [T] .
   v

We see from the above that the  th
j  column of [T ]v  contain the coordinates of the vector T ej  . This gives us a quick way to construct [T]v  : Apply T  to each basis vector ej  , and take the resulting vector and place it in the jth  column of [T ]v  .

We now see that [T ]
   v  will have a different numerical values if the basis used to span ℝn  are different from the ones used to obtain the above [T ]v .

Let use pick some new basis, say   ′    ′   ′      ′
v  = {e1,e 2,⋅⋅⋅ ,en} . Let the new representation of T  now be the matrix [T ]v′ , then the jth  column of [T]v′ is found from applying T  on the new basis e′j

Te ′j = ζije′i

Where now ζij  is the  th
i  coordinates of the the vector    ′
T ej  which will be different from ξij  since in one case we used the basis set  ′     ′
v =  {ei} and in the other case we used the basis set v = {ei} . Hence we see that [T ]v′ will numerically be different depending on the basis used to span the space even though the linear transformation T  itself did not change.

1.2.2 Finding matrix representation of change of basis

Now we show how to determine [M ]v→v′ , the matrix which when applied to a vector xv  will result in the vector xv′.

Given a vector x  , it is represented w.r.t. basis v = {e1,e2,⋅⋅⋅,en} as

xv = a1e1 + a2e2 + ⋅⋅⋅ + anen

and w.r.t. basis v ′ = {e′,e ′,⋅⋅⋅,e ′}
       1   2      n as

x ′ = be ′+ b e′ + ⋅⋅⋅ + b e ′
 v     1 1   2 2         n  n

PIC

But the vector itself is invariant under any change of basis, hence xv =  xv′

a1e1 + a2e2 + ⋅⋅⋅ + anen = b1e′ + b2e′+ ⋅⋅⋅ + bne′
                              1      2           n
(1)

Now write each basis e′i  in terms of the basis ej  , hence we have

pict

Substitute (2) into RHS of (1) we obtain

pict

Factor out the basis ei  from the RHS, we obtain

pict

hence

pict

Now comparing coefficients of each of the basis ei  we obtain the following result

pict

or in Matrix form, we write

⌊   ⌋   ⌊                       ⌋ ⌊  ⌋
| a1|   | c11  c21  c31  ⋅⋅⋅  cn1| |b1|
| a2|   | c12  c22  c32  ⋅⋅⋅  cn2| |b2|
|| . || = ||  .            .     . || || .||
|⌈ .. |⌉   |⌈  ..   ⋅⋅⋅ ⋅⋅⋅   ..   .. |⌉ |⌈ ..|⌉

 an       c1n c2n  c3n  ⋅⋅⋅  cnn   bn
(3)

The above gives a relation between the coordinates of the vector x  w.r.t. basis v  (these are the ai  coordinates) to the coordinates of the same vector w.r.t. to basis v′ (these are the coordinates b
 j  ). The mapping between these coordinates is the matrix shown above which we call the [M  ]  matrix. Since the above matrix returns the coordinates of the vector w.r.t. v  when it is multiplied by the coordinates of the vector w.r.t. basis v′ , we write it as [M  ]v′→v  to make it clear from which basis to which basis is the conversion taking place.

Looking at (2) and (3) above, we see that column j  in [M ]
    v′→v  is the coordinates of the e′
 j  w.r.t. basis v  .

Hence the above gives a method to generate the change of basis matrix [M ]v′→v  . Simply represent each basis in v ′ w.r.t. to basis v  . Take the result of each such representation and write it as a column in [M  ]′
   v →v . We now show few examples to illustrate this.

Example showing how to find change of basis matrix

Given the   2
ℝ   basis                { [ ]  [ ] }
                  1    0
v = {e1, e2} =    0  , 1 ,

and new basis                { [ ]  [   ] }
 ′     ′  ′       1     − 1
v =  {e1,e2} =       ,
                  1     1 , find the change of basis matrix [M  ]v→v ′

Column 1 of [M  ]v→v ′ is the coordinates of e1   w.r.t. basis v′ . i.e.

e =  c e ′+ c  e′
 1    11  1   21 2
(4)

and column 2 of [M  ]v→v ′ is the coordinates of e2   w.r.t. basis v′ . i.e.

         ′      ′
e2 = c12e 1 + c22e2
(5)

But (4) is

[ ]       [ ]      [   ]
 1         1         − 1
    =  c11     + c21
 0         1         1

Hence

1 = c  − c
     11   21   and 0 =  c  + c
      11    21   , solving, we obtain c  =  1,c  =  −1-
 11   2  21   2

and (5) is

[ ]       [ ]      [   ]
 0  =  c   1  + c    − 1
 1     12  1     22  1

Hence 0 = c12 − c22   and 1 = c12 + c22   , solving we obtain       1
c12 = 2   ,       1
c22 = 2   , hence

          [  1  1]
             2  2
[M  ]v→v ′ =  −1- 1
             2  2

Now we can use the above change of basis matrix to find coordinates of the vector under v′ given its coordinates under v  . For example, given      [   ]
      10
xv =
       5 , then

      [      ] [  ]    [     ]
        1   1   10       7.5
xv ′ =  2−1- 21       =
        2   2    5      − 2.5

1.2.3 Examples of similarity transformation
Example 1  This example from Strang book (Linear Algebra and its applications, 4th edition), but shown here with little more details. Consider   2
ℝ   , and let T  be the projection onto a line at angle         0
𝜃 =  135   . Let the first basis     { [  ] [  ]}
        1    0
v =       ,
        0    1 and let the second basis      { [   ]  [ ] }
         1     1
v ′ =        ,
        − 1    1 .

PIC

The first step is to find [M ]v′→v

The first column of [M ] ′
    v→v  is found by writing e′1   w.r.t. basis v  , and the second column of [M ] ′
    v→v  is found by writing e′
 2   w.r.t. basis v  ,

Hence

pict

or 1 = c11   and c21 = − 1

And

pict

Hence c12 = 1  and c22 = 1

Hence

          [      ]
            1   1
[M  ]v′→v =
            − 1 1

Now we need to find [T ]
   v  the representation of T  w.r.t. basis v

The first column of [T ]
   v  is the new coordinates of the basis v
 1   after applying T  onto it. but

pict

and the second column of [T ]v  is the new coordinates of the basis v2   after applying T  onto it. but

pict

Hence

       [           ]
         0.5   − 0.5
[T]v =
        − 0.5  0.5

Therefore

pict

Hence we see that the linear transformation T  is represented as [     ]
  1  0
  0  0 w.r.t. basis v′ , while it is represented as [ 0−. 05.5  −00..55] w.r.t. basis v′ . Therefore, it will be better to perform all calculations involving this linear transformation under basis v′ instead of basis v

Example 2 

PIC

Consider   2
ℝ   , and let T  be a rotation of space by     π
𝜃 = 4   . Let the first basis     { [ ]  [ ] }
       1    0
v =       ,
       0    1 and let the second basis be      {[  ]  [   ]}
        1    − 1
v′ =       ,
        1     1 .

The first step is to find [M ]v′→v

The first column of [M ] ′
    v→v  is found by writing e′
 1   w.r.t. basis v  , and the second column of [M ] ′
    v→v  is found by writing e′
 2   w.r.t. basis v  ,

Hence

pict

or 1 = c11   and c21 = 1  and

pict

Hence c12 = − 1  and c22 = 1

Hence

          [      ]
            1  − 1
[M  ]v′→v =
            1  1

Now we need to find [T]v  the representation of T  w.r.t. basis v  . The first column of [T ]v  is the new coordinates of the basis v1   after applying T  onto it. but

pict

and the second column of [T ]
   v  is the new coordinates of the basis v
 2   after applying T  onto it. but

pict

Hence

pict

Therefore

pict

Hence we see that the linear transformation T  is represented as [         ]
  1√-- − √1-
   2     2
  1√2-  √12- w.r.t. basis v′ , while it is represented as [ 1--   -1]
  √2  − √2
  1√--  √1-
   2     2 w.r.t. basis v′ . Therefore the change of basis selected above did not result in making the representation of T  any simpler (in fact there was no change in the representation).  This means we need to find a more direct method of finding the basis under which T  has the simplest representation. Clearly we can't just keep trying different basis to find if T  has simpler representation under the new basis.

1.2.4 How to find the best basis to simplify the representation of T  ?

Our goal of simpler representation of T  is that of a diagonal matrix or as close as possible to being diagonal matrix (i.e. Jordan form). Given [T]
   v  and an infinite number of basis v′ that we could select to represent       T  under in the hope we can find a new representation [T ]v′ such that it is simpler than [T ]v  , we now ask, how does one go about finding such basis?

It turns out the if we select the eigenvectors of [T]v  as the columns of [M ]v′→v  , this will result in [T ]v′ being diagonal or as close to being diagonal as possible (block diagonal or Jordan form).

Let us apply this to the second example in the previous section. In that example, we had

       [√1-    1√-]
[T] =     2  −  2
   v    √1-   √1-
          2    2

The eigenvectors of [T]
   v  are [   ]
 − i

  1 and [  ]
  i

  1 ,            [      ]
            − i  i
[M ] ′   =
    v→v      1   1

Therefore

pict

Which is diagonal representation.

Hence we see that the linear transformation T  is represented as [(      ) √ --            ]
   1−  1i   2       0
   2   2       (1   1 )√ --
       0        2 + 2i   2 w.r.t. basis v′

1.3 Summary of similarity transformation

To obtain         −1
B  = M    AM  such that B  is real and diagonal requires that A  be real and symmetric. The eigenvalues of A  goes into the diagonal of B  and the eigenvectors of A  go into the columns of M.  This is an algebraic view.

Geometrically, A  is viewed as the matrix representation under some basis v  of a linear transformation T  . And B  is the matrix representation of the same linear transformation T  but now under a new basis      v′ and M  is the matrix that represents the change of basis from  ′
v to v  .

The question then immediately arise: If A  must be real and symmetric (for B  to be real and diagonal), what does this mean in terms of the linear transformation T  and change of basis matrix M  ? This clearly mean that, under some basis v  , not every linear transformation represented by A  can have a similar matrix B  which is real and diagonal. Only those linear transformations which result in real and symmetric representation can have a similar matrix which is real and diagonal. This is shown in the previous examples, where we saw that T  defined as rotation by   0
45   under the standard basis      {[  ]  [ ]}
        1    0
v =        ,
        0    1 resulted in      [         ]
      √1- − √1-
A =    12   1 2
      √2-   √2- and since this is not symmetric, hence we will not be able to factor this matrix using similarity transformation to a diagonal matrix, no matter which change of basis we try to represent T  under. The question then, under a given basis v  what is the class of linear transformation which leads to a matrix representation that is symmetric? One such example was shown above which is the projection into the line at    0
135   . This question needs more time to look into.

We now write Λ  to represent a diagonal matrix, hence the similarity transformation above can be written as

Λ = M  −1AM

or

           −1
A = M  ΛM

PIC

2 Singular value decomposition (SVD)

Using similarity transformation, we found that for a real and symmetric matrix A  we are able to decompose it as A =  M ΛM  −1   where Λ  is diagonal and contains the eigenvalues of A  on the diagonal, and M  contains the right eigenvectors of A  in its columns.

2.1 What is right and left eigenvectors?

Right eigenvectors are the standard eigenvectors we have been talking about all the time. When λ  is an eigenvalues of A  then x  is a right eigenvector when we write

Ax  = λx

However, x  is a left eigenvector of A  when we have

xH A  = λxH

where xH  is the Hermitian of x

2.2 SVD

Given any arbitrary matrix Am ×n  it can be factored into 3 matrices as follows Am ×n = Pm ×mDm  ×nQn ×n  where P  is a unitary matrix (P H = P −1   or P HP  = I  ), and Q  is also unitary matrix.

These are the steps to do SVD

1.
Find the rank of A  , say r
2.
Let B =  AHn×mAm  ×n  , hence Bn×n  is a square matrix, and it is semi positive definite, hence its eigenvalues will all be ≥ 0  . Find the eigenvalues of B  , call these σ2i  . There will be n  such eigenvalues since B  is of order n ×  n  . But only r  of these will be positive, and n − r  will be zero. Arrange these eigenvalues such that the first r  non-zero eigenvalues come first, followed by the zero eigenvalues:       n eigenvalues
◜---------◞◟----------◝
σ21,σ22,⋅⋅⋅,σ2r,0, 0,⋅⋅⋅,0
3.
Initialize matrix Dm ×n  to be all zeros. Take the the first r  eigenvalues from above (non-zero ones), and take the square root of each, hence we get r singular values
◜σ-,σ-◞,◟⋅⋅⋅,σ◝,
 1  2      r  and write these down the diagonal of D  starting at D (1,1)  , i.e. D  (1,1) = σ1,D (2,2) = σ2,⋅⋅⋅,D  (r,r ) = σr  . Notice that the matrix D  need not square matrix. Hence we can obtain an arrangement such as the following for r = 2
     (             )
       σ1   0  0  0
     |             |
D  = |(  0  σ2  0  0|)
        0   0  0  0

where the matrix A  was 3 × 4  for example.

4.
Now find each eigenvalue of AH A  . For each eigenvalue, find the corresponding eigenvector. Call these eigenvectors u1,u2, ⋅⋅⋅,un  .
5.
Normalize the eigenvectors found in the above step. Now u1,u2, ⋅⋅⋅,un  eigenvector will be an orthonormal set of vectors. Take the Hermitian of each eigenvector uH1 ,uH2 ,⋅⋅⋅,uHn  and make one of these vectors (now in row format instead of column format) go into a row in the matrix Q.  i.e. the first row of Q  will be   H
u 1   , the second row of Q  will be  H
u2   , etc...                                                                                   ⌊     ⌋
                                                                                    uT1
                                                                                  ||   T ||
                                                                                  || u 2 ||
                                  (               ortho basis (n- r) for N(A))         |   ... |
(  H  )    find eigenvectors and normalize{                ◜----◞◟----◝   }             ||     ||
 A  A  n×n           →            (u1, u2, ⋅⋅⋅,ur,   ur+1, ⋅⋅⋅,un   )  →  Qn ×n = || uTr ||
                                                                                  | uT  |
                                                                                  ||  r+1||
                                                                                  |⌈   ... |⌉
                                                                                      T
                                                                                    u n
6.
Now we need to find a set of m  orthonormal vectors, these will be the columns of the matrix P  : find a set of r  orthonormal eigenvector      -1
vi = σiAui  , for i = 1⋅⋅⋅r  . Notice that here we only use the first r  vectors found in step 5. Take each one of these vi  vectors and make them into columns of P  . But since we need m  columns in P  not just r  , we need to come up with m  − r  more basis vectors such that all the m  vectors form an orthonormal set of basis vectors for the row space of A  , i.e. ℂm  . If doing this by hand, it is easy to find the this m  − r  by inspection. In a program, we could use the same process we used with Gram-Schmidt, where we learned how find a new vector which is orthonormal to a an existing set of other vectors. Another way to find the matrix P  is to construct the matrix AAH  and find its eigenvectors, those go into the columns of the matrix P  as follows                                    {orthonormal basis for-range A          }              [                              ]
(AAH  )     find eigenvecto→rs and normalize    ◜v1,v2,◞◟⋅⋅⋅,v◝r    ,vr+1, ⋅⋅⋅,vm   →  Pm ×m =   v   v   ⋅⋅⋅  v   v     ⋅⋅⋅ v
       m ×m                                                                             1   2        r   r+1        m
7.
This completes the factorization, now we have A =  P D  Q

The following diagram help illustrate the SVD process described above.

PIC

3 Conclusion

As a conclusion, the following diagram shows the difference between similarity transformation factorization of a matrix and SVD.

PIC

Trying to understand SVD from geometrical point view requires more time, and this is left for future research into this subject.

4 References

1.
Linear Algebra and its applications 4th edition by Gilbert Strang
2.
Course notes, Linear Algebra, Math 307, CSUF mathematics department, spring 2007 by Dr Angel Pineda.
3.
Principles and techniques of applied Mathematics by Bernard Friedman, Spectral theory of operators chapter.
4.
Matrix computation, 3rd edition by Gene Golub and Charles Van Loan.
5.
Numerical analysis: Mathematics of scientific computing, by David Kincaid and Ward Cheney.