Псевдообратная матрица

Материал из MachineLearning.

Версия от 01:44, 12 ноября 2009; Vokov (Обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Псевдообратные матрицы — обобощение обратных матриц в линейной алгебре. Псевдообратная матрица к матрице A обозначается A^+. Псевдообращение можно понимать как наилучшую апроксимацию (по методу наименьших квадратов) решения соответствующей системы линейных уравнений. Псевдообращение определено для любых матриц над действительными и комплексными числами. Псевдообратная матрица может быть вычислена с помощью собственного представления матрицы.

Содержание

Определение

A^+ называется псевдообратной матрицей для матрицы A, если она удовлетворяет следующим критериям:

  1. A A^+A = A;
  2. A^+A A^+ = A^+       (A^+ является слабым обращением в мультипликативной полугруппе);
  3. (AA^+)^* = AA^+       (это означает, что AA^+ — эрмитова матрица);
  4. (A^+A)^* = A^+A       (A^+A - тоже эрмитова матрица).

Здесь M^* - эрмитова сопряжённая матрица M. Для матриц над полем действительных чисел M^* = M^T.

Происхождение

По методу наименьших квадратов для решения несовместной СЛАУ A\mathbf{x}=\mathbf{b}, состоящей из M уравнений с N неизвестными, необходимо решить уравнение

A^TA\mathbf{x}=A^T\mathbf{b},

называемое нормальным уравнением. Пусть столбцы матрицы A линейно независимы, тогда она обратима и система имеет единственное решение

\mathbf{x}=(A^TA)^{-1}A^T\mathbf{b}.

Таким образом мы приходим к понятию псевдообращения действительных матриц:

A^+=(A^TA)^{-1}A^T.

Свойства

  • Псевдообращение обратимо, более того, эта операция обратна самой себе:
    (A^+)^+ = A .
  • Псевдообращение коммутирует с транспонированием, сопряжением и эрмитовым сопряжением:
    (A^T)^+ = (A^+)^T,
    (\overline{A})^+ = \overline{A^+} ,
    (A^*)^+ = (A^+)^* .
  • Псевдообратное произведения матрицы A на скаляр \alpha равно соответствующему произведению матрицы A^+ на обратное число \alpha^{-1}:
    (\alpha A)^+ = \alpha^{-1} A^+ , для \alpha ≠ 0.
  • Если псевдообратная матрица для A^*A уже известна, она может быть использовано для вычисления A^+:
    A^+ = (A^*A)^+A^* .
  • Аналогично, если матрица (AA^*)^+ уже известна:
    A^+ = A^*(AA^*)^+ .

Особые случаи

  • Если столбцы матрицы A линейно независимы, тогда матрица A^* A обратима. В таком случае псевдообратная матрица задаётся формулой
A^+ = (A^* A)^{-1} A^*.

Отсюда следует что A^+ - левая обратная матрица для A:    A^+ A = I .

  • Если строки матрицы A линейно независимы, тогда матрица A A^* обратима. В таком случае псевдообратная матрица задаётся формулой
A^+ = A^*(A A^*)^{-1}.

Отсюда следует, что A^+ — правая обратная матрица для A:   A A^+ = I .

  • Если и столбцы и строки линейно независимы (что верно для квадратных невырожденных матриц), псевдообращение равно обращению:
A^+ = A^{-1} .
  • Если A и B таковы, что произведение AB определено, и
    • либо A^* A = I,
    • либо B B^* = I,
    • либо столбцы A линейно независимы и строки B линейно независимы, тогда (AB)^+ = B^+ A^+.
  • Псевдообращение можно применять и к скалярам, и к векторам. Псевдообратный к скаляру x — ноль, если x — ноль, и обратный к x в противном случае:
x^+ = \left\{\begin{matrix} 0, & x=0; \\ x^{-1}, & x \ne 0. \end{matrix}\right.
  • Псевдообратный для нулевого вектора - транспонированый нулевой вектор. Псевдообратный для иного вектора - сопряжённый транспонированный вектор, делённый на квадрат своей длины:
x^+ = \left\{\begin{matrix} 0^T, & x = 0;\\ {x^* \over x^* x}, & x \ne 0. \end{matrix}\right.

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

Вычисление

Простейший вычислительный путь получения псевдообратной матрицы — использование собственного представления матрицы (СПМ).

Если A = U\Sigma V^* — собственное представление A, тогда A^+ = V\Sigma^+ U^*. Для диагональной матрицы, такой как \Sigma, псевдообратная вычисляется обращением каждого ненулевого элемента на диагонали.

Существуют оптимизированые подходы для вычисления псевдоинверсии блочных матриц.

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

См. также

Личные инструменты