STAT 3690 Lecture 02
Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit
STAT 3690 Lecture 02
2022
Eigendecomposition
● A is a real square n × n matrix
● Characteristic equation of A: det(λIn _ A) = 0, with identity matrix I
● Eigenvalues of A, say λ l > . . . > λn : n roots of characteristic equation are
● (Right) eigenvector vi : Avi = λi vi
● Eigendecomposition: A = vAv- l
- v = [vl , . . . , vn] and A = diag(λl , . . . , λn ) are both n × n matrices
● Implementation in R : eigen()
Spectral decomposition
● A is a real symmetric square n × n matrix
● Then v is orthogonal, i.e., vT v = vvT = I and vT = v- l
● Spectral decomposition : A = vAvT
Singular value decomposition (SVD)
● Consider a general real n × p matrix B
● But, obviously, BT B and BBT are both symmetric and square
- They have identical non-zero eigenvalues
- They are even positive semi-definite, i.e., their eigenvalues are non-nagative
● Then BBT = Un×nIn×nUn(T)×n and BT B = wp×pAp×pwp(T)×p
- U and w are both orthogonal
● SVD:
B = Un×nsn×pwp(T)×p = sll ul w l(T) +. . . +srr ur w r(T)
- Singular values sii is the ith diagonal entry of sn×p
- sll > . . . > srr > 0 are square roots of non-zero eigenvalues of BT B and BBT
- ui (resp. wi ) is the ith column of Un ×n (resp. wp×p)
- r is the rank of diagonal sn×p
● Thin/compact SVD
- Implementation in R : svd()
● Exercise: Is it feasible to apply eigen() only in conducting the thin SVD for a matrix with non-negative singular values (λi ’s)?
options(digits = 4) # control the number of significant digits
set.seed(1)
A = matrix(runif(12), nrow = 2 , ncol = 6)
svdResult = svd (A)
eigenResult = eigen(tcrossprod(A))
# respective set of eigenvalues from each method
svdResult$d; eigenResult$values ˆ .5
# respective eigenvectors from each method
svdResult$u; eigenResult$vectors
# respective eigenvectors from each method
svdResult$v; t(diag(eigenResult$values ˆ- .5) %*% t(eigenResult$vectors) %*% A)
2022-03-17