Математика / Матрицы, определители

k-й шаг алгоритма Gram-Schmidt

Для каждого нового столбца убирают вклад уже построенных ортонормированных направлений, затем нормируют остаток. Эта формула относится к ортогонализации столбцов матрицы и объясняет, как заменить исходный набор векторов ортонормированным базисом с верхнетреугольными коэффициентами перехода.

Опубликовано: Обновлено:

Формула

$$u_k=a_k-\sum_{j=1}^{k-1}(q_j^{\top}a_k)\,q_j,\quad q_k=\frac{u_k}{\|u_k\|}$$
orthonormal-basis-axes Очистка нового вектора

Проекции на старые оси удаляются, остаётся новая независимая часть.

Каждый шаг расширяет ортонормированную систему.

Обозначения

$a_k$
текущий исходный столбец, вектор
$u_k$
остаток после вычитания, вектор
$q_k$
новый ортонормированный столбец, вектор

Условия применения

  • q1...q_{k-1} уже ортонормированы
  • u_k \neq 0

Ограничения

  • Численно неустойчиво для почти зависимых столбцов
  • Нужен полный столбцовый ранг

Подробное объяснение

k-й шаг алгоритма Gram-Schmidt задает конкретную связь между величинами: a_k - текущий исходный столбец (вектор); u_k - остаток после вычитания (вектор); q_k - новый ортонормированный столбец (вектор). Запись u_k=a_k-\sum_{j=1}^{k-1}(q_j^{\top}a_k)\,q_j,\quad q_k=\frac{u_k}{\|u_k\|} показывает, какие данные входят в расчет и какая величина получается на выходе. Поэтому сначала нужно определить смысл каждого символа, а уже затем выполнять арифметику или алгебраическое преобразование. Идея формулы опирается на определение или модель из темы «linear-algebra». В простых случаях результат получается прямой подстановкой, а в более сложных - после выбора корректного диапазона, направления, знака, интервала или базовой величины. Если поменять исходное допущение, меняется и интерпретация ответа, даже когда сама запись формулы выглядит той же. Поведение результата нужно проверять по зависимости от входных данных. Если один множитель растет, итог может увеличиваться пропорционально; если величина стоит в знаменателе, рост этой величины уменьшает результат; если используются степени, площади, объемы, вероятности или проценты, эффект становится нелинейным. Такая проверка помогает заметить ошибку знака, единиц или масштаба еще до окончательного ответа. На практике k-й шаг алгоритма gram-schmidt используют для расчетной проверки, сравнения сценариев и объяснения, почему полученное число имеет именно такой порядок. В учебной задаче это дает ход решения, в отчете - прозрачный контроль исходных данных, а в прикладной модели - понятную связь между формулой и решением. Перед подстановкой полезно отдельно записать условия: какие величины известны, какие единицы используются, нет ли деления на ноль, отрицательных значений там, где они невозможны, или смешения относительных и абсолютных показателей. После вычисления ответ проверяют обратной подстановкой, оценкой размерности или сравнением с крайним случаем.

Как пользоваться формулой

  1. Вычислите q_j^T a_k для j<k.
  2. Найдите u_k вычитанием взвешенных q_j.
  3. Нормируйте, получая q_k.
  4. После вычисления проверьте одновременно два равенства: Q^T Q=I и QR=A с допустимой численной погрешностью.

Историческая справка

Итеративная схема Грама-Шмидта — классический практичный способ построения ортогональных базисов. Ортогонализация как вычислительная идея выросла из работ по векторам, проекциям и методу наименьших квадратов. В современном виде QR-разложение стало особенно важным после появления машинных вычислений, когда стало ясно, что нормальные уравнения могут ухудшать обусловленность. Методы Грама-Шмидта, Хаусхолдера и Гивенса дали разные способы получить ту же структуру Q и R, но с разной численной устойчивостью. В послевоенной численной математике ортогональные разложения стали одним из ответов на ограниченную точность машинных вычислений. QR-разложение оказалось удобным компромиссом: оно сохраняет геометрию задачи и приводит ее к треугольной системе, которую можно надежно решать.

Историческая линия формулы

Алгоритм активно используется во всех курсах линейной алгебры как базовый инструмент QR. Связь с процессом Грама-Шмидта относится к построению ортонормированного базиса. Современная вычислительная роль QR-разложения сформировалась в численной линейной алгебре XX века и не сводится к одному автору.

Пример

a1=(1,1), a2=(1,-1): q1=(1/√2,1/√2), q1^Ta2=0, q2=(-1/√2,1/√2). В вычислительном примере для "k-й шаг алгоритма Gram-Schmidt" важно контролировать два свойства одновременно. Во-первых, столбцы Q должны иметь единичную длину и быть попарно ортогональны, то есть Q^T Q близко к единичной матрице. Во-вторых, произведение QR должно восстанавливать исходную матрицу A с допустимой погрешностью. Если первое свойство выполнено, но A не восстанавливается, ошибка вероятна в коэффициентах R. Если A восстанавливается, но Q^T Q заметно отличается от I, разложение может быть непригодным для устойчивых расчетов.

Частая ошибка

Забывают вычитать по всем предыдущим векторам q_j. Частая ошибка - воспринимать QR как обычное разложение на любые две матрицы. Смысл QR именно в ортонормированности Q и верхнетреугольности R. Также нельзя забывать, что классический процесс Грама-Шмидта может быть численно нестабилен для почти зависимых столбцов; в практических вычислениях часто используют модифицированный вариант, отражения Хаусхолдера или вращения Гивенса.

Практика

Задачи с решением

Вычислить q2

Условие. a1=(2,1), a2=(1,2)

Решение. q1=(2/√5,1/√5), q1^T a2=4/√5, q2=(-1/√5,2/√5)

Ответ. q2=(-1/√5,2/√5)

Ортогональный случай

Условие. a1=(1,1), a2=(1,-1)

Решение. q2=(1/√2,-1/√2)

Ответ. q2=(1/√2,-1/√2)

Дополнительные источники

  • Golub & Van Loan, Matrix Computations
  • Strang, Introduction to Linear Algebra
  • MIT OCW 18.06SC
  • Gilbert Strang. Introduction to Linear Algebra, Wellesley-Cambridge Press
  • Sheldon Axler. Linear Algebra Done Right, Springer

Связанные формулы

Математика

Первый вектор в Gram-Schmidt

$q_1=\frac{a_1}{\|a_1\|}$

Нормировка первого столбца задает первый ортонормированный вектор. Эта формула относится к ортогонализации столбцов матрицы и объясняет, как заменить исходный набор векторов ортонормированным базисом с верхнетреугольными коэффициентами перехода.

Математика

Коэффициенты R через скалярные произведения

$R_{ij}=q_i^{\top}a_j,\quad a_j=\sum_{i=1}^{j}R_{ij}q_i,\quad R_{ij}=0\ (i>j)$

После построения Q каждую колонку a_j раскладывают по уже найденным q_i. Эта формула относится к ортогонализации столбцов матрицы и объясняет, как заменить исходный набор векторов ортонормированным базисом с верхнетреугольными коэффициентами перехода.

Математика

Формула QR-разложения

$A = QR,\quad Q^{\top}Q=I_r,\quad R \text{ верхнетреугольная}$

Матрица A раскладывается в произведение ортонормированной матрицы Q и верхнетреугольной R. Эта формула относится к ортогонализации столбцов матрицы и объясняет, как заменить исходный набор векторов ортонормированным базисом с верхнетреугольными коэффициентами перехода.

Математика

Ортогональность векторов через скалярное произведение

$u\cdot v=0$

Два вектора ортогональны, если их скалярное произведение равно нулю. В евклидовом пространстве это означает взаимную перпендикулярность направлений и дает алгебраический способ проверять прямые углы.