Матрицы
Матрица представляет собой набор чисел .
Матрица представляет собой прямоугольный массив .
Матрица состоит из строк и столбцов .
Размеры матрицы
Эта матрица имеет 1 строку и 3 столбца:
Размер матрицы ( 1 x 3 ).
Эта матрица имеет 2 строки и 3 столбца:
Размер матрицы равен ( 2 x 3 ).
Квадратные матрицы
Квадратная матрица — это матрица с одинаковым количеством строк и столбцов.
Матрица размера n на n известна как квадратная матрица порядка n.
Матрица 2 на 2 (квадратная матрица порядка 2):
Матрица 4 на 4 (квадратная матрица порядка 4):
С = |
1 |
-2 |
3 |
4 |
5 |
6 |
-7 |
8 |
4 |
3 |
2 |
-1 |
8 |
7 |
6 |
-5 |
|
Диагональные матрицы
Диагональная матрица имеет значения на диагональных элементах и ноль на остальных:
Скалярные матрицы
Скалярная матрица имеет равные элементы по диагонали и ноль на остальных:
С = |
3 |
0 |
0 |
0 |
0 |
3 |
0 |
0 |
0 |
0 |
3 |
0 |
0 |
0 |
0 |
3 |
|
Матрица идентичности
Матрица идентичности имеет 1 по диагонали и 0 по остальным.
Это матричный эквивалент 1. Символ I .
я = |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
|
Если умножить любую матрицу на единичную матрицу, результат будет равен оригиналу.
Нулевая матрица
Нулевая матрица (нулевая матрица) содержит только нули.
Равные матрицы
Матрицы равны , если каждый элемент соответствует:
Отрицательные матрицы
Негатив матрицы легко понять:
Линейная алгебра в JavaScript
В линейной алгебре самым простым математическим объектом является скаляр :
Другой простой математический объект — это Array :
const array = [ 1, 2, 3 ];
Матрицы представляют собой двумерные массивы :
const matrix = [ [1,2],[3,4],[5,6] ];
Векторы можно записать в виде матриц только с одним столбцом:
const vector = [ [1],[2],[3] ];
Векторы также могут быть записаны как массивы :
const vector = [ 1, 2, 3 ];
Матричные операции JavaScript
Программирование матричных операций в JavaScript может легко превратиться в спагетти из циклов.
Использование библиотеки JavScript избавит вас от головной боли.
Одна из наиболее распространенных библиотек для матричных операций называется math.js.
Его можно добавить на вашу веб-страницу с помощью одной строки кода:
Использование math.js
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjs/9.3.2/math.js"></script>
Добавление матриц
Если две матрицы имеют одинаковую размерность, мы можем их сложить:
Пример
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] ]
Вычитание матриц
Если две матрицы имеют одинаковую размерность, мы можем их вычесть:
Пример
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] ]
Чтобы сложить или вычесть матрицы, они должны иметь одинаковую размерность.
Скалярное умножение
В то время как числа в строках и столбцах называются матрицами , отдельные числа называются скалярами .
Матрицу легко умножить на скаляр. Просто умножьте каждое число в матрице на скаляр:
Пример
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] ]
Пример
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] ]
Транспонировать матрицу
Транспонировать матрицу означает заменить строки столбцами.
Когда вы меняете местами строки и столбцы, вы вращаете матрицу по диагонали.
Умножение матриц
Умножение матриц сложнее.
Мы можем перемножать две матрицы только в том случае, если количество строк в матрице A совпадает с количеством столбцов в матрице B.
Затем нам нужно скомпилировать «точечный продукт»:
Нам нужно умножить числа в каждой строке A на числа в каждом столбце B , а затем добавить продукты:
Пример
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] ]
Объяснение:
А |
|
Б |
|
С |
|
С |
|
Икс |
|
знак равно |
1х1 + 2х1 + 3х1 |
1х2 + 2х2 + 3х2 |
1х3 + 2х3 + 3х3 |
|
знак равно |
|
Если вы знаете, как перемножать матрицы, вы сможете решить множество сложных уравнений.
Пример
Вы продаете розы.
- Красные розы по 3 доллара за штуку.
- Белые розы по 4 доллара за штуку.
- Желтые розы по 2 доллара за штуку.
- В понедельник вы продали 260 роз
- Во вторник ты продал 200 роз
- В среду вы продали 120 роз
Какова была стоимость всех продаж?
|
$3 |
4 доллара |
2 доллара |
пн | 120 | 80 | 60 |
Вт | 90 | 70 | 40 |
Мы б | 60 | 40 | 20 |
А |
|
Б |
|
С |
|
С |
|
Икс |
120 |
80 |
60 |
90 |
70 |
40 |
60 |
40 |
20 |
|
знак равно |
800 долларов |
630 долларов США |
380 долларов США |
|
знак равно |
|
Пример
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] ]
Объяснение:
А |
|
Б |
|
С |
|
С |
|
Икс |
120 |
80 |
60 |
90 |
70 |
40 |
60 |
40 |
20 |
|
знак равно |
3x120 долларов + 4x80 долларов + 2x60 долларов |
3x90$ + 4x70$ + 2x40$ |
3x60 долларов + 4x40 долларов + 2x20 долларов |
|
знак равно |
800 долларов |
630 долларов США |
380 долларов США |
|
Матричная факторизация
С ИИ вам нужно знать, как разложить матрицу на множители.
Матричная факторизация — ключевой инструмент в линейной алгебре, особенно в методе линейных наименьших квадратов.