Русская Википедия:Псевдообратная матрица
Псевдообра́тная ма́трица — обобщение понятия обратной матрицы в линейной алгебре. Псевдообратная матрица к матрице <math>A</math> обозначается <math>A^+</math>.
Впервые концепцию псевдообратных интегрирующих операторов в 1903 году представил Фредгольм. Наиболее известно псевдообращение Мура — Пенроуза, которое было независимо описано Элиакимом МуромШаблон:Ref в 1920 году и Роджером ПенроузомШаблон:Ref в 1955 году; утверждение о существовании и единственности для любой матрицы над действительными и комплексными числами псевдообратной матрицы носит название теоремы Мура — Пенроуза.
Шаблон:Нп2 — псевдообращение, удовлетворяющее более строгим условиям. Псевдообращение можно понимать как решение задачи наилучшей аппроксимации (по методу наименьших квадратов с предельным вариантом регуляризации) для соответствующей системы линейных уравненийШаблон:Переход. Псевдообратная матрица может быть вычислена с помощью сингулярного разложения матрицы.
Определение
<math>A^+</math> называется псевдообратной матрицей для матрицы <math>A</math>, если она удовлетворяет следующим критериям:
- <math>A A^+A = A</math>;
- <math>A^+A A^+ = A^+</math> (<math>A^+</math> является слабым обращением в мультипликативной полугруппе);
- <math>(AA^+)^* = AA^+</math> (это означает, что <math>AA^+</math> — эрмитова матрица);
- <math>(A^+A)^* = A^+A</math> (<math>A^+A</math> — тоже эрмитова матрица).
Здесь <math>M^*</math> — эрмитово сопряжённая матрица M (для матриц над полем действительных чисел <math>M^* = M^T</math>).
Существует эквивалентный способ задания псевдообратной матрицы через предел обратных (регуляризация Тихонова):
- <math>A^+ = \lim_{\delta \to +0} (A^* A + \delta I)^{-1} A^*
= \lim_{\delta \to +0} A^* (A A^* + \delta I)^{-1}</math>,
где <math> I</math> — единичная матрица. Этот предел существует, даже если <math>(A A^*)^{-1}</math> и <math>(A^* A)^{-1}</math> не определены.
Свойства
- Псевдообращение инволютивно (то есть эта операция обратна самой себе):
- <math>(A^+)^+ = A </math>.
- Псевдообращение коммутирует с транспонированием, сопряжением и эрмитовым сопряжением:
- <math>(A^T)^+ = (A^+)^T</math>,
<math>(\overline{A})^+ = \overline{A^+} </math>,
<math>(A^*)^+ = (A^+)^* </math>.
- <math>(A^T)^+ = (A^+)^T</math>,
- Псевдообратное произведение матрицы <math>A</math> на скаляр <math>\alpha</math> равно соответствующему произведению матрицы <math>A^+</math> на обратное число <math>\alpha^{-1}</math>:
- <math>(\alpha A)^+ = \alpha^{-1} A^+ </math>, для <math>\alpha \neq 0</math>.
- Если псевдообратная матрица для <math>A^*A</math> уже известна, она может быть использована для вычисления <math>A^+</math>:
- <math>A^+ = (A^*A)^+A^* </math>.
- Аналогично, если матрица <math>(AA^*)^+</math> уже известна:
- <math>A^+ = A^*(AA^*)^+ </math>.
Особые случаи
Если столбцы матрицы <math>A</math> линейно независимы, тогда матрица <math>A^* A</math> обратима. В таком случае псевдообратная матрица задаётся формулой:
- <math>A^+ = (A^* A)^{-1} A^*</math>.
Это эквивалентно тому, что в первой части определения через предел убирается слагаемое с <math>\delta</math>. Отсюда следует что в этом случае <math>A^+</math> — левая обратная матрица для <math>A</math> : <math> A^+ A = I</math> .
Если строки матрицы <math>A</math> линейно независимы, тогда матрица <math>A A^*</math> обратима. В таком случае псевдообратная матрица задаётся формулой:
- <math>A^+ = A^*(A A^*)^{-1}</math>.
Это эквивалентно тому, что во второй части определения через предел полагаем <math>\delta=0</math>. Отсюда следует, что в этом случае <math>A^+</math> — правая обратная матрица для A: <math>A A^+ = I</math>.
Если и столбцы, и строки линейно независимы (что верно для квадратных невырожденных матриц), то псевдообращение совпадает с обращением:
- <math>A^+ = A^{-1}</math>.
Если <math>A</math> и <math>B</math> таковы, что произведение <math>AB</math> определено и:
- либо <math>A^* A = I</math>,
- либо <math>B B^* = I</math>,
- либо столбцы <math>A</math> линейно независимы и строки <math>B</math> линейно независимы,
тогда
- <math>(AB)^+ = B^+ A^+</math>.
Псевдообращение можно применять и к скалярам, и к векторам. Это подразумевает, что они рассматриваются как матрицы соответствующей размерности. Псевдообратный к скаляру <math>x</math> — ноль, если <math>x</math> — ноль, и обратный к <math>x</math> в противном случае:
- <math>x^+ = \left\{\begin{matrix} 0, & x=0;
\\ x^{-1}, & x \ne 0. \end{matrix}\right. </math>
Псевдообратный для нулевого вектора — транспонированый нулевой вектор. Псевдообратный для ненулевого вектора — сопряжённый транспонированный вектор, делённый на квадрат своей длины:
- <math>x^+ = \left\{\begin{matrix} 0^T, & x = 0;
\\ {x^* \over x^* x}, & x \ne 0. \end{matrix}\right. </math>
Для доказательства достаточно проверить, что эти величины удовлетворяют определению псевдообратных.
Происхождение
Если <math>(A^* A)^{-1}</math> существует, то из равенства:
- <math>Ax = b,</math>
следует
- <math>A^* A x = A^* b, </math>
- <math>(A^* A)^{-1}(A^* A) x = (A^* A)^{-1}A^* b, </math>
- <math>x = (A^* A)^{-1}A^* b, </math>
что порождает понятие псевдообращения
- <math>A^+ = (A^* A)^{-1}A^*</math> .
Вычисление
Пусть <math>k</math> — ранг матрицы <math>A</math> размера <math>m \times n</math>. Тогда <math>A</math> может быть представлена как <math>A = BC</math>, где B — матрица размера <math>m \times k</math> с линейно независимыми столбцами и <math>C</math> — матрица размера <math>k \times n</math> с линейно независимыми строками. Тогда:
- <math>
A^+ = C^*(CC^*)^{-1}(B^*B)^{-1}B^* </math>.
Если <math>A</math> имеет полнострочный ранг, то есть <math>k = m</math>, тогда в качестве <math>B</math> может быть выбрана единичная матрица и формула сокращается до <math>A^+ = A^*(AA^*)^{-1}</math>. Аналогично, если <math>A</math> имеет полностолбцовый ранг, то есть, <math>k = n</math>, то <math>A^+ = (A^*A)^{-1}A^*</math>.
Простейший вычислительный путь получения псевдообратной матрицы — использовать сингулярное разложение.
Если <math>A = U\Sigma V^*</math> — сингулярное разложение <math>A</math>, тогда <math>A^+ = V\Sigma^+ U^*</math>. Для диагональной матрицы, такой как <math>\Sigma</math>, псевдообратная получается из неё заменой каждого ненулевого элемента на диагонали на обратный к нему.
Существуют оптимизированые подходы вычисления псевдообратной для блочных матриц.
Иногда объём расчётов по нахождению псевдообратной матрицы можно сократить, если известна псевдообратная для некоторой аналогичной матрицы. В частности, если аналогичная матрица отличается от начальной на один изменённый, добавленный или удалённый столбец или строку — существуют накопительные алгоритмы, которые могут использовать взаимосвязь между матрицами.
Применение
Псевдообращение тесно связано с методом наименьших квадратов (МНК) для системы линейных уравненийШаблон:Ref.
В этом методе задача решения данной системы <math>A x = b</math> заменяется задачей минимизации квадрата евклидовой нормы невязки <math>\|A x - b\|^2</math>. На практике МНК обычно используют когда исходная система <math>A x = b</math> несовместна, однако ниже мы рассмотрим случай когда эта система совместна.
Общее решение неоднородной системы <math>A x = b</math> представимо как сумма частного решения неоднородной системы и общего решения соответствующей однородной системы <math>A x = 0</math>.
Лемма: Если <math>(A A^*)^{-1}</math> существует, тогда общее решение <math>x</math> всегда представимо как сумма псевдообратного решения неоднородной системы и решения однородной системы:
- <math>x = A^*(A A^*)^{-1}b + (I - A^*(A A^*)^{-1}A) y.</math>
Доказательство:
<math>Ax</math> <math>=</math> <math>A A^*(A A^*)^{-1}</math> <math>b</math> <math>+</math> <math> A y - A A^*(A A^*)^{-1} A y</math> <math>Ax</math> <math>=</math> <math>b</math> <math>+</math> <math> A y - A y</math> <math>Ax</math> <math>=</math> <math>b</math> .
Здесь вектор <math>y</math> произвольный (с точностью до размерности). В двух других членах есть псевдообратная матрица <math>A^*(A A^*)^{-1}</math>. Переписав её в форме <math>A^+</math>, приведём выражение к форме:
- <math>x = A^+ b + (I - A^+ A)y.</math>
Первый член — псевдообратное решение. В терминах метода наименьших квадратов — это <math>x</math>, дающее минимальную евклидову норму для невязки. Следующий член даёт решение однородной системы <math>A x = 0</math>, потому что <math>A^+A = A^* (A A^*)^{-1} A</math> — оператор проектирования на образ оператора <math>A^*</math> и, соответственно, <math>(I - A^+ A)</math> — оператор проектирования на ядро оператора <math>A</math>.
Литература
- Шаблон:Note Э. Х. Мур (E. H. Moore): On the reciprocal of the general algebraic matrix. Bulletin of the American Mathematical Society 26, 394—395 (1920) http://www.ams.org/bull/1920-26-09/S0002-9904-1920-03322-7/S0002-9904-1920-03322-7.pdf
- Шаблон:Note Роджер Пенроуз: A generalized inverse for matrices. Proceedings of the Cambridge Philosophical Society 51, 406—413 (1955)
- Шаблон:Note Роджер Пенроуз: On best approximate solution of linear matrix equations. Proceedings of the Cambridge Philosophical Society 52, 17-19 (1956)
- Шаблон:Note Алберт А.: Регрессия, псевдоинверсия и рекуррентное оценивание. перев. с англ. Москва, «Наука», 224 с.(1977)
- Шаблон:Note Беклемишев Д. В.: Дополнительные главы линейной алгебры. Москва, Наука. (1983)