Pseudoinverze matice: Porovnání verzí

Smazaný obsah Přidaný obsah
Řádek 14:
 
které se nazývají Moore-Penroseovy podmínky. (Všimněme si, že pro čtvercovou regulární matici a její inverzi jsou všechny podmínky splněny triviálně.)
 
=== Výpočet, alternativní definice ===
 
Nechť <math>\mathbf{A}\in\mathbb{R}^{m\times n}</math>, <math>\mathrm{rank}(\mathbf{A})=r</math>. Uvažujme [[singulární rozklad]]
 
:<math>\mathbf{A}=\mathbf{U}\mathbf{\Sigma}\mathbf{V}^T=[\mathbf{U}_r|\mathbf{U}_0]\left[\begin{array}{c|c}\mathbf{\Sigma}_r&0\\\hline0&0\end{array}\right][\mathbf{V}_r|\mathbf{V}_0]^T = \mathbf{U}_r\mathbf{\Sigma}_r\mathbf{V}_r^T,</math>
 
pak
 
:<math>\mathbf{A}^{+} = (\mathbf{A}^{TV}_r\mathbf{A\Sigma})_r^{-1}\mathbf{AU}_r^{T}.</math>,
 
=== Vlastnosti ===
Řádek 31 ⟶ 41:
=== Využití ===
 
Uvažujme lineární approximační problém
Předpokládejme, že platí:
 
<math>\mathbf{z} = \mathbf{A}^{+}\mathbf{c}</math>,
 
pak následující výraz, je řešení problému [[metoda nejmenších čtverců|metodou nejmenších čtverců]]:
 
<math>\mathbf{c} = \mathbf{A}\mathbf{z}</math>
 
Pokud existuje [[inverzní matice]] součinu <math>\mathbf{A}^{T}\mathbf{A}</math>, pak platí
 
<math>\mathbf{A}^{+} = (\mathbf{A}^{T}\mathbf{A})^{-1}\mathbf{A}^{T}</math>,
 
kde <math>\mathbf{A}^{T}</math> je [[transponovaná matice]] matice <math>\mathbf{A}</math>. Je důležité si uvědomit, že součin <math>\mathbf{A}\mathbf{A}^{T}</math> dává [[Čtvercová matice|čtvercovou matici]], kterou již lze invertovat.
 
: <math>\mathbf{A}\mathbf{X}\approx \mathbf{B}, \qquad \text{kde} \qquad \mathbf{A}\in\mathbb{R}^{m\times n}, \; \mathrm{rank}(\mathbf{A})=r, \; \mathbf{X}\in\mathbb{R}^{n\times d}, \; \mathbf{B}\in\mathbb{R}^{m\times d},</math>
Když každou stranu vztahu
 
pak
<math>\mathbf{c} =\mathbf{A}\mathbf{z}</math>
 
vynásobíme zleva transponovanou maticí: <math>\mathbf{X}_{LS}\equiv\mathbf{A}^+\mathbf{TB}</math>, tak dostaneme vztah
 
je řešení ve smyslu [[metoda nejmenších čtverců|nejmenších čtverců]], má-li matice <math>\mathbf{A}</math> lineárně závislé sloupce, pak je to navíc řešení minimální v normě. Tedy,
<math>\mathbf{A}^{T}c = \mathbf{A}^{T}\mathbf{A}\mathbf{z}</math>,
 
: <math>\min_{\mathbf{AX}^}\|\mathbf{TB}c = -\mathbf{A}^\mathbf{TX}\|_F=\|\mathbf{B}-\mathbf{A}\mathbf{zX}_{LS}\|_F,</math>,
který můžeme následně upravit na tvar:
 
navíc <math>\mathbf{X}_{LS}</math> má minimální normu mezi všemi <math>\mathbf{X}</math>, které výraz vlevo minimalizují.
<math>\mathbf{z} = (\mathbf{A}^{T}\mathbf{A})^{-1}\mathbf{A}^{T}c = \mathbf{A}^{+}\mathbf{c}</math>
 
Je důležité si uvědomit, numerický aspekt celého výpočtu, a sice, že výpočet pseudoinverzní matice může být v obecném případě velmi náročný (je třeba spočítat singulární rozklad), v případě kdy má matice plnou sloupcovou nebo řádkovou hodnost, lze použít výpočetně rychlejší vztahy <math>(\mathbf{A}^T\mathbf{A})^{-1}\mathbf{A}^T</math>, respektive <math>\mathbf{A}^T(\mathbf{A}\mathbf{A}^T)^{-1}</math>, výsledek výpočetu pak ovšem může být silně ovlivněn (zcela zničen) vlivem zaokrouhlovacích chyb.
Je důležité si uvědomit, že při použití pseudoinverze je výpočet vždy zatížen nějakou chybou.
 
== Další zobecněné inverze ==