Rozkład SVD kalkulator

Format liczbowy
Komentarze dotyczące rozwiązania
Bez opisu (tylko odpowiedź)

a

b

c

d

x

y

z

clear

i

ab
x2
xn

Randomize

313131313135151515151583137
2
2510
=Rozwiąż

  O kalkulatorze dekompozycji na wartości osobliwe (SVD)

To jest darmowy, internetowy kalkulator dekompozycji na wartości osobliwe (SVD) z pełnym, szczegółowym, krok po kroku opisem rozwiązań, który wykonuje operacje na macierzach o rozmiarze do 20x20 z elementami macierzowymi następujących typów: liczby dziesiętne, ułamki, liczby zespolone, zmienne.

Aby rozpocząć obliczenia, należy najpierw wprowadzić rozmiar macierzy w polu wejściowym, które znajduje się w górnej części ekranu, a także wybrać metodę obliczeń.

Nieco niżej znajduje się okno macierzy, w którym należy wprowadzić elementy macierzy za pomocą klawiatury. Znajduje się tu również panel kontrolny macierzy, który upraszcza pracę z macierzami i zawiera następujące elementy sterujące:

  • Pierwszy element pozwala na powiększenie okna macierzy. Może to być szczególnie przydatne w przypadku, gdy trzeba wykonać obliczenia na bardzo dużych macierzach, które nie mieszczą się w całości. Jeśli macierz nadal nie jest widoczna po powiększeniu okna, można zmienić jej skalę za pomocą przycisków + / -;
  • Drugi element wykonuje funkcję kopiowania wprowadzanej macierzy do bufora pamięci. Może to być przydatne w przypadku, gdy często używa się tej samej macierzy do obliczeń lub gdy trzeba przenosić macierze między operacjami;
  • Ostatni element wstawia wcześniej skopiowaną macierz, co pozwala przyspieszyć proces wprowadzania macierzy do zaledwie kilku kliknięć, zamiast robić to ręcznie;

Niżej znajduje się pasek narzędzi, który pozwala na dostosowanie kalkulatora i ułatwienie pracy z nim. Jest on wizualnie podzielony na trzy części, z których każda odpowiada za następującą funkcjonalność:

  • Pierwsza pozwala na wybór formatu liczb przy wyświetlaniu wyniku rozwiązania. Można tu również wyłączyć komentarze do rozwiązania zadania, jeśli użytkownik zrozumiał już, jak rozwiązać to zadanie i używa kalkulatora do przyspieszenia lub sprawdzenia własnych obliczeń. Można również całkowicie wyłączyć rozwiązanie krok po kroku, jeśli potrzebny jest tylko wynik rozwiązania;
  • Druga zawiera przyciski, które pozwalają na zmianę typu pola wprowadzania macierzy, wymazanie jej elementów lub całej macierzy, oraz największy przycisk ze znakiem równości, który przeniesie użytkownika do ekranu z rozwiązaniem zadania. Wszystkie te przyciski są zduplikowane przez klawisze na klawiaturze. Aby dowiedzieć się, który klawisz na klawiaturze należy nacisnąć, wystarczy najechać kursorem na jeden z przycisków, a pojawi się wskazówka z nazwą klawisza. Można również używać strzałek na klawiaturze do poruszania kursorem między polami wprowadzania macierzy;
  • Ostatnia pozwala na wybór liczby cyfr po przecinku do zaokrąglania liczb nie całkowitych. Można tu również od razu zobaczyć przykład, jak będą wyglądały zaokrąglone ułamki;

  Czym jest dekompozycja na wartości osobliwe (SVD) macierzy?

Dekompozycja na wartości osobliwe (SVD) to faktoryzacja danej macierzy rzeczywistej lub zespolonej na trzy macierze, z których jedna jest n x n zespoloną macierzą unitarną, druga macierzą jest n x m prostokątną macierzą diagonalną z wartościami osobliwymi (nieujemne liczby rzeczywiste) na przekątnej, a trzecia macierzą jest m x m macierzą sprzężoną transponowaną zespolonej macierzy unitarnej. Iloczyn n x n macierzy unitarnej, n x m prostokątnej macierzy diagonalnej i m x m macierzy sprzężonej transponowanej zespolonej macierzy unitarnej powinien dać oryginalną macierz.

  Jak przeprowadzić dekompozycję na wartości osobliwe (SVD) macierzy?

