BÀI GIẢNG MATLAB - Trang 57

50

>> Q*Q'
ans =

1.0000 -0.0000 -0.0000
-0.0000 1.0000 -0.0000
-0.0000 -0.0000 1.0000

>> inv(Q)-Q'
ans =
1.0e-015 *

0 0 0
-0.0833 0.1110 -0.0555
0.1110 -0.1066 -0.2220

Phân tích SVD (Singular Value Decomposition)

Phân tích SVD là biểu diễn ma trận

A

cỡ

m

n

×

dạng tích các ma trận

T

=

A

USV

với

U

là ma trận trực giao cỡ

m

m

×

,

V

là ma trận trực giao cỡ

n

n

×

, và

S

ma trận thực cỡ

m

n

×

có dạng đường chéo chứa các giá trị kỳ dị (singular values)

của

A

theo trật tự từ lớn ñến bé. Đó là các giá trị khai căn của các trị riêng của ma

trận

T

A A

.

Ví dụ

>> A = [1 2;2 3;3 5];
>> [U,S,V] = svd(A)
U =
-0.3092 0.7557 -0.5774
-0.4998 -0.6456 -0.5774
-0.8090 0.1100 0.5774
S =
7.2071 0
0 0.2403
0 0
V =
-0.5184 -0.8552
-0.8552 0.5184
>> err = U*S*V'-A
err =
1.0e-015 *

0 0.4441
0.8882 0.4441
0.8882 0