Numeryczne metody obliczeń technicznych

Transkrypt

Numeryczne metody obliczeń technicznych
Numeryczne metody obliczeń technicznych
Wykład VII
Wartości i wektory własne
Wartości osobliwe i dekompozycja SVD
• Zastosowania w technice i obliczeniach numerycznych
• Zadanie wyznaczenia wartości i wektorów własnych
• Klasyfikacja zagadnień własnych - przypadki szczególne
• Wprowadzenie do metod rozwiązania zadania, dekompoz. QR
• Dekompozycja SVD i rozwiązywanie układów nadokreślonych
Katedra Metrologii AGH
Kraków 2005
Numeryczne metody obliczeń technicznych
Zastosowania analizy własnej w technice i obliczeniach numerycznych
Sprowadzanie problemu z zależnościami wzajemnymi do problemu niezależnego (opis systemów
dynamicznych, structure analysis), dekorelacja informacji (zobacz przykłady dalej)
Wydzielanie składowych nieskorelowanych - KLT - Karhunen-Loeve Transform,
redukcja wymiarowości opisu danych przez pominięcie najmniej istotnych elementów związanych
z najmniejszymi wartościami własnymi - PCA - Principal Component Analysis
Selekcja i ekstrakcja najistotniejszych (najbardziej różnicujących) cech w klasyfikacji, np.
rozpoznawaniu kształtów – liter, twarzy, sygnałów, zmian zwyrodnieniowych na zdjęciach
rentgenowskich, automatycznym rozpoznawaniu celu na polu walki (zobacz przykład dalej)
Optymalny kształt sygnałów transmitowanych przez dyspersyjny kanał w telekomunikacji
(eigenfilter), wyznaczanie optymalnego korektora linii transmisyjnej z formy kwadratowej
(Rayleigh quotient), dodawanie cyklicznego prefiksu w modemach ADSL dla uzyskania macierzy
splotowej linii z wektorami własnymi równymi wierszom FFT (zobacz przykład dalej)
Wskaźnik uwarunkowania układu równań liniowych (κ = λmax λmin ), podobnie sztywność układu
dynamicznego opisanego równaniem stanu z macierzą A.
Katedra Metrologii AGH
Kraków 2005
Numeryczne metody obliczeń technicznych
Zadanie wyznaczenia wartości i wektorów własnych
Podstawowe sformułowanie zagadnienia własnego ma postać:
Ax = λ x
czyli poszukiwane są takie wartości wektora x (nazywane wektorami własnymi p), dla których
transformacja przez macierz A ma skutek identyczny jak skalowanie przez stałą (nazywane
wartościami własnymi λ).
Jest to równoważne homogenicznemu układowi równań ze względu na λ i x :
( A − λI ) x = 0
który ma nietrywialne rozwiązanie x ≠ 0 tylko wtedy, gdy:
det ( A − λ I ) = 0
W ten sposób otrzymujemy pierwszy, mało praktyczny, sposób numerycznego obliczania wartości
własnych poprzez wyznaczanie wielomianu charakterystycznego macierzy i poszukiwanie miejsc
zerowych tego wielomianu. Taki algorytm ma złożoność N! i dodatkowo wspominane już
(pierwszy wykład) złe uwarunkowanie.
Zapisując problem macierzowo (zbiorczo dla wszystkich wartości własnych) poszukujemy
dekompozycji macierzy na składowe P (zawiera wektory własne pi w kolumnach) i D (diagonalna
z wartościami własnymi λi na diagonali) dla której zachodzi:
AP = PD
lub inaczej
A = PDP −1
Katedra Metrologii AGH
Kraków 2005
Numeryczne metody obliczeń technicznych
Niektóre ważne własności wartości i wektorów własnych
Macierz o wymiarach NxN ma co najwyżej N różnych wektorów własnych i skojarzonych z nimi
wartości własnych.
Wektory własne wyznaczają tylko kierunki i mogą mieć dowolną długość. Zazwyczaj normuje się
je do długości 1 dla jednoznacznej reprezentacji.
Wartości własne mogą być rzeczywiste lub zespolone. Zbiór wartości własnych jest nazywany
widmem macierzy.
Wektory własne dla różnych wartości własnych są liniowo niezależne.
Macierze hermitowskie (tj. macierze zespolone dla których AH = A ) mają wartości własne
rzeczywiste.
Szczególny przypadek macierzy hermitowskiej – macierz rzeczywista symetryczna ma wartości
własne rzeczywiste i wektory własne ortogonalne dla różnych wartości własnych (wtedy P −1 = PT i
A = PDPT ). Macierz rzeczywista symetryczna dodatnio określona ma dodatnie wartości własne.
Wyznacznik macierzy jest równy iloczynowi jej wartości własnych.
Katedra Metrologii AGH
Kraków 2005
Numeryczne metody obliczeń technicznych
Mnożenie macierz-wektor jako transformacja wektorowa, kierunki niezmiennicze
Operację macierzową y = Ax możemy interpretować jako transformację wektora x w wektor y.
Jeśli x będzie wektorem własnym A to efekt transformacji będzie taki sam jak mnożenie przez
skalar (czyli tylko skalowanie, zmiana długości wektora). Kierunek wskazywany przez wektor
własny jest więc kierunkiem niezmienniczym, nie ulega zmianie w wyniku transformacji.
Przykład: Kierunki niezmiennicze dla macierzy diagonalnej (tylko skalowanie)
Ponieważ A ma postać diagonalną wymaganą dla D to kierunki niezmiennicze (wskazywane przez
wektory własne) pokrywają się z kierunkami osi układu współrzędnych.
Interpretacja rozkładu na wartości/wektory własne w kategoriach składowych
Mając rozkład macierzy A (NxN) na wektory/wartości własne, tj. A = PDPT (niech dla prostoty
będzie macierz symetryczna) to możemy ostatnią równość zapisać w bardziej czytelnej postaci, bo
D jest diagonalna, a P ortogonalna:
N
A = ∑ λi pi pTi
i =1
gdzie pi to i-ty wektor własny (kolumna macierzy P).
Macierz A jest więc dekomponowana na macierze składowe o rzędzie 1 definiowane przez
poszczególne wektory własne i skalowane wartościami własnymi (Mercer’s or Spectral theorem)
Katedra Metrologii AGH
Kraków 2005
Numeryczne metody obliczeń technicznych
Przykład Wyznaczanie wartości/wektorów własnych macierzy równania stanu metodą
bezpośrednią i ich znaczenie dla dynamiki obiektu
Dla obiektu dynamicznego opisanego transmitancją drugiego rzędu dwuinercyjną (np. czujnik
temperatury w obudowie):
K
G (s) =
(1 + sT1 )(1 + sT2 )
Macierz A równania stanu determinująca własności dynamiczne obiektu ma zawartość:
1 ⎤
⎡ T1 + T2
−
−
⎛
T +T
1
1 ⎞⎛
1⎞
T1T2 ⎥
R ( λ ) = det [ A − λ I ] = λ 2 + 1 2 λ +
= ⎜λ + ⎟⎜λ + ⎟
A = ⎢ T1T2
⎢
⎥
T1T2
T1T2 ⎝
T1 ⎠ ⎝
T2 ⎠
1
0
⎣⎢
⎦⎥
1
1
T
T
Sprawdzenie w Symbolic Toolbox:
λ1 = − λ2 = −
p1 = [1 −T1 ] p2 = [1 −T2 ]
syms T1 T2
T1
T2
[P,D]=eig(1/(T1*T2)* [-(T1+T2), -1; T1*T2, 0])
1 ⎤ ⎡ − T11
⎢
−T2 ⎥⎦ ⎢⎣ 0
0 ⎤ ⎡ T1−−TT22 T1−−1T2 ⎤
⎥
⎥⎢
− T12 ⎥⎦ ⎢⎣ T1T−1T2 T1 −1T2 ⎥⎦
Równanie jednorodne x = Ax jest zastąpione rozprzężonym (decoupled) y = Dy , gdzie y = P −1x .
Rozwiązujemy łatwe równanie rozprzężone i przechodzimy na końcowe rozwiązanie przez x = Py .
⎡ 1
−1
Możemy zapisać dekompozycję: A = PDP = ⎢
⎣ −T1
Więcej informacji na ten temat znajdziesz np. w: Kaczorek T. „Macierze w Automatyce i Elektrotechnice”
Katedra Metrologii AGH
Kraków 2005
Numeryczne metody obliczeń technicznych
Przykład Dekorelacja informacji wektorowej
Załóżmy, że dysponujemy zbiorem rejestracji wektorowych, np. codziennymi pomiarami
temperatury z 5 lokalizacji w Polsce albo natężeniem procesów myślowych u 10 studentów w
okresie sesji (mierzone co 1 godzinę przez pomiar natężenia pola magnetycznego wokół głowy).
Łatwo możemy estymować macierz kowariancyjną Σ tych obserwacji (wymiar odpowiednio 5x5
albo 10x10). Jeśli elementy wektora są skorelowane (duże wartości poza diagonalą) to znaczy że w
obserwowanych zachowaniach są składowe wspólne. Jak wydzielić te składowe ?
x - wektor pojedynczej obserwacji (kolumnowy)
R = E ⎡⎣ xxT ⎤⎦ - macierz kowariancji w zbiorze obserwacji
Poszukujemy ortonormalnej transformacji nie zmieniającej wartości własnych (transformacja przez
podobieństwo), która wydzieli składowe nieskorelowane
R y = E ⎡⎣ yy T ⎤⎦ ≡ D , gdzie D jest diagonalna
y = TT x ,
Przekształcając
E ⎡⎣ yy T ⎤⎦ = E ⎡⎣TT xxT T ⎤⎦ = TT E ⎡⎣ xxT ⎤⎦ T = TT RT
Zrób to sam
Weź stereofonicznego WAVa,
wyznacz macierz kowariancji
kanałów (cov(ch1,ch2)), wydziel
składowe zdekorelowane, posłuchaj.
i przyrównując do diagonalnej D dostajemy
RT = TD
a więc warunek na macierz wektorów własnych.
Wniosek: transf. dekorelująca to rzutowanie na wektory własne macierzy kowariancyjnej (KLT)
Szerokie omówienie wartości własnych/osobliwych w S. Haykin „Modern Filters”, str. 261-348
Katedra Metrologii AGH
Kraków 2005
Numeryczne metody obliczeń technicznych
Przykład Jak narysować elipsę rozrzutu dwuelementowego wektora losowego ?
Ponieważ elipsa rozrzutu jest definiowana przez wyrażenie:
xT Σ −1x = r
a macierz kowariancyjną Σ (symetryczną) możemy zdekomponować na:
Σ = PDPT
czyli
Σ −1 = PD −1PT ,
lub
PT Σ −1P = D −1 .
−1 2
to z xT PD −1PT x = r podstawiając y = ( rD ) PT x uzyskujemy: y T y = 1
czyli wzór na okrąg o promieniu 1 w nowym „zdekorelowanym” (decoupled) układzie
współrzędnych. Po wyznaczeniu punktów elipsy w tym układzie wracamy do oryginalnego przez:
12
x = P ( rD ) y
1
>> S=[4 0.5;0.5 1], x=elipsa(S,1,100);
>> [P,D]=eig(S)
0
P = 0.1602
-0.9871
-0.9871
-0.1602
D = 0.9189
0
-1
0
4.0811
>> plot(x(1,:),x(2,:),'r',[-1.5:1.5],-[-1.5:1.5]*P(1,1)/P(2,1),'g', …
-2
-1
0
1
2
>> axis equal, grid on
function x = elipsa(S,r,n)
Związek macierzy wektorów własnych P
% Zwraca n punktow elipsy: x'*inv(S)*x=r
z macierzą rotacji lewoskrętnej o kąt ϕ :
% dla S (2x2) symetrycznej i +okreslonej
cos
ϕ
sin
ϕ
[P,D] = eig(S);
⎡
⎤
R=⎢
P = P*sqrt(r*D);
⎥
ϕ
ϕ
sin
cos
−
⎣
⎦
t = linspace(0,2*pi,n);
x = P* [cos(t); sin(t)];
Katedra Metrologii AGH
Kraków 2005
Numeryczne metody obliczeń technicznych
Przykład Ekstrakcja cech przy rozpoznawaniu kształtu sygnału
Zadanie: chcemy wybrać zestaw cech które najbardziej różnicują dwie klasy sygnałów, np. odgłos
wieloryba i łodzi podwodnej, dopuszczalny kształt napięcia sieciowego i przekraczającego normy,
portrety Myszki Miki i prezydenta Busha.
Podejście heurystyczne. Mając (c- ilość klas, N- rozmiar x, L-ilość danych do statystyk):
{
}
Σ w = mean ( Σi ) , Σi = cov [x i ] , Σb = mean ( µi − µ )( µi − µ ) , µ = mean ( µi ) , µi = mean ( x i )
i =1.. c
i =1.. c
T
i =1.. c
i =1.. L
definiujemy kryterium: J = trΣb trΣ w które opisuje uśrednioną odległość między klasami.
Im mniejsze rozrzuty w klasach tym większa wartość kryterium, podobnie im większy odstęp
między środkami klas. Poszukujemy transformaty S sygnału, która wydobędzie przez STx
pożądane cechy. Transformata modyfikuje kryterium do postaci J = trST ΣbS trST Σ wS
maksymalizowane przez optymalną transformację: Sopt = eigvect ( Σ w −1Σb )
Przykład (rysunek na tablicy):
µ1 ( n ) = sin (π Nn ) , µ2 ( n ) = sin (π
n
N
) + 0.33sin ( 3π Nn ) , n=1..N,
sygnały z szumem białym Σ1 = Σ2 = σ 2 I .
sopt = eig ⎡⎣ Σ −1 ( µ 2 − µ1 )⎤⎦ = N2 sin ( 3π Nn ) co rzeczywiście różni obie klasy sygnałów.
Zobacz np. Devijver P.A., Kittler J. “Pattern Recognition – a statistical approach”, Prentice Hall 1982.
Katedra Metrologii AGH
Kraków 2005
Numeryczne metody obliczeń technicznych
Przykład Transmisja danych w technologii ADSL
x
u G
y
n
T
c
R
b
F
h
Macierz splotowa linii po korekcji TEQ:
h0
⎡ hL
⎤
⎢
⎥
lin
⎥
C =⎢
⎢0
⎥
⎢
⎥
h
h
L
0⎦
⎣
E ^
u
u - parallel complex data (codes of QAM constellations)
G - modulator (IFFT WH)
T - guard interval addition (cyclic prefix)
c - fading transmission line
b - time domain equalizer (TEQ), FIR structure,
n - line noise
h - time equalized (shortened) line, FIR model.
R - guard interval discarding
F - demodulator (FFT W)
E - frequency domain equalizer (FEQ)
Wprowadzenie cyklicznego prefiksu (operacje T, R) powoduje
sprowadzenie macierzy splotowej linii transmisyjnej do postaci
cyrkulacyjnej, której wektory własne są wektorami FFT a wartości
własne są wartościami H=FFT(h) (korygowane przez FEQ).
1
W ⋅ C0cp ⋅ W H = D = diag H ( 0 ) , H ( 2Nπ ) ,…, H ( 2π (NN −1) )
N
Alternatywne wyjaśnienie z użyciem splotu kołowego.
(
Katedra Metrologii AGH
)
Clin
−1
Clin
0
Ccp
−1
C0cp
Kraków 2005
Numeryczne metody obliczeń technicznych
Klasyfikacja zagadnień własnych
Wyznaczanie zbioru wartości własnych jest nazywane analizą wartości własnych (eigenanalysis)
też analizą spektralną macierzy (matrix spectrum).
Wybór najdogodniejszej metody rozwiązania zagadnienia własnego zależy od celu rozwiązania i
postaci dekomponowanej macierzy.
Wyróżnimy przypadki (od których zależy metoda rozwiązania):
• poszukiwane wszystkie wartości własne lub tylko wybrane (najmniejsze, największe),
• poszukiwane tylko wartości własne lub pary wartości - wektory własne,
• macierz rzeczywista lub zespolona,
• macierz pełna lub rzadka,
• macierz specjalna – np. symetryczna.
Katedra Metrologii AGH
Kraków 2005
Numeryczne metody obliczeń technicznych
Metoda potęgowa (power method, odmiany inverse power, shifted inverse power)
Rozwiązanie zadania własnego metodą potęgową dostarcza tylko największą wartość własną. Jej
działanie jest oparte na zależności potęgowej wydzielającej dominującą wartość własną:
Ax = λ x
AAx = λ 2 x
A… A x = Ai x = λ i x
i
Schemat iteracyjny od wybranej wartości startowej x0 (np. wektor jedynek):
y k = Ax k
1
x k +1 =
y k (normalizacja do wektora o ekstremalnej składowej równej 1)
ck +1
j
j
ck +1 = yk( ) , j = arg max ⎡ yk( ) ⎤ (czynnik normalizujący – ekstremalna wartość w wektorze)
⎦
j =1,…, N ⎣
prowadzi do rozwiązania:
x=[1; 1];
S=[4 0.5;0.5 1];
for i=1:10
eig(S)
λmax = ck +1
p max = x k +1
Dowód można znaleźć np. w
Mathews J.H. „Numerical Methods for ...”
Odmiany metody wyznaczają wybrane
pary wartość-wektor własny.
Katedra Metrologii AGH
y=S*x;
[ym,i]=max(abs(y));
x=y/y(i);
l=y(i);
end
x= [1.0000; 0.1623]
l= 4.0811
P =
0.1602
-0.9871
-0.9871
-0.1602
0.9189
0
0
4.0811
D =
Kraków 2005
Numeryczne metody obliczeń technicznych
Metoda przekształceń przez podobieństwo
Metoda Jacobiego dla macierzy symetrycznych – wyznacza wszystkie wartości i wektory własne.
Ideą bazową tej metody jest taka iteracyjna rotacja układu współrzędnych wg kolejnych osi, żeby
sprowadzić macierz do postaci diagonalnej.
Transformacje (rotacje macierzy) są operacją nie zmieniającą układu wartości własnych –
transformacją przez podobieństwo (similarity transformation):
Dla ortogonalnej macierzy transformacji, R1T AR1 = A '
(A’ podobna do A)
Sekwencja transformacji:
R n T … R 2T R1T AR1R 2 … R n = D = diag ( λ1 ,…, λN )
Zmienia problem Ax = λ x na Dy = λ y , gdzie y = R n T … R 2T R1T x = R T x
Problemem jest tylko konstrukcja kolejnych macierzy transformacji R i
⎡1
⎢
⎢
⎢
2
gdzie:
c = 1 1 + t s = tc
Ri = ⎢
⎢
Aq ,q − Ap , p
sign (ζ )
⎢
ζ =
t=
2
2 Ap ,q
⎢
ζ + 1+ζ
⎢
Wektory własne są równe łącznej macierzy transformacji R .
⎢⎣
Zerowanie poszczególnych elementów pozadiagonalnych
przez operację podobieństwa wykonuje macierz rotacji
o pewien kąt ϕ ( c = cos ϕ , s = sin ϕ )
Katedra Metrologii AGH
( p)
( q)
c
s
1
−s
c
⎤
⎥
⎥
( p)⎥
⎥
⎥
( q) ⎥
⎥
⎥
1 ⎥⎦
Kraków 2005
Numeryczne metody obliczeń technicznych
Odmiany metod transformacji przez podobieństwo
Bardziej efektywne odmiany to metoda obrotów Householdera i Givensa o innej postaci macierzy
obrotu (szybciej zbieżny proces). Nie omawiamy ich tutaj. Patrz np. „Numerical Recipes ...”
Metoda dekompozycji QR – wyznaczanie wartości własnych
Jeśli wyznaczone mają być tylko wartości własne to bardziej efektywne jest prowadzenie
transformacji nie do postaci diagonalnej, ale do trójkątnej. Wtedy wartości własne występują na
diagonali macierzy trójkątnej.
Dekompozycja ma postać:
>> S=[4 0.5;0.5 1];
A = QR , gdzie Q jest ortonormalna, a R trójkątna górna.
>> [Q,R]=qr(S);
Zmodyfikowana macierz ma postać:
>> for i=1:10
T
>> [Q,R]=qr(R*Q);
A1 = Q AQ = RQ
>> end
Iteracyjne prowadzenie dekompozycji daje rozwiązanie w postaci
>> lambda=diag(R*Q)
trójkątnej (diagonalnej dla A symetrycznej, bo podobieństwo zachowuje lambda =
4.0811
strukturę macierzy) macierzy An, co pokazano w przykładzie.
0.9189
Zauważmy, że R jest macierzą dekompozycji Choleskiego dla
T
X T X = ( QR ) QR = R T QT QR = R T R , więc układ normalny X T Xθ = X T Y można efektywnie
rozwiązać metodą podstawień dekomponując X (patrz wykład „Układy równań liniowych”).
Katedra Metrologii AGH
Kraków 2005
Numeryczne metody obliczeń technicznych
Zastosowanie dekompozycji QR do rozwiązywania nadokreślonego układu równań
Dla równania nadokreślonego Xθ = y , gdzie X ma N wierszy (pomiary) i n kolumn (parametry),
N
rozwiązanie ma minimalizować kryterium sumy kwadratów odchyłek ε = ∑ y ( i ) − X ( i ) θ ,
2
i =1
wektorowo zapisywane jako ε = y − Xθ . Macierz rozszerzoną [ X y ] możemy przedstawić w
2
postaci QR zdekomponowanej jako [ X y ] = QR , gdzie Q jest macierzą ortonormalną NxN, a R jest
macierzą trójkątną górną Nxn. Ponieważ transformacja ortonormalna nie zmienia odległości to
kryterium możemy zapisać w równoważnej postaci ε = Q ( y − Xθ ) . Podzielmy R na części
T
2
związane z X i y (R1 – trójkątna górna nxn, r2 – wektor kolumnowy n, r3 - skalar, 0 – macierz
⎡ R1 r2 ⎤
zerowa (N-n)x(N-n): R = ⎢ 0 r3 ⎥ . Kryterium możemy teraz przepisać w postaci
⎢
⎥
⎢⎣ 0 ⎥⎦
⎡r ⎤ ⎡ R θ ⎤
2
ε = QT ( y − Xθ ) = ⎢ 2 ⎥ − ⎢ 1 ⎥ = r2 − R1θ + r3 . Pierwszy składnik tworzy równanie liniowe
⎣ r3 ⎦ ⎣ 0 ⎦
2
2
2
dobrze określone i zeruje się dla R1θ = r2 (rozwiązanie przez podstawienie wstecz) a drugi
składnik (skalar) to suma kwadratów reszt dopasowania. Algorytm jest dobrze uwarunkowany bo
nie używamy w rozwiązaniu kwadratu macierzy. Nie jest też istotna macierz Q.
Zastosowanie w identyfikacji/estymacji - zob. np. L. Ljung, „System Identification”,
Katedra Metrologii AGH
Kraków 2005
Numeryczne metody obliczeń technicznych
Wartości osobliwe i dekompozycja SVD (singular value decomposition)
Jednym z zastosowań dekompozycji SVD jest lepsze uwarunkowanie zadania z poprzedniej strony
– rozwiązania układu normalnego. Ten temat jest rzadko omawiany w standardowych kursach
NMOT ale zyskuje na popularności.
Dla nie kwadratowej macierzy A (wymiary mxn) rozkład SVD ma postać:
A = UΣV T
skąd: UT AV = D
gdzie: U – unitarna (UTU=I) o wymiarach mxm, V – unitarna (VTV=I) o wymiarach nxn
⎡ D 0⎤
, D = diag (σ 1 ,…,σ n ) , diagonalna macierz wartości osobliwych
Σ=⎢
⎥
⎣ 0 0⎦
Pseudoodwrotność macierzy A definiowana jako A = ( A A ) A T może być szybko policzona:
I
T
−1
⎡ D −1 0⎤
⎛ 1
1 ⎞
−1
=
,
,
A = VΣ U , Σ = ⎢
,
diag
…
D
⎜σ
⎥
σ n ⎟⎠
⎝ 1
⎣ 0 0⎦
Zastosowanie do rozwiązywania układów nadokreślonych (estymacja LS, aproksymacja):
równanie normalne X T Xθ = X T Y szybko i dokładnie rozwiązywane przez
θ = XIY
Dodatkowo: V T ( A T A ) V = diag (σ 12 ,…,σ n 2 )
UT ( AA T ) U = diag (σ 12 ,…,σ n 2 ,0,…,0 )
I
I
T
I
Czyli wartości własne ATA są kwadratami wartości osobliwych A.
Więcej w: Bjorck, Dahlquist „Metody numeryczne” i Golub, Loan „Matrix Computations”.
Katedra Metrologii AGH
Kraków 2005
Numeryczne metody obliczeń technicznych
Interpretacja SVD w kategoriach macierzy składowych
Podobnie jak przy rozkładzie na wektory/wartości własne tak i przy
rozkładzie na wartości osobliwe macierz możemy przedstawić jako
kombinację składowych definiowanych przez wektory macierzy U, V i
skalowanych N niezerowymi wartościami osobliwymi σ . Tzn. macierzowe
N
wyrażenie A = UΣV możemy przejrzyściej zapisać jako A = ∑σ i ui v Ti
T
i =1
load durer
[U,S,V]=svd(X);
image(U*S*V');
colormap(map); axis image off;
mv=[50, 10, 5, 1];
for i=1:length(mv)
pause
mask=zeros(size(S));
mask(1:mv(i),1:mv(i))=1;
image(U*(S.*mask)*V');
axis image off;
end
Przykład Obrazek prostokątny złożony z pikseli możemy widzieć jako
macierz niekwadratową z zawartością określającą jasność (kolor) pikseli. Taką macierz możemy
zdekomponować na składowe obrazy osobliwe (eigenimages). Właściwości SVD powodują, że
rozkład ten będzie najefektywniejszy, tj. resztkowa energia kolejnych składowych z malejącymi
wartościami osobliwymi będzie najmniejsza z możliwych spośród wszystkich transformat
ortogonalnych. Jaki jest stopień kompresji informacji w tym przykładzie ?
Katedra Metrologii AGH
Kraków 2005

Podobne dokumenty