Musimy znaleźć pierwszą macierz hermitowską oryginalnej macierzy, mnożąc oryginalną macierz przez jej macierz transponowaną. Następnie musimy znaleźć drugą macierz hermitowską oryginalnej macierzy, mnożąc transponowaną oryginalną macierz przez oryginalną macierz. Potem musimy obliczyć wartości własne i wektory własne pierwszej macierzy hermitowskiej. Teraz musimy obliczyć wartości osobliwe, biorąc pierwiastek kwadratowy z każdej dodatniej wartości własnej pierwszej macierzy hermitowskiej. To pozwoli nam skomponować prostokątną macierz diagonalną, umieszczając wartości osobliwe na głównej przekątnej i wypełniając wszystkie inne elementy macierzy zerami. Również na tym etapie możemy znaleźć n x n zespoloną macierz unitarną, normalizując wektory własne pierwszej macierzy hermitowskiej i umieszczając je jako kolumny n x n zespolonej macierzy unitarnej. Następnie musimy znaleźć wektory własne drugiej macierzy hermitowskiej, znormalizować je i umieścić je jako kolumny m x m zespolonej macierzy unitarnej. I teraz pozostaje tylko znaleźć macierz sprzężoną transponowaną m x m zespolonej macierzy unitarnej.

  Przykład dekompozycji na wartości osobliwe (SVD) macierzy

Zapisz macierz początkową
A
:
A
=
71
7
2
8
8
5
5
5
8
Rozkład wartości osobliwych to przedstawienie macierzy
A
w postaci:
A
=
U
*
Σ
*
V
*
0
.
Macierz
U
jest złożoną macierzą unitarną o rozmiarze
n
x
n
.
Macierz
Σ
jest macierzą o tym samym rozmiarze co macierz
A
(
n
x
m
), w której wartości osobliwe znajdują się na głównej przekątnej, a wszystkie pozostałe elementy są równe zero.
Macierz
V
jest złożoną macierzą unitarną o rozmiarze
m
x
m
.
Macierz
V
*
0
jest sprzężonym przestawieniem macierzy
V
.
// gdzie
n
to liczba wierszy macierzy A
m
to liczba kolumn macierzy A
Aby wykonać rozkład wartości osobliwych macierzy
A
, należy wykonać następujące czynności:
1)
Oblicz macierz H₁ używając następującego wzoru: .
H₁
=
A
*
A
T
0
;
2)
Oblicz macierz H₂ używając następującego wzoru: .
H₂
=
A
T
0
*
A
;
3)
Oblicz wartości własne i wektory własne macierzy H₁.
4)
Oblicz wartości osobliwe poprzez wyciągnięcie pierwiastka kwadratowego z każdej dodatniej wartości własnej macierzy H₁.
5)
Uporządkuj wartości osobliwe w porządku malejącym i umieść je na głównej przekątnej macierzy Σ, a wszystkie pozostałe elementy macierzy wypełnij zerami.
6)
Znormalizuj wektory własne macierzy H₁ i umieść je jako kolumny macierzy U.
7)
Oblicz wartości własne i wektory własne macierzy H₂.
8)
Znormalizuj wektory własne macierzy H₂ i umieść je jako kolumny macierzy V.
9)
Oblicz sprzężone przestawienie (V*) macierzy V.
2
Macierz Aᵀ
A
T
0
=
71
8
5
7
8
5
2
5
8
3
Macierz H₁
H1
=
A
·
A
T
0
=
71
7
2
8
8
5
5
5
8
·
71
8
5
7
8
5
2
5
8
=
5130
586
222
586
138
94
222
94
93
4
Macierz H₂
H2
=
A
T
0
·
A
=
71
8
5
7
8
5
2
5
8
·
71
7
2
8
8
5
5
5
8
=
5094
634
406
634
153
120
406
120
114
5
Wektory własne H₁
21
24
25
2
14
25
1
-
3
20
9
10
1
2
25
-1
9
100
1
6
Macierz Σ
Σ
=
5208
33
100
0
0
0
144
19
50
0
0
0
8
7
25
=
72
17
100
0
0
0
12
1
50
0
0
0
2
22
25
7
Ortonormalizacja H₁
U
=
99
100
3
25
1
20
-
11
100
67
100
37
50
3
50
-
37
50
67
100
8
Wektory własne H₂
12
9
100
1
27
50
1
-
1
5
47
50
1
1
20
-1
3
50
1
9
Ortonormalizacja H₂
V
=
99
100
13
100
2
25
-
3
20
17
25
18
25
1
25
-
73
100
69
100
10
Macierz Vᵀ
V
T
0
=
99
100
-
3
20
1
25
13
100
17
25
-
73
100
2
25
18
25
69
100
Answer
A = U · Σ · Vᵀ
U
=
99
100
3
25
1
20
-
11
100
67
100
37
50
3
50
-
37
50
67
100
Σ
=
72
17
100
0
0
0
12
1
50
0
0
0
2
22
25
V
T
0
=
99
100
-
3
20
1
25
13
100
17
25
-
73
100
2
25
18
25
69
100
Rozmiar3×3

  Źródła