Redukcja wymiarowości
Marcin Orchel
1 Wstęp
Interpretacja oparta na danych. Jak znaleźć transformację liniową punktów taką aby punkty po transformacji były jak najbardziej „rozrzucone”.
1.1 Analiza głównych składowych
Mamy dane zmienne losowe X1, . . . , Xm. Mamy tak przetransformować liniowo te zmien- ne do zmiennych Y1, . . . , Ym, aby Y1 miała największą wariancję spośród zmiennych Y , później Y2 aby miała największą wariancję spośród pozostałych zmiennych, itd., oraz aby wszystkie zmienne losowe były ze sobą nieskorelowane.
Analiza problemu dla dwóch zmiennych losowych X1 i X2. Na początku zajmiemy się znalezieniem Y1, a później Y2 takich, że
Y1 = e11X1+ e12X2 (1)
Y2 = e21X1+ e22X2 (2)
Nowe zmienne Y1, Y2 nazywamy głównymi składowymi.
var (Y1) = var (e11X1+ e12X2) = e211var (X1) + e212var (X2) + 2e11e12cov (X1, X2) (3) Celem jest maksymalizacja (3), gdzie zmienną jest ~e1. Jest to problem z zakresu progra- mowania kwadratowego. Możemy (3) zapisać równoważnie macierzowo jako
var (Y1) = ~e1TΣ ~e1 (4) gdzie Σ to macierz kowariancji.
Aby miał on jednoznaczne rozwiązanie wprowadzamy dodatkowy warunek
k ~e1k2 = 1 . (5)
Chcemy zastosować metodę Lagrange’a do rozwiązania. Włączamy ten warunek do (3) za pomocą mnożników Lagrange’a. Następnie rozwiązujemy równanie
D ~e1TΣ ~e1+ Dλ1 − k ~e1k2= 0 , (6)
gdzie D oznacza pochodną. Pochodna po λ sprowadza się do warunku (5). Dla pochodnej po ~e1, dla normy euklidesowej otrzymujemy równanie:
2Σ ~e1− 2λ ~e1 = 0 (7)
Po podzieleniu przez 2
Σ ~e1− λ ~e1= 0 (8)
Jest to równanie na wektory i wartości własne. Wektory własne wybieramy tak aby speł- nione było (5). Po rozwiązaniu tego równania wybieramy rozwiązanie maksymalizujące wariancję. A zatem podstawiając (8) do (4) otrzymujemy
var (Y1) = ~e1Tλ ~e1 = λ k ~e1k2= λ (9) Ostatnie przejście było po podstawieniu (5). Z tego wynika, że trzeba wziąść maksymalne λ i jemu odpowiadający wektor własny.
W drugim kroku musimy maksymalizować wariancję Y2, czyli
var (Y2) = var (e21X1+ e22X2) = e221var (X1) + e222var (X2) + 2e21e22cov (X1, X2) (10) Zapisujemy powyższe w postaci macierzowej
var (Y2) = ~e2TΣ ~e2 (11) Aby miał on jednoznaczne rozwiązanie wprowadzamy dodatkowy warunek
k ~e2k2 = 1 . (12)
Ponadto chcielibyśmy aby zmienna Y2 nie była skorelowana ze zmienną Y1, czyli ich kowariancja musi być 0
cov (Y2, Y1) = 0 (13)
cov (Y2, Y1) = cov (e21X1+ e22X2, e11X1+ e12X2) = (14) e11e21var (X1) + e12e21cov (X1, X2) + e11e22cov (X1, X2) + e12e22var (X2) = 0 (15) Można to zapisać w postaci macierzowej
~
e2TΣ ~e1 = 0 (16)
A następnie podstawiając (8) do powyższego (jest to warunek, który spełnia wektor ~e1)
~
e2T · λ ~e1= 0 (17)
~
e1· ~e2 = 0 (18)
Czyli mamy dwa dodatkowe warunki do problemu optymalizacyjnego. Włączając pierw- szy z nich do problemu optymalizacyjnego za pomocą mnożników Lagrange’a otrzymu- jemy:
D ~e2TΣ ~e2+ λ2D1 − k ~e2k2= 0 . (19)
Dla normy euklidesowej otrzymujemy
Σ ~e2− λ ~e2 = 0 . (20)
Znaleziony wektor ma być ortogonalny do poprzednio znalezionego, a zatem ponieważ wektory własne są ortogonalne do siebie dla różnych wartości λ wybieramy maksymalną wartość λ różną od pierwszej wybranej.
Interpretacja geometryczna. Wektor własny wskazuje kierunek największej zmien- ności, to znaczy punkty zrzutowane na prostą równoległą do tego wektora będą miały największą zmienność wartości po zrzutowaniu. Możemy to zauważyć w ten sposób, że wartości Y1 są marginesem funkcyjnym prostej e11X1+ e12X2= 0, a więc wartości mar- ginesu będą wartościami na dowolnej prostej prostopadłej do e11X1+ e12X2= 0 tak aby wartość 0 była w miejscu gdzie margines funkcyjny jest równy 0. Dla większej niż 2 liczby wymiarów również będziemy mieli prostą równoległą do wektora kierunku płaszczyzny.
Przykład. Dla dwóch zmiennych losowych X1 i X2 mamy znaleźć zmienną Y1 = e11X1+ e12X2 oraz Y2= e21X1+ e22X2.
Np. powiedzmy, że mamy rozkład dyskretny: X1 przyjmuje wartości z prawdopodo- bieństwami: (1, 0.3) , (2, 0.5) , (4, 0.2), natomiast X2: (1, 0.2) , (2, 0.3) , (4, 0.5). Na począt- ku tworzymy macierz kowariancji:
E (X1) = 0.3 + 1 + 0.8 = 2.1 (21)
E (X2) = 0.2 + 0.6 + 2 = 2.8 (22)
Wariancje wynoszą odpowiednio:
var (X1) = 1.12∗ 0.3 + 0.12∗ 0.5 + 1.92∗ 0.2 = 1.09 (23) var (X2) = 1.82∗ 0.2 + 0.82∗ 0.3 + 1.22∗ 0.5 = 1.56 (24) Mamy dystrybucję wspólną:
(1, 1, 0.06) , (1, 2, 0.09) , (1, 4, 0.15) , (2, 1, 0.1) , (2, 2, 0.15) , (2, 4, 0.25) (25) (4, 1, 0.04) , (4, 2, 0.06) , (4, 4, 0.1) (26) E (X1X2) = 0.06 + 0.18 + 0.6 + 0.2 + 4.2 + 0.016 + 0.48 = 5.736 (27) A więc
cov (X1, X2) = E (X1X2) − E (X1) E (X2) = E (X1X2) − 5.88 = 5.736 − 5.88 = −0.144 (28) Mając macierz kowariancji wyznaczamy wartości i wektory własne:
λ1 = 1.6006 (29)
λ2 = 1.0494 (30)
~
e1= (−0.27143, 0.96246) (31)
~
e2 = (−0.96246, −0.27143) (32)
Widzimy, że wektory własne są ortogonalne do siebie. Długości wektorów własnych są równe 1. Jeśli nie byłyby równe 1, to możemy podzielić współrzędne przez długość wek- tora. Otrzymujemy
Y1= −0.27X1+ 0.96X2 (33)
Y2= −0.96X1− 0.27X2 (34)
Mamy również
var (Y1) = λ1 = 1.6006 (35)
var (Y2) = λ2 = 1.0494 (36)
Widzimy, że wariancja var (Y1) ≥ var (X1) i var (Y1) ≥ var (X2). Widzimy, że
var (Y1) + var (Y2) = λ1+ λ2 = var (X1) + var (X2) . (37) Możemy naszkicować wykres na którym znajdą się wektory ~e1 i ~e2, a także proste równoległe do tych wektorów
− 0.96 (X1− 2.1) − 0.27 (X2− 2.8) = 0 (38)
− 0.27 (X1− 2.1) + 0.96 (X2− 2.8) = 0 (39) Widzimy, że do budowy pierwszej prostej został wzięty wektor prostopadły do pierwszego wektora własnego, tak aby była równoległa do wektora własnego. Proste zostały prze- sunięte w ten sposób aby dla wartości oczekiwanej dystrybucji wspólnej wariancja była zero. Dodatkowe liczby w nawiasach wpływają tylko na wartość wyrazu wolnego b. A więc nie zmieniliśmy kierunku. Proste te wraz z kierunkiem, mogą być traktowane jako nowy układ współrzędnych. Proste na wolframalpha.com, http://www.wolframalpha.com/
input/?i=-0.27%28x-2.1%29%2B0.96%28y-2.8%29%3D0%2C+-0.96%28x-2.1%29-0.27%
28y-2.8%29%3D0.
Przykład z punktami. Mamy dane punkty (−1, −1), (0, 0), (1, 1). Punkty wybraliśmy tak, aby estymowane wartości oczekiwane były 0 dla każdego kierunku. Jeśli by nie były należy odjąć średnią po każdej kolumnie od każdego elementu danej kolumny. Estymowa- na macierz kowariancji https://www.wolframalpha.com/input/?i=transpose(%7B%
7B-1,-1%7D,%7B0,0%7D,%7B1,1%7D%7D)*(%7B%7B-1,-1%7D,%7B0,0%7D,%7B1,1%7D%7D)
%2F2. Estymowane wektory własne i wartości własnehttp://www.wolframalpha.com/
input/?i=eigenvectors+%7B%7B1,1%7D,%7B1,1%7D%7D.
Nowe współrzędne dla danego punktu wyznaczamy za pomocą iloczynu skalarnego punktu i wektorów własnych. Możemy również zapisać to równanie dla wszystkich roz- patrywanych punktów macierzowo jako iloczyn macierzy punktów i macierzy wektorów własnych zapisanych kolumnowo.
1.1.1 Redukcja wymiarowości Obliczamy wskaźnik
λ1+ . . . + λk
λ1+ . . . + λm . (40)
Usuwamy wszystkie składowe główne, dla których wskaźnik (40) jest mniejszy od przy- kładowo 0.8.
Innym sposobem jest pominięcie składowych, które są mniejsze od średniej λ = 1
m
m
X
i=1
λi . (41)
1.1.2 Zbiór treningowy
Nie mając danych o dystrybucji prawdopodobieństwa, możemy wyliczyć macierz ko- wariancji z danej próbki, zbioru wektorów treningowych ~xi, gdzie i = 1..N . Macierz kowariancji Σ o rozmiarze m × m z próbki obliczamy ze wzoru
cjk = 1 N − 1
N
X
i=1
(xij− xj) (xik− xk) (42) Po redukcji wymiaru dane będą przedstawione w nowym układzie współrzędnych, o mniejszej liczbie wymiarów. Zastanówmy się jak można przedstawić nowe dane po re- dukcji w oryginalnym układzie współrzędnych. Chcemy przedstawić punkt (l1, l2). Mo- dyfikujemy (33), (34) tak abyśmy otrzymali punkt zerowy dla punktu średniego
0 = −0.27 (X1− 2.1) + 0.96 (X2− 2.8) (43) 0 = −0.96 (X1− 2.1) − 0.27 (X2− 2.8) . (44) Nie zmieniamy tym sposobem wariancji zmiennych Y1 i Y2. Przykładowo pierwsza nowa współrzędna obliczana jest według wzoru (43), a druga jest pominięta po redukcji Y2 (po zrzutowaniu na oś jest równa 0). Więc należy wyznaczyć punkty po zrzutowaniu na pierwszą składową. W nowym układzie współrzędnych rzutowany punkt będzie miał drugą współrządną 0, a pierwsza współrzędna będzie taka sama, a więc wyznaczamy tą pierwszą współrzędną
l01= −0.27 (l1− 2.1) + 0.96 (l2− 2.8) (45) A zatem szukamy punktu pierwotnego dla którego otrzymujemy po przekształceniu punkt (l01, 0), musimy rozwiązać układ równań
l01 = −0.27 (X1− 2.1) + 0.96 (X2− 2.8) (46) 0 = −0.96 (X1− 2.1) − 0.27 (X2− 2.8) . (47) ze względu na zmienne X1 i X2. Będą to współrzędne punktu rzutowanego.
Alternatywny sposób. Możemy wyznaczyć prostą równoległą do wektora własnego i przechodzącą przez punkt średni za pomocą wzoru parametrycznego.
[x1, x2] − [2.1, 2.8] = [−0.27, 0.96]t (48) a zatem
x1− 2.1 = −0.27t (49)
x2− 2.8 = 0.96t (50)
inaczej
x1 = −0.27t + 2.1 (51)
x2= 0.96t + 2.8 (52)
Prosta przechodząca przez punkt, który chcemy rzutować (l1, l2) to taka, że
− 0.27(X1− l1) + 0.96(X2− l2) = 0 (53)
− 0.27X1+ 0.96X2+ 0.27l1− 0.96l2 = 0 (54) Prosta ta będzie się przecinała z prostą równoległą do wektora własnego, czyli po pod- stawieniu wzorów parametrycznych
− 0.27 (−0.27t + 2.1) + 0.96 (0.96t + 2.8) + 0.27l1− 0.96l2 = 0 (55) Rozwiązanie z wolframalpha ze względu na t http://www.wolframalpha.com/input/
?i=-0.27%5Cleft(-0.27t+%2B+2.1%5Cright)+%2B+0.96%5Cleft(0.96t+%2B+2.8%5Cright) +%2B+0.27l_1+-+0.96l_2+%3D+0
t = −0.271493l1+ 0.965309l2− 2.13273 (56) Podstawiamy teraz t do wzorów parametrycznych
x1= −0.27 (−0.271493l1+ 0.965309l2− 2.13273) + 2.1 (57) x2 = 0.96 (−0.271493l1+ 0.965309l2− 2.13273) + 2.8 (58) Są to współrzędne zrzutowanego punktu (l1, l2).
1.2 Macierz ortogonalna
Macierz ortogonalna to macierz kwadratowa A spełniająca równość
AT · A = A · AT = I , (59)
gdzie I to macierz jednostkowa. Własności macierzy ortogonalnej
•
AT = A−1 (60)
•
det A ∈ {1, −1} (61)
• Iloczyn macierzy ortogonalnych jest macierzą ortogonalną.
• Macierz transponowana i macierz odwrotna do macierzy ortogonalnej są ortogo- nalne.
• Macierz jednostkowa jest macierzą ortogonalną.
1.3 Rozkład według wartości osobliwych
Po angielsku singular value decomposition (SVD). Mamy daną macierz M m×n wartości rzeczywistych. Każdą macierz M można przedstawić w postaci rozkładu
M = U ΣVT (62)
gdzie U to macierz ortogonalna m × m, Σ to macierz m × n diagonalna z nieujemnymi elementami na przekątnej, a macierz V to macierz ortogonalna n×n. Może istnieć więcej niż jeden możliwy rozkład macierzy M .
Nieujemna wartość σ jest wartością osobliwą M , wtw istnieją wektory długości 1, u i v takie, że
M v = σv (63)
oraz
MTu = σu . (64)
Wektor u jest nazywany lewym osobliwym wektorem, a wektor v prawym osobliwym wek- torem. Dla każdej dekompozycji SVD, elementy diagonalne macierzy M są wartościami osobliwymi M , m kolumn macierzy U to odpowiednie lewe osobliwe wektory M , a n kolumn macierzy V to prawe osobliwe wektory M .
1.4 Rozkład własny
Niech będzie dana macierz kwadratowa A n × n z n liniowo niezależnymi wektorami własnymi qi. Wtedy A może być rozłożona na
A = QΛQ−1 (65)
gdzie Q to macierz n × n której i-ta kolumna to wektor własny qi A, a Λ to macierz diagonalna, której elementy diagonalne są odpowiednimi wartościami własnymi. Tylko diagonalizowane macierze mogą być w ten sposób rozłożone. Jeśli macierz A jest macierzą symetryczną, to wtedy macierz Q jest macierzą ortogonalną (zachodzi wtedy AT = A−1).
Związek rozkładu według wartości osobliwych z rozkładem własnym:
MTM = V ΣTUTU ΣVT = V ΣTΣVT (66)
M MT = U ΣVTV ΣTUT = UΣΣTUT (67) Prawe strony równań są rozkładem własnym lewych stron. A zatem kolumny V są wekto- rami własnymi MTM , a kolumny U są wektorami własnymi M MT. Niezerowe elementy Σ są pierwiastkami niezerowych wartości własnych MTM lub M MT.
Macierz kowariancji możemy zapisać w postaci macierzowej dla wartości oczekiwa- nych zero
Σ = 1
N − 1XTX (68)
a zatem możemy zastosować wzór (66), a więc możemy użyć dekompozycji SVD do obliczenia głównych składowych. Nie musimy wtedy wyliczać macierzy kowariancji, co powoduje, że algorytm może być dokładniejszy. Czyli wyliczamy dekompozycję SVD dla macierzy X i otrzymujemy wektor V wektorów własnych macierzy XTX.
1.5 Zastosowanie do obrazów z twarzami
Znajdujemy przykładowo 25 zdjęć z twarzami. Każde zdjęcie jest wektorem o rozmia- rze p × p, gdzie p to liczba pixeli. A więc mamy zbiór 25 wektorów, każdy o rozmiarze p2. Znajdujemy wektory własne macierzy kowariancji. Macierz kowariancji jest rozmiaru p2× p2. Następnie możemy wypisać wartości składowych głównych dla wybranych zdjęć.
Możemy też spróbować zwizualizować wektory własne, każdy z nich będzie rozmiaru p2. Składowych głównych będziemy mieli maksymalnie p2. Dokonujemy kompresji obrazu za pomocą zerowania określonej liczby składowych głównych (wartości Yi) z najmniejszymi wartościami własnymi, a następnie po powrocie do oryginalnego układu współrzędnych wyświetlamy skompresowaną twarz. Do przechowania twarzy wystarczy przechowywać wartości wszystkich wektorów własnych (wspólnie dla wszystkich twarzy) oraz niezero- wane wartości Yi.
Można również zwizualizować wartości Y1 i Y2 w dwuwymiarowym układzie i spraw- dzić czy można dokonać klasyfikacji/klasteryzacji twarzy należących do tych samych osób.
Przykładowo mamy obrazy z 120 pikselami każdy. Mamy 1000 takich obrazów. Po- nieważ każdy wektor własny odpowiada za powstanie jednej współrzędnej więc będziemy mieć 120 wektorów własnych. Poszczególne nowe współrzędne powstają przez wylicze- nie iloczynu skalarnego odpowiedniego wektora własnego z obrazem, więc każdy wektor własny będzie miał 120 współrzędnych. Wektory własne wyliczane są dla macierzy ko- wariancji dla danych. Jeśli każdy wektor własny ma 120 współrzędnych, czyli tyle ile wyjściowe obrazy to możemy spróbować zwizualizować wektory własne jako obrazy.
2 Zadania
2.1 Zadania na 3.0
• dla wygenerowanych danych dwuwymiarowych z rozkładu normalnego wyświetlić na wykresie dane treningowe oraz proste o kierunkach wektorów własnych z pca
przechodzące przez estymowany środek rozkładu dla estymowanej wartości średniej i macierzy kowariancji
• wybrać dodatkowo macierz kowariancji tak, aby wszystkie punkty przechodziły przez prostą
• wyświetlić wybrane zdjęcia twarzy po skompresowaniu metodą pca
• wyświetlić dla wybranej grupy zdjęć twarzy znalezione eigenfaces po redukcji wy- miarów
• wyświetlić początkowe wartości Yi dla wybranych twarzy Wskazówki
• Dane z kagglehttps://www.kaggle.com/c/facial-keypoints-detection/data,lokalnie home.agh.edu.pl/~morchel/files/mro/training.zip oraz home.agh.edu.pl/
~morchel/files/mro/test.zip
• Przykładowe zdjęcia mogą być ściągnięte zhttp://www.cl.cam.ac.uk/research/
dtg/attarchive/facedatabase.html, a przykładowe skrypty wykorzystujące te zdjęcia zhttp://www.mathworks.com/matlabcentral/fileexchange/16760-face- recognition/content/face_recognition.m.
• Alternatywne zbiory twarzy:http://vision.ucsd.edu/content/yale-face-database, http://vision.ucsd.edu/~leekc/ExtYaleDatabase/ExtYaleB.html. Skrypty Ma- tlabowe wykorzystujące ten drugi zbiór znajdują się na stroniehttps://en.wikipedia.
org/wiki/Eigenface.
Wskazówki do R
• covhttps://stat.ethz.ch/R-manual/R-devel/library/stats/html/cor.html
• https://www.kaggle.com/c/facial-keypoints-detection/details/getting- started-with-r
• https://stat.ethz.ch/R-manual/R-devel/library/base/html/eigen.html, uwa- ga: metoda eigen działa wolno dla podanego wyżej zbioru zdjęć, należy zmniejszyć rozdzielczość zdjęć przed jej uruchomieniem i zmniejszyć ich liczbę
• nie używamy na zajęciach http://stat.ethz.ch/R-manual/R-devel/library/
stats/html/prcomp.html, parametr center
• nie używamy na zajęciach http://stat.ethz.ch/R-manual/R-devel/library/
stats/html/princomp.html
• https://stat.ethz.ch/R-manual/R-patched/library/graphics/html/arrows.
html
Wskazówki do Matlaba
• covhttp://www.mathworks.com/help/matlab/ref/cov.html- obliczanie macie- rzy kowariancji z danych
• mvnrndhttp://www.mathworks.com/help/stats/mvnrnd.html- generacja loso- wych danych zgodnie z rozkładem wielowymiarowym normalnym, http://www.
mathworks.com/help/stats/mvnrnd.html
• eig http://www.mathworks.com/help/matlab/ref/eig.html - zwraca wektory i wartości własne
• http://www.mathworks.com/help/stats/pca.html,http://www.mathworks.com/
help/stats/pcacov.html,http://www.mathworks.com/help/stats/pcares.html (nie używamy w zadaniach)
2.2 Zadania na 4.0
• powtórzyć poprzednie zadanie dla danych trójwymiarowych
• dla przypadku dwuwymiarowego i trójwymiarowego wyświetlić na poprzednich wy- kresach składowe główne pca obliczone z oryginalnych wartości średnich i macierzy kowariancji
• dla przypadku dwuwymiarowego wyświetl wykres jednowymiarowy z danymi tre- ningowymi po usunięciu jednej składowej głównej
• dla przypadku trójwymiarowego wyświetl wykres jednowymiarowy po usunięciu dwóch składowych głównych, oraz wykres dwuwymiarowy po usunięciu jednej skła- dowej głównej
2.3 Zadania na 5.0
• wyświetl na poprzednich wykresach dla przypadku dwuwymiarowego i trójwymia- rowego zrzutowane punkty po redukcji wymiaru takiej jak w zadaniu poprzednim (dla dwóch wymiarów redukcja o jeden wymiar, dla trzech wymiarów redukcja o jeden i dwa wymiary)
• użyć rozkładu SVD do znalezienia głównych składowych dla przypadków z danymi treningowymi z poprzedniego zadania
• wykonać procedurę generacji składowych głównych oraz redukcji wymiaru dla wy- branych danych wielowymiarowych: np. ze strony statlib, przykładowo plik ho- uses.zip.
• wykonać wykres słupkowy z procentową ilością wyjaśnionej wariancji dla kompo- nentów głównych
• narysować wykres wyjaśniający ile każda cecha wnosi do każdego komponentu głównego (patrz dokumentacja Matlaba do princomp)
A Zagadnienie własne
Niezerowy wektor ~x rozmiaru n jest wektorem własnym macierzy kwadratowej A n × n wtw
A~x = λ~x (69)
lub
(A − λI) ~x = 0 (70)
gdzie λ jest nazywane wartością własną. Wartości i wektory własne mogą być wyzna- czone ze wzoru:
p (λ) := det (A − λI) = 0 (71)
gdzie p (λ) jest nazywane wielomianem charakterystycznym. Jego pierwiastki są warto- ściami własnymi. Macierz A jeśli jest symetryczna ma dokładnie n rzeczywistych wartości własnych λi przy założeniu, że liczy się je wraz z krotnościami. Dla macierzy symetrycz- nej A wektory własne xi i xj odpowiadające różnym wartościom własnym λi 6= λj są ortogonalne, czyli ~xiTx~j = 0. Możemy również zauważyć, że jak znajdziemy wektor wła- sny, to możemy pomnożyć go przez dowolną stałą niezerową i dalej będzie to wektor własny odpowiadający tej samej wartości własnej.
B Podstawy rachunku prawdopodobieństwa
Wariancja
V ar (x) = E (X − µ)2 (72)
D2(X + Y ) = D2(X) + D2(Y ) + 2Cov (X, Y ) (73) Estymacja wariancji
1 n − 1
n
X
i=1
(xi− ¯x)2 (74)
Kowariancja
cov (X, Y ) = E ((X − EX) (Y − EY )) (75) Równoważny wzór
cov (X, Y ) = E (XY ) − EX · EY (76) Macierz kowariancji dla wektora losowego (X1, X2, . . . , Xn)
Σ =
σ211 σ12 . . . σ21 σ222 . . . . . . . . . . . .
. (77)
gdzie σ2i = D2Xi- wariancja zmiennej Xi, σij = cov(Xi, Xj). A zatem elementy macierzy kowariancji są równe
Σij = cov (Xi, Xj) = E ((Xi− E (Xi)) (Xj− E (Xj))) . (78)
C Elementy rachunku macierzowego
Pochodna formy kwadratowej α = xTAx dla macierzy A n × n i A nie zależy od x to
∂α
∂x = xT A + AT (79)
Dla przypadku szczególnego gdy A jest macierzą symetryczną zachodzi
∂α
∂x = 2xTA (80)