Theorem. Given a symmetric matrix A∈Rn×n that is positive semi-definitive, there exists an orthogonal matrix V∈Rn×n, and a diagonal matrix Σ∈Rn×n with all entries non-negative, such that
A=VΣVT.
We need the following fact for the proof.
Fact. If a function f:S→R is continuous on a closed set S, then it achieves maximum value at some point of S.
Proof.
Consider the maximization problem:
maxs.t.21xTAxxTx=1
Question to ponder: Explain the geometric meaning of the term xTAx.
The corresponding Lagrange function is given by
L(x,λ)=21xTAx−λ(xTx−1)
Taking derivative with respect to x gives
∂x∂L=Ax−λx.
Existence of maximum solution:
Note that {x:xTx=1} is defined the boundary of the unit cycle, which is a closed set.
Combined with the fact that f≐(1/2)⋅xTAx is a continuous function (with respect to x), it takes its maximum value at some point in {x:xTx=1}.
Denote this point v1∈{x:xTx=1}.
Gradient at the maximum point: At this point, it holds that
∂x∂L∣x=v1=Av1−λv1=0,
which implies that v1 is an eigenvector of A.
Denote its corresponding eigenvalue λ1.
Question to ponder: Prove that λ1 is the largest eigenvalue.
After finding v1, consider a new optimization problem:
maxs.t.21xTAxxTx=1v1Tx=0
That is, we want to find a new unit vector that is orthogonal to v1 while maximizing 21xTAx.
Existence of maximum solution. By the lemma and the facts:
{x:xTx=1}∩{x:v1Tx=0} is closed.
21xTAx is continuous.
Denote this maximum point v2. Now consider the new Lagrange function for the optimization
L(x,λ)=21xTAx−λ(xTx−1)−β(v1Tx−0).
Gradient at the maximum point: At this point, it holds that
where v1TA=(Av1)T follows from the symmetry of A, i.e., A=AT.
Therefore,
Av2−λv2=0.
It follows that v2 is an eigenvector of A. Denote its associated eigenvalue λ2.
In a similar manner, we can define
maxs.t.21xTAxxTx=1v1Tx=0v2Tx=0
There exists an optimal point v3. The derivative of Lagrange function at this point is
∂x∂L∣x=v3=Av3−λv3−β1v1−β2v2=0,
for some parameters λ,β1,β2.
Left multiplying v1T or v2T gives β1=0 and β2=0 so that v3 is an eigenvector of A.
Following the procedure, we can find n eigenvectors v1,v2,…,vn of A.
Define
Σ=λ1λ2…λn,V=[v1,v2,…,vn].
Then
AV=VΣ.
Hence,
A=VΣV−1=VΣVT.
□
Singular Vector Decomposition
In general, a matrix A∈Rm×n is considered a linear mapping from Rn to Rm.
It takes a vector x∈Rn to a new one Ax∈Rm.
We are interested in the following question.
Is there a vector x, whose length ratio,
x∈Rnmax∥x∥∥Ax∥,
is maximized by the mapping?
As ∥x∥ is a number,
∥x∥∥Ax∥=A∥x∥x.
Hence, it suffices to consider unit vectors, and the following optimization problem:
maxs.t.21xTATAxxTx=1.
In this case, the objective function is 0.5⋅∥Ax∥2=0.5⋅(Ax)T(Ax)=0.5⋅xTATAx.
Following similar process of previous section, we can find a set of eigenvectors v1,v2,…,vn of ATA. Define U∈Rm×n
U=AVΣ−1=AV1/λ11/λ2…1/λn.
Then UΣVT=A, which is called the singular vector decomposition of A.
Finally, we can verify that the columns of U are perpendicular: ∀i=j,i,j∈[n],