Перейти к основному содержимому

Линейная алгебра

Play ITЗагрузка интерактивного демо…

Архитектору Инженеру

Линейная алгебра изучает векторные пространства и линейные преобразования — те, где удвоение входа удваивает выход. В IT это язык данных: признаки — векторы, слои нейросети и повороты камеры — матрицы, ограничения в задачах планирования — системы уравнений Ax = b.

Карта дисциплин: Виды математических наук.

«Вектор» в IT — три разных смысла
  • Математика (LA): упорядоченный набор чисел — признаки, веса; см. Векторы.
  • Эмбеддинги (ML/NLP): плотное представление слова или документа в пространстве смыслов — тоже числовой вектор, но семантика другая; см. эмбеддинги.
  • Графика (SVG): направленный отрезок с координатами — векторная графика, не линейная алгебра в строгом смысле.

В этой главе и в 342 / 343 речь о математических векторах и матрицах.


Карта раздела

ТемаСтатьяЧто внутри
Векторы342 — ВекторыПредставления, операции, длина, нормализация, dot product, задачи
Матрицы343 — МатрицыВиды матриц, сложение, умножение, транспонирование, тренировки
NumPy337 — NumPyМассивы и LA в коде; практика — Lab 1129
Перцептрон6-03/2Первое обучение: матрица весов × batch
Keras/TF6-03/114Глубокое обучение поверх тех же тензоров

Рекомендуемый порядок: 341 → эта статья → 342343337.


Зачем 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.

Дальше: ВекторыМатрицыВероятность и статистика.