Matryce
Macierz to zbiór liczb .
Macierz to tablica prostokątna .
Macierz jest ułożona w Wiersze i Kolumny .
Wymiary matrycy
Ta macierz ma 1 wiersz i 3 kolumny:
Wymiar matrycy to ( 1 x 3 ).
Ta macierz ma 2 wiersze i 3 kolumny:
Wymiar matrycy to ( 2 x 3 ).
Macierze kwadratowe
Macierz kwadratowa to macierz o tej samej liczbie wierszy i kolumn.
Macierz n na n jest znana jako macierz kwadratowa rzędu n.
Macierz 2 na 2 (macierz kwadratowa rzędu 2):
Macierz 4 na 4 (macierz kwadratowa rzędu 4):
C = |
1 |
-2 |
3 |
4 |
5 |
6 |
-7 |
8 |
4 |
3 |
2 |
-1 |
8 |
7 |
6 |
-5 |
|
Macierze przekątne
Macierz przekątna ma wartości na przekątnych wpisów i zero w pozostałych:
Macierze skalarne
Macierz skalarna ma równe wpisy po przekątnej i zero w pozostałych:
C = |
3 |
0 |
0 |
0 |
0 |
3 |
0 |
0 |
0 |
0 |
3 |
0 |
0 |
0 |
0 |
3 |
|
Macierz tożsamości
Identity Matrix ma 1 na przekątnej i 0 na pozostałych.
To jest macierzowy odpowiednik 1. Symbolem jest I .
ja = |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
|
Jeśli pomnożysz dowolną macierz przez macierz jednostkową, wynik będzie równy oryginałowi.
Matryca zerowa
Macierz zerowa (macierz zerowa) ma tylko zera.
Równe macierze
Macierze są równe , jeśli każdy element odpowiada:
Macierze ujemne
Negatyw macierzy jest łatwy do zrozumienia:
Algebra liniowa w JavaScript
W algebrze liniowej najprostszym obiektem matematycznym jest Skalar :
Innym prostym obiektem matematycznym jest Array :
const array = [ 1, 2, 3 ];
Macierze są tablicami dwuwymiarowymi :
const matrix = [ [1,2],[3,4],[5,6] ];
Wektory można zapisać jako macierze z tylko jedną kolumną:
const vector = [ [1],[2],[3] ];
Wektory można również zapisać jako tablice :
const vector = [ 1, 2, 3 ];
Operacje na macierzy JavaScript
Programowanie operacji na macierzach w JavaScript może łatwo stać się spaghetti pętli.
Korzystanie z biblioteki JavScript pozwoli Ci zaoszczędzić wiele bólu głowy.
Jedna z najpopularniejszych bibliotek używanych do operacji na macierzach nazywa się math.js .
Można go dodać do swojej strony internetowej za pomocą jednego wiersza kodu:
Korzystanie z math.js
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjs/9.3.2/math.js"></script>
Dodawanie macierzy
Jeśli dwie macierze mają ten sam wymiar, możemy je dodać:
Przykład
const mA = math.matrix([[1, 2], [3, 4], [5, 6]]);
const mB = math.matrix([[1,-1], [2,-2], [3,-3]]);
// Matrix Addition
const matrixAdd = math.add(mA, mB);
// Result [ [2, 1], [5, 2], [8, 3] ]
Odejmowanie macierzy
Jeśli dwie macierze mają ten sam wymiar, możemy je odjąć:
Przykład
const mA = math.matrix([[1, 2], [3, 4], [5, 6]]);
const mB = math.matrix([[1,-1], [2,-2], [3,-3]]);
// Matrix Subtraction
const matrixSub = math.subtract(mA, mB);
// Result [ [0, 3], [1, 6], [2, 9] ]
Aby dodać lub odjąć macierze, muszą one mieć ten sam wymiar.
Mnożenie przez skalar
Podczas gdy liczby w wierszach i kolumnach nazywane są macierzami , pojedyncze liczby nazywane są skalarami .
Łatwo jest pomnożyć macierz przez skalar. Po prostu pomnóż każdą liczbę w macierzy przez skalar:
Przykład
const mA = math.matrix([[1, 2], [3, 4], [5, 6]]);
// Matrix Multiplication
const matrixMult = math.multiply(2, mA);
// Result [ [2, 4], [6, 8], [10, 12] ]
Przykład
const mA = math.matrix([[0, 2], [4, 6], [8, 10]]);
// Matrix Division
const matrixDiv = math.divide(mA, 2);
// Result [ [0, 1], [2, 3], [4, 5] ]
Transponuj macierz
Transpozycja macierzy oznacza zastąpienie wierszy kolumnami.
Kiedy zamieniasz wiersze i kolumny, obracasz macierz wokół jej przekątnej.
Mnożenie macierzy
Mnożenie macierzy jest trudniejsze.
Dwie macierze możemy pomnożyć tylko wtedy, gdy liczba wierszy w macierzy A jest równa liczbie kolumn w macierzy B.
Następnie musimy skompilować „iloczyn skalarny”:
Musimy pomnożyć liczby w każdym rzędzie A przez liczby w każdej kolumnie B , a następnie dodać produkty:
Przykład
const mA = math.matrix([[1, 2, 3]]);
const mB = math.matrix([[1, 2, 3], [1, 2, 3], [1, 2, 3]]);
// Matrix Multiplication
const matrixMult = math.multiply(mA, mB);
// Result [ [6, 12, 18] ]
Wyjaśniono:
A |
|
b |
|
C |
|
C |
|
x |
|
= |
1x1 + 2x1 + 3x1 |
1x2 + 2x2 + 3x2 |
1x3 + 2x3 + 3x3 |
|
= |
|
Jeśli wiesz, jak mnożyć macierze, możesz rozwiązać wiele złożonych równań.
Przykład
Sprzedajesz róże.
- Czerwone róże kosztują 3 dolary za sztukę
- Białe róże kosztują 4 USD za sztukę
- Żółte róże kosztują 2 dolary za sztukę
- W poniedziałek sprzedałeś 260 róż
- We wtorek sprzedałeś 200 róż
- W środę sprzedałeś 120 róż
Jaka była wartość całej sprzedaży?
|
3 zł |
4 zł |
$2 |
pon | 120 | 80 | 60 |
Wt | 90 | 70 | 40 |
Poślubić | 60 | 40 | 20 |
A |
|
b |
|
C |
|
C |
|
x |
120 |
80 |
60 |
90 |
70 |
40 |
60 |
40 |
20 |
|
= |
|
= |
|
Przykład
const mA = math.matrix([[3, 4, 2]]);
const mB = math.matrix([[120, 90, 60], [80, 70, 40], [60, 40, 20]);
// Matrix Multiplication
const matrixMult = math.multiply(mA, mB);
// Result [ [800, 630, 380] ]
Wyjaśniono:
A |
|
b |
|
C |
|
C |
|
x |
120 |
80 |
60 |
90 |
70 |
40 |
60 |
40 |
20 |
|
= |
3x120 zł + 4x80 zł + 60 zł |
3x90zł + 4x70zł + 2złx40 |
3x60 + 4x40 + 2x20 |
|
= |
|
Faktoryzacja macierzy
W przypadku sztucznej inteligencji musisz wiedzieć, jak rozłożyć macierz na czynniki.
Faktoryzacja macierzy jest kluczowym narzędziem w algebrze liniowej, zwłaszcza w liniowych najmniejszych kwadratach.