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

Матеріал з testwiki
Версія від 10:09, 18 липня 2024, створена imported>Олюсь
(різн.) ← Попередня версія | Поточна версія (різн.) | Новіша версія → (різн.)
Перейти до навігації Перейти до пошуку

Псевдообернена матриця — узагальнення оберненої матриці в математиці, зокрема, в лінійній алгебрі.

Матриця, псевдообернена до матриці  A позначається як  A+.

Найвідомішим є псевдообернення Мура-Пенроуза, яке було незалежно описано Шаблон:Нп в 1920 і Роджером Пенроузом в 1955.

Раніше, в 1903 році, концепцію псевдообернених інтегруючих операторів представив Фредгольм.

Псевдообернена матриця застосовується для знаходження найкращого наближення (методом найменших квадратів) розв'язку СЛАР.

Визначення

Означення Мура

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

  1. AA+A=A             (AA+ чи A+A не обов'язково дорівнюватимуть одиничній матриці);
  2. A+AA+=A+;
  3. (AA+)*=AA+       (це означає, що AA+ — ермітова матриця);
  4. (A+A)*=A+A       (A+A — також ермітова матриця);

де A* — ермітово-спряжена матриця до матриці A.


Визначення Мура-Пенроуза через граничний перехід

A+=limδ0(A*A+δI)1A*=limδ0A*(AA*+δI)1

Ці границі існують, навіть якщо (AA*)1 і (A*A)1 не комутують.

Властивості

(A+)+=A.
(AT)+=(A+)T,(A)+=A+,(A*)+=(A+)*.
rank A+=rank A
  • Псевдообернення добутку матриці A на скаляр α дорівнює добутку матриці A+ на обернене число α1:
(αA)+=α1A+,α0.
  • Якщо вже відома матриця (A*A)+ чи матриця (AA*)+, то їх можна використати для обчислення A+:
A+=(A*A)+A*
A+=A*(AA*)+.
то Ai+ буде утворюватись з  A+ додаванням нульового стовпця/рядка в і-ту позицію.
  • Якщо рядок/стовпець в попередній процедурі не є нульовим ai0, то існує формула Гревіля для вираження Ai+ через A,A+,ai.

Часткові випадки

Ортонормовані стовпці чи рядки

  • Якщо в матриці A ортонормовані стовпці (A*A=I), або рядки (AA*=I), то:
A+=A*.

Повний ранг

  • Якщо стовпці матриці A лінійно незалежні, тоді матриця (A*A) має повний ранг, а отже є оборотною. Тоді:
A+=(A*A)1A*

Отже A+A=I, звідки слідує, що A+ — ліва обернена матриця для A.

  • Якщо рядки матриці A лінійно незалежні, тоді матриця (AA*) має повний ранг, а отже є оборотною. Тоді:
A+=A*(AA*)1

Отже AA+=I, звідки слідує, що A+ — права обернена матриця для A.

  • Якщо і стовпці і рядки лінійно незалежні (що вірно для квадратних невироджених матриць), тоді:
A+=A1.

Ці часткові випадки еквівалентні прибиранню доданка δI з формули визначення псевдообернення через граничний перехід.

Псевдообернення добутку

Якщо матриці A і B такі, що добуток AB визначений, а також:

  • або A має ортонормовані стовпці (A+=A*),
  • або B має ортонормовані рядки (B+=B*),
  • або стовпці A лінійно незалежні(A+A=I) і рядки B лінійно незалежні(BB+=I).

Тоді:

 (AB)+=B+A+.

Доводиться прямою підстановкою в визначення.

Скаляри і вектори

Псевдообернення можна визначити для скалярів і векторів, якщо трактувати їх як матриці:

  • Псевдообернення скаляра x є скаляр
x+={0,x=0;x1,x0.
  • Псевдообернення вектора x є вектор
x+={0T,x=0;x*x*x,x0.

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

Обчислення

За допомогою A=BC розкладу

Нехай r — ранг матриці A розміру m×n. Тоді A може бути представлена як A=BC, де B — матриця розміру m×r, C — матриця розміру r×n. Тоді

  • A+=C*(CC*)1(B*B)1B*.

чи

  • A+=C*(B*AC*)1B*
де (CC*)1(B*B)1=(B*BCC*)1=(B*AC*)1 — матриця меншого розміру r×r.

За допомогою QR розкладу

Матрицю A представимо у вигляді A=QR, де Q — унітарна матриця, Q*Q=QQ*=I, і R — верхня трикутна матриця. Тоді

A*A=(QR)*(QR)=R*Q*QR=R*R,
A+=(R*R)+A*

За допомогою SVD розкладу

Якщо A=UΣV* — сингулярне представлення матриці A, тоді

A+=VΣ+U*.

Для діагональної матриці, такої як Σ, псевдообернена матриця обчислюється заміною всіх ненульових значень діагональних елементів на обернені.

За допомогою мінорів

Нехай k — ранг матриці A розміру m×n.

Позначимо через Ak матрицю складену з k лінійно незалежних стовпців матриці A,
через Ak позначимо матрицю з k лінійно незалежних рядків матриці A,
через Akk матрицю з елементів на перетині Ak з Ak.

Тоді

A+=Ak*(AkAk*)1Akk(Ak*Ak)1Ak*

Застосування до СЛАР

  • Система рівнянь  Ax=b може не мати точних розв'язків, але можна знайти приблизні розв'язки — такі  x при яких мінімізується Axb2. Це розв'язок методом найменших квадратів.
  • Загальний розв'язок системи  Ax=b є сумою часткового розв'язку цієї системи та загального розв'язку однорідної системи  Ax=0.
kerA=Z(A)y

де:

Z(A)=IA+A      (проектор на kerA);
y — довільний вектор тієї ж розмірності що і x.
  • Частковим розв'язком неоднорідної системи є  x=A+b, він ортогональний до kerA і тому має найменшу норму серед всіх розв'язків.
  • Загальний розв'язок
 Ax=b єдиний розв'язок
detA*A0
множина розв'язків
detA*A=0
точні розв'язки є
b*Z(A)b=0
x=A+b Ωx=A+b+kerA
тільки приблизні розв'язки
b*Z(A)b0
  • Відстань від довільної точки  y до множини розв'язків  Ωx рівна:
P(A)(yA+b)=P(A)yA+b=A+(Ayb),

де:

P(A)=IZ(A)      (проектор ортогональний до  kerA).

Джерела