Линейная алгебра
Play ITЗагрузка интерактивного демо…
Линейная алгебра изучает векторные пространства и линейные преобразования — те, где удвоение входа удваивает выход. В IT это язык данных: признаки — векторы, слои нейросети и повороты камеры — матрицы, ограничения в задачах планирования — системы уравнений Ax = b.
Карта дисциплин: Виды математических наук.
- Математика (LA): упорядоченный набор чисел — признаки, веса; см. Векторы.
- Эмбеддинги (ML/NLP): плотное представление слова или документа в пространстве смыслов — тоже числовой вектор, но семантика другая; см. эмбеддинги.
- Графика (SVG): направленный отрезок с координатами — векторная графика, не линейная алгебра в строгом смысле.
В этой главе и в 342 / 343 речь о математических векторах и матрицах.
Карта раздела
| Тема | Статья | Что внутри |
|---|---|---|
| Векторы | 342 — Векторы | Представления, операции, длина, нормализация, dot product, задачи |
| Матрицы | 343 — Матрицы | Виды матриц, сложение, умножение, транспонирование, тренировки |
| NumPy | 337 — NumPy | Массивы и LA в коде; практика — Lab 1129 |
| Перцептрон | 6-03/2 | Первое обучение: матрица весов × batch |
| Keras/TF | 6-03/114 | Глубокое обучение поверх тех же тензоров |
Рекомендуемый порядок: 341 → эта статья → 342 → 343 → 337.
Зачем LA в работе
- Машинное обучение: веса слоёв, эмбеддинги, attention, PCA.
- Компьютерная графика: цепочка model–view–projection.
- Изображения и сигналы: пиксели и фильтры как матрицы; свёртка — линейная операция.
- Оптимизация: градиент — вектор частных производных; гессиан — матрица вторых производных; линейное программирование — раздел 3.12.
Определитель, обратная матрица, Ax = b
Для квадратной матрицы определитель det(A) отражает «объём» искажения (в 2D — площадь параллелограмма столбцов). det(A) = 0 → матрица вырожденная, преобразование сжимает пространство.
Если det(A) ≠ 0, существует обратная A⁻¹: A·A⁻¹ = I. Теоретически Ax = b решается как x = A⁻¹b, но на практике предпочитают метод Гаусса или numpy.linalg.solve — устойчивее и быстрее на больших размерностях.
В ML системы решают итеративно или через разложения (SVD, QR), а не явным обращением.
Метод Гаусса и Жордана–Гаусса
Метод Гаусса (прямой ход + обратная подстановка) приводит систему к ступенчатому виду.
Метод Жордана–Гаусса обнуляет столбец и выше, и ниже ведущей строки — в базисных столбцах получается единичная подматрица.
| Гаусс | Жордан–Гаусс | |
|---|---|---|
| Результат | треугольная система | почти Ix = b' для базиса |
| Типичное применение | numpy.linalg.solve, МНК | симплекс-таблица, начальный базис |
Подробнее в математическом программировании.
Матрица × вектор в коде
import numpy as np
W = np.array([[0.2, 0.1], [0.0, 0.5], [0.3, -0.2]]) # 3×2
x = np.array([1.0, 2.0])
y = W @ x
print(y) # [0.4, 1.0, -0.1]
Разбор операций — в 343 и 337.
Дальше: Векторы → Матрицы → Вероятность и статистика.