Участник:Василий Ломакин/Псевдообратная матрица
Материал из MachineLearning.
(Новая: '''Псевдообратные матрицы''' — обобощение обратных матриц в математике и, в частности, в линейной алгеб...) |
|||
Строка 1: | Строка 1: | ||
- | '''Псевдообратные матрицы''' — обобощение обратных матриц | + | '''Псевдообратные матрицы''' — обобощение обратных матриц в линейной алгебре. |
- | Псевдообратная матрица к матрице <tex>A</tex> обозначается <tex>A^+</tex> | + | Псевдообратная матрица к матрице <tex>A</tex> обозначается <tex>A^+</tex>. |
- | + | Псевдообращение можно понимать как наилучшую апроксимацию (по методу наименьших квадратов) решения соответствующей системы линейных уравнений. Псевдообращение определено для любых матриц над действительными и комплексными числами. | |
- | + | ||
- | Псевдообращение можно понимать как наилучшую апроксимацию (по методу наименьших квадратов) решения соответствующей системы линейных уравнений | + | |
Псевдообратная матрица может быть вычислена с помощью собственного представления матрицы. | Псевдообратная матрица может быть вычислена с помощью собственного представления матрицы. | ||
Строка 16: | Строка 14: | ||
Здесь <tex>M^*</tex> - эрмитова сопряжённая матрица ''M''. Для матриц над полем действительных чисел <tex>M^* = M^T</tex>. | Здесь <tex>M^*</tex> - эрмитова сопряжённая матрица ''M''. Для матриц над полем действительных чисел <tex>M^* = M^T</tex>. | ||
- | + | == Происхождение == | |
- | + | ||
- | + | По методу наименьших квадратов для решения несовместной СЛАУ <tex>A\mathbf{x}=\mathbf{b}</tex>, | |
- | + | состоящей из <tex>M</tex> уравнений с <tex>N</tex> неизвестными, необходимо решить уравнение | |
- | + | <center><tex>A^TA\mathbf{x}=A^T\mathbf{b},</tex></center> | |
+ | называемое <i>нормальным уравнением</i>. | ||
+ | Пусть столбцы матрицы <tex>A</tex> линейно независимы, тогда она обратима и система имеет единственное решение | ||
+ | <center><tex>\mathbf{x}=(A^TA)^{-1}A^T\mathbf{b}.</tex></center> | ||
+ | Таким образом мы приходим к понятию псевдообращения действительных матриц: | ||
+ | <center><tex>A^+=(A^TA)^{-1}A^T.</tex></center> | ||
== Свойства == | == Свойства == | ||
* Псевдообращение обратимо, более того, эта операция обратна самой себе:<br> <tex>(A^+)^+ = A </tex>. | * Псевдообращение обратимо, более того, эта операция обратна самой себе:<br> <tex>(A^+)^+ = A </tex>. | ||
- | * Псевдообращение | + | * Псевдообращение коммутирует с транспонированием, сопряжением и эрмитовым сопряжением: <br> <tex>(A^T)^+ = (A^+)^T</tex>,<br> <tex>(\overline{A})^+ = \overline{A^+} </tex>,<br> <tex>(A^*)^+ = (A^+)^* .</tex> |
- | + | ||
* Псевдообратное произведения матрицы <tex>A</tex> на скаляр <tex>\alpha</tex> равно соответствующему произведению матрицы <tex>A^+</tex> на обратное число <tex>\alpha^{-1}</tex>:<br> <tex>(\alpha A)^+ = \alpha^{-1} A^+ </tex>, для <tex>\alpha</tex> ≠ 0. | * Псевдообратное произведения матрицы <tex>A</tex> на скаляр <tex>\alpha</tex> равно соответствующему произведению матрицы <tex>A^+</tex> на обратное число <tex>\alpha^{-1}</tex>:<br> <tex>(\alpha A)^+ = \alpha^{-1} A^+ </tex>, для <tex>\alpha</tex> ≠ 0. | ||
* Если псевдообратная матрица для <tex>A^*A</tex> уже известна, она может быть использовано для вычисления <tex>A^+</tex>:<br> <tex>A^+ = (A^*A)^+A^* </tex> . | * Если псевдообратная матрица для <tex>A^*A</tex> уже известна, она может быть использовано для вычисления <tex>A^+</tex>:<br> <tex>A^+ = (A^*A)^+A^* </tex> . | ||
Строка 35: | Строка 37: | ||
* Если '''столбцы''' матрицы <tex>A</tex> линейно независимы, тогда матрица <tex>A^* A</tex> обратима. В таком случае псевдообратная матрица задаётся формулой | * Если '''столбцы''' матрицы <tex>A</tex> линейно независимы, тогда матрица <tex>A^* A</tex> обратима. В таком случае псевдообратная матрица задаётся формулой | ||
:<tex>A^+ = (A^* A)^{-1} A^*.</tex> | :<tex>A^+ = (A^* A)^{-1} A^*.</tex> | ||
- | |||
Отсюда следует что <tex>A^+</tex> - левая обратная матрица для ''A'': <tex> A^+ A = I</tex> . | Отсюда следует что <tex>A^+</tex> - левая обратная матрица для ''A'': <tex> A^+ A = I</tex> . | ||
* Если '''строки''' матрицы <tex>A</tex> линейно независимы, тогда матрица <tex>A A^*</tex> обратима. В таком случае псевдообратная матрица задаётся формулой | * Если '''строки''' матрицы <tex>A</tex> линейно независимы, тогда матрица <tex>A A^*</tex> обратима. В таком случае псевдообратная матрица задаётся формулой | ||
:<tex>A^+ = A^*(A A^*)^{-1}.</tex> | :<tex>A^+ = A^*(A A^*)^{-1}.</tex> | ||
- | |||
Отсюда следует, что <tex>A^+</tex> — правая обратная матрица для ''A'': <tex>A A^+ = I</tex> . | Отсюда следует, что <tex>A^+</tex> — правая обратная матрица для ''A'': <tex>A A^+ = I</tex> . | ||
Строка 49: | Строка 49: | ||
** либо <tex>A^* A = I</tex>, | ** либо <tex>A^* A = I</tex>, | ||
** либо <tex>B B^* = I</tex>, | ** либо <tex>B B^* = I</tex>, | ||
- | ** либо '''столбцы''' <tex>A</tex> линейно независимы и '''строки''' <tex>B</tex> линейно независимы, | + | ** либо '''столбцы''' <tex>A</tex> линейно независимы и '''строки''' <tex>B</tex> линейно независимы, тогда <tex>(AB)^+ = B^+ A^+</tex>. |
- | + | ||
- | + | ||
- | * Псевдообращение можно применять и к скалярам, и к векторам | + | * Псевдообращение можно применять и к скалярам, и к векторам. Псевдообратный к скаляру <tex>x</tex> — ноль, если <tex>x</tex> — ноль, и обратный к <tex>x</tex> в противном случае: |
- | + | <center><tex>x^+ = \left\{\begin{matrix} 0, & x=0; \\ x^{-1}, & x \ne 0. \end{matrix}\right. </tex></center> | |
- | + | ||
* Псевдообратный для нулевого вектора - транспонированый нулевой вектор. Псевдообратный для иного вектора - сопряжённый транспонированный вектор, делённый на квадрат своей длины: | * Псевдообратный для нулевого вектора - транспонированый нулевой вектор. Псевдообратный для иного вектора - сопряжённый транспонированный вектор, делённый на квадрат своей длины: | ||
- | + | <center><tex>x^+ = \left\{\begin{matrix} 0^T, & x = 0;\\ {x^* \over x^* x}, & x \ne 0. \end{matrix}\right. </tex></center> | |
- | + | ||
Для доказательства достаточно проверить, что эти величины удовлетворяют определению псевдообратных. | Для доказательства достаточно проверить, что эти величины удовлетворяют определению псевдообратных. | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
== Вычисление == | == Вычисление == | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
Простейший вычислительный путь получения псевдообратной матрицы — использование собственного представления матрицы (СПМ). | Простейший вычислительный путь получения псевдообратной матрицы — использование собственного представления матрицы (СПМ). | ||
Строка 93: | Строка 70: | ||
Если псевдоинверсия известна для некой матрицы и нужно найти псевдоинверсию для аналогичной матрицы, иногда она может быть вычислена с помощью специальных алгоритмов, требующих меньшего количества расчётов. В частности, если аналогичная матрица отличается от начальной на один изменённый, добавленный или удалённый столбец или строку — существуют накопительные алгоритмы, которые могут использовать взаимосвязь между матрицами. | Если псевдоинверсия известна для некой матрицы и нужно найти псевдоинверсию для аналогичной матрицы, иногда она может быть вычислена с помощью специальных алгоритмов, требующих меньшего количества расчётов. В частности, если аналогичная матрица отличается от начальной на один изменённый, добавленный или удалённый столбец или строку — существуют накопительные алгоритмы, которые могут использовать взаимосвязь между матрицами. | ||
- | == | + | == См. также == |
- | + | * [[Практикум ММП ВМК, 4й курс, осень 2008|Практикум ММП ВМК, 4й курс, осень 2008]] | |
- | + | * [[Метод наименьших квадратов|Метод наименьших квадратов]] | |
- | + | * [[Решение переопределённой СЛАУ|Решение переопределённой СЛАУ]] | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | | | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + |
Текущая версия
Псевдообратные матрицы — обобощение обратных матриц в линейной алгебре. Псевдообратная матрица к матрице обозначается . Псевдообращение можно понимать как наилучшую апроксимацию (по методу наименьших квадратов) решения соответствующей системы линейных уравнений. Псевдообращение определено для любых матриц над действительными и комплексными числами. Псевдообратная матрица может быть вычислена с помощью собственного представления матрицы.
Содержание |
Определение
называется псевдообратной матрицей для матрицы , если она удовлетворяет следующим критериям:
- ( является слабым обращением в мультипликативной полугруппе);
- (это означает, что — эрмитова матрица);
- ( - тоже эрмитова матрица).
Здесь - эрмитова сопряжённая матрица M. Для матриц над полем действительных чисел .
Происхождение
По методу наименьших квадратов для решения несовместной СЛАУ , состоящей из уравнений с неизвестными, необходимо решить уравнение
называемое нормальным уравнением. Пусть столбцы матрицы линейно независимы, тогда она обратима и система имеет единственное решение
Таким образом мы приходим к понятию псевдообращения действительных матриц:
Свойства
- Псевдообращение обратимо, более того, эта операция обратна самой себе:
. - Псевдообращение коммутирует с транспонированием, сопряжением и эрмитовым сопряжением:
,
,
- Псевдообратное произведения матрицы на скаляр равно соответствующему произведению матрицы на обратное число :
, для ≠ 0. - Если псевдообратная матрица для уже известна, она может быть использовано для вычисления :
. - Аналогично, если матрица уже известна:
.
Особые случаи
- Если столбцы матрицы линейно независимы, тогда матрица обратима. В таком случае псевдообратная матрица задаётся формулой
Отсюда следует что - левая обратная матрица для A: .
- Если строки матрицы линейно независимы, тогда матрица обратима. В таком случае псевдообратная матрица задаётся формулой
Отсюда следует, что — правая обратная матрица для A: .
- Если и столбцы и строки линейно независимы (что верно для квадратных невырожденных матриц), псевдообращение равно обращению:
- Если A и B таковы, что произведение определено, и
- либо ,
- либо ,
- либо столбцы линейно независимы и строки линейно независимы, тогда .
- Псевдообращение можно применять и к скалярам, и к векторам. Псевдообратный к скаляру — ноль, если — ноль, и обратный к в противном случае:
- Псевдообратный для нулевого вектора - транспонированый нулевой вектор. Псевдообратный для иного вектора - сопряжённый транспонированный вектор, делённый на квадрат своей длины:
Для доказательства достаточно проверить, что эти величины удовлетворяют определению псевдообратных.
Вычисление
Простейший вычислительный путь получения псевдообратной матрицы — использование собственного представления матрицы (СПМ).
Если — собственное представление A, тогда Для диагональной матрицы, такой как , псевдообратная вычисляется обращением каждого ненулевого элемента на диагонали.
Существуют оптимизированые подходы для вычисления псевдоинверсии блочных матриц.
Если псевдоинверсия известна для некой матрицы и нужно найти псевдоинверсию для аналогичной матрицы, иногда она может быть вычислена с помощью специальных алгоритмов, требующих меньшего количества расчётов. В частности, если аналогичная матрица отличается от начальной на один изменённый, добавленный или удалённый столбец или строку — существуют накопительные алгоритмы, которые могут использовать взаимосвязь между матрицами.