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

Формула Шермана-Моррисона

Формула Шермана-Моррисона дает обратную матрицу после рангового обновления A+uv^T. Она позволяет обновить уже известную обратную матрицу без полного повторного обращения.

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

Формула

$$(A+uv^T)^{-1}=A^{-1}-\frac{A^{-1}uv^TA^{-1}}{1+v^TA^{-1}u}$$
rank-one-inverse Поправка к обратной матрице

Показать A^{-1} и вычитаемую матрицу ранга один как внешнее произведение двух векторов.

Формула обновляет обратную матрицу одной ранговой поправкой.

Обозначения

$A$
обратимая квадратная матрица, безразмерная
$u,v$
векторы согласованной размерности, безразмерная
$uv^T$
ранговое обновление, безразмерная
$1+v^TA^{-1}u$
скалярный знаменатель формулы, безразмерная

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

  • Матрица A должна быть обратимой.
  • Скаляр 1+v^TA^{-1}u не должен быть равен нулю.
  • Размеры u и v должны соответствовать размеру A.

Ограничения

  • Если знаменатель близок к нулю, обновленная матрица плохо обусловлена или вырождена.
  • В современных вычислениях хранение явной обратной матрицы часто хуже факторизаций.
  • Формула описывает только ранговое обновление ранга один.

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

Формула Шермана-Моррисона является частным случаем идеи рангового обновления. Обратная матрица A^{-1} уже описывает решение системы Ax=b. Добавка uv^T меняет оператор только в одном направлении, поэтому поправка к обратной матрице тоже имеет ранг один. Знаменатель нормирует эту поправку и одновременно проверяет обратимость новой матрицы. Если он равен нулю, лемма об определителе показывает, что det(A+uv^T)=0. Поэтому формула тесно связана с обновлением определителя и с более общей формулой Вудбери для обновлений большего ранга. При работе с этой формулой важно сначала проверить размерности матриц и смысл операции. В линейной алгебре многие ошибки выглядят как верные алгебраические преобразования, но ломаются на уровне размеров: нельзя менять порядок множителей, если произведение после перестановки уже не определено, и нельзя считать обратную матрицу существующей без проверки невырожденности. В численных задачах дополнительно смотрят на обусловленность, потому что формально корректная запись может давать нестабильный ответ при округлении. Поэтому формулу полезно читать не только как способ вычисления, но и как способ увидеть структуру задачи: какие подпространства участвуют, где появляется проекция, где требуется ортогональность, а где достаточно рангового обновления.

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

  1. Убедитесь, что A обратима и известна надежная форма решения с A.
  2. Вычислите p=A^{-1}u и q^T=v^TA^{-1}.
  3. Проверьте знаменатель 1+v^T p.
  4. Соберите поправку p q^T /(1+v^T p) и вычтите ее из A^{-1}.

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

Формулы быстрого обновления обратных матриц получили большое значение в середине XX века, когда вычислительные ресурсы были дорогими, а модели приходилось пересчитывать последовательно. Формула Шермана-Моррисона стала стандартным частным случаем для обновления ранга один. Современная запись этой формулы сложилась не сразу. Сначала похожие идеи появлялись в задачах решения систем линейных уравнений, теории квадратичных форм, аналитической механике и статистике, где матрицы использовали как компактный язык для больших наборов коэффициентов. В XX веке развитие численного анализа, вычислительной техники и прикладной статистики сделало такие тождества особенно важными: стало нужно не просто доказать существование решения, а уметь устойчиво считать его на реальных данных. Поэтому историческую атрибуцию здесь лучше понимать как цепочку вкладов: алгебраическая идея, удобная матричная запись, численный алгоритм и прикладная интерпретация часто были оформлены разными авторами и школами.

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

Название связано с Джеком Шерманом и Уинфредом Моррисоном. В учебном изложении формула обычно рассматривается как частный случай более общей формулы Вудбери. Формулы ранговых обновлений связаны с несколькими именами и задачами численной линейной алгебры XX века. Их корректно подавать как семейство тождеств для обновления обратных матриц и определителей, где частный случай ранга один переходит в более общую формулу Вудбери.

Пример

Представьте, что для матрицы A уже известна обратная матрица, а затем в модель добавили одно наблюдение, которое меняет матрицу на uv^T. Формула показывает, какую поправку нужно вычесть из A^{-1}. Если знаменатель большой, поправка умеренная; если он близок к нулю, обновление резко меняет обратную матрицу и сигнализирует о численной опасности. Для "Формула Шермана-Моррисона" характерна ситуация, когда большая матрица уже разобрана или обращена, а новая информация добавляет малое ранговое изменение. В численном примере важно сравнить стоимость: пересчитать все с нуля дорого, а ранговая формула требует решить несколько систем с прежней матрицей и обратить малую внутреннюю матрицу или даже один скаляр. При этом знаменатель или малая матрица внутри формулы служат индикатором опасности: если они близки к вырождению, обновление может резко ухудшить устойчивость.

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

Типичная ошибка - забыть знаменатель 1+v^TA^{-1}u или поставить в нем минус. Еще одна ошибка - перепутать порядок множителей в числителе: A^{-1}u - это столбец, v^TA^{-1} - строка, а их произведение дает матрицу. Нельзя применять формулу, если знаменатель равен нулю, потому что обновленная матрица тогда не обратима.

Практика

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

Проверка знаменателя

Условие. Если v^T A^{-1}u=-1, можно ли применить формулу?

Решение. Нет. Знаменатель 1+v^T A^{-1}u равен нулю, поэтому A+uv^T вырождена и обратная матрица не существует.

Ответ. Нельзя, знаменатель равен нулю.

Размер поправки

Условие. A имеет размер 4 на 4, u и v - векторы длины 4. Какой размер имеет A^{-1}uv^TA^{-1}?

Решение. A^{-1}u - столбец 4 на 1, v^T A^{-1} - строка 1 на 4. Их произведение имеет размер 4 на 4.

Ответ. 4 на 4.

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

  • Г. Стрэнг, Введение в линейную алгебру
  • Д. Лэй, Линейная алгебра и ее приложения
  • G. H. Golub, C. F. Van Loan, Matrix Computations
  • MIT OpenCourseWare, Linear Algebra

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

Математика

Лемма об определителе матрицы

$\det(A+uv^T)=\det(A)\left(1+v^TA^{-1}u\right)$

Лемма об определителе показывает, как меняется определитель обратимой матрицы при ранговом обновлении uv^T. Вместо пересчета всего определителя достаточно вычислить один скаляр.

Математика

Формула Вудбери

$(A+UCV)^{-1}=A^{-1}-A^{-1}U(C^{-1}+VA^{-1}U)^{-1}VA^{-1}$

Формула Вудбери обобщает обновление обратной матрицы на добавку малого ранга UCV. Она позволяет заменить обращение большой матрицы обращением меньшей матрицы.

Математика

Обратная блочной матрицы через дополнение Шура

$\begin{pmatrix}A&B\\C&D\end{pmatrix}^{-1}=\begin{pmatrix}A^{-1}+A^{-1}BS^{-1}CA^{-1}&-A^{-1}BS^{-1}\\-S^{-1}CA^{-1}&S^{-1}\end{pmatrix},\quad S=D-CA^{-1}B$

Формула обращает блочную матрицу через обратный блок A и обратное дополнение Шура. Она показывает, как получить обратную матрицу без обращения всей матрицы целиком.

Математика

Псевдообратная для решения МНК

$\hat x=A^+b,\qquad A^+=(A^\top A)^{-1}A^\top\ (\operatorname{rank}(A)=n).$

Псевдообратная матрица A^+ записывает МНК-решение как x=A^+b и обобщает обратную матрицу на прямоугольные и вырожденные системы.