La inversa generalizada de una matriz más conocida
En matemáticas , y en particular en álgebra lineal , la inversa de Moore-Penrose de una matriz es la generalización más conocida de la matriz inversa . Fue descrito de forma independiente por EH Moore [5] en 1920, Arne Bjerhammar [6] en 1951 y Roger Penrose [7] en 1955. Anteriormente, Erik Ivar Fredholm había introducido el concepto de pseudoinverso de operadores integrales en 1903. Cuando se hace referencia a una matriz, el término pseudoinverso , sin mayor especificación, se utiliza a menudo para indicar el inverso de Moore-Penrose. El término inversa generalizada se utiliza a veces como sinónimo de pseudoinversa.
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Un uso común de la pseudoinversa es calcular una solución de "mejor ajuste" ( mínimos cuadrados ) para un sistema de ecuaciones lineales que carece de solución (ver más abajo en § Aplicaciones). Otro uso es encontrar la solución de norma mínima ( euclidiana ) para un sistema de ecuaciones lineales con múltiples soluciones. La pseudoinversa facilita el enunciado y la prueba de resultados en álgebra lineal.
La pseudoinversa está definida y es única para todas las matrices cuyas entradas sean números reales o complejos . Se puede calcular mediante la descomposición en valores singulares . En el caso especial donde hay una matriz normal (por ejemplo, una matriz hermitiana), la pseudoinversa aniquila el núcleo y actúa como una inversa tradicional de en el subespacio ortogonal al núcleo.![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Notación
En la siguiente discusión, se adoptan las siguientes convenciones.
denotará uno de los campos de números reales o complejos, denotados , , respectivamente. El espacio vectorial de matrices se denota por .![{\displaystyle \mathbb {R} }](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \mathbb {C} }](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle m\veces n}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \mathbb {K} }](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \mathbb {K} ^{m\times n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- Para , se denota la transpuesta y se denota la transpuesta hermitiana (también llamada transpuesta conjugada ) . Si entonces .
![{\displaystyle A\in \mathbb {K} ^{m\times n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{\operatorname {T} }}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \mathbb {K} =\mathbb {R} }](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{*}=A^{\operatorname {T} }}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- Porque , (que significa " rango ") denota el espacio de columna ( imagen ) de (el espacio abarcado por los vectores de columna de ) y denota el núcleo (espacio nulo) de .
![{\displaystyle A\in \mathbb {K} ^{m\times n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \operatorname {corrió} (A)}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \ker(A)}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- Para cualquier número entero positivo , se denota la matriz identidad .
![{\displaystyle n}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle I_{n}\in \mathbb {K} ^{n\times n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Definición
Para , una pseudoinversa de A se define como una matriz que satisface los cuatro criterios siguientes, conocidos como condiciones de Moore-Penrose: [7] [8]![{\displaystyle A\in \mathbb {K} ^{m\times n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}\in \mathbb {K} ^{n\times m}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
No es necesario que sea la matriz identidad general, pero asigna todos los vectores columna de A a sí mismos:![{\displaystyle AA^{+}A=\;A.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
actúa como un inverso débil :![{\displaystyle A^{+}AA^{+}=\;A^{+}.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
es hermitiano :![{\displaystyle \left(AA^{+}\right)^{*}=\;AA^{+}.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
también es hermitiano:![{\displaystyle \left(A^{+}A\right)^{*}=\;A^{+}A.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Tenga en cuenta que y son operadores de proyección ortogonales, como se desprende de y . Más específicamente, se proyecta sobre la imagen de (equivalentemente, el intervalo de las filas de ) y se proyecta sobre la imagen de (equivalentemente, el intervalo de las columnas de ). De hecho, las cuatro condiciones anteriores son totalmente equivalentes y son proyecciones ortogonales: proyectar sobre la imagen de implica y proyectar sobre la imagen de implica .![{\displaystyle A^{+}A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle AA^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle (AA^{+})^{2}=AA^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle (A^{+}A)^{2}=A^{+}A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{T}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle AA^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle AA^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle AA^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle (AA^{+})A=A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{T}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle (A^{+}A)A^{+}=A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
La pseudoinversa existe para cualquier matriz . Si además tiene rango completo , es decir, su rango es , entonces se puede dar una expresión algebraica particularmente simple. En particular:![{\displaystyle A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A\in \mathbb {K} ^{m\times n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \min\{m,n\}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- Cuando tiene columnas linealmente independientes (de manera equivalente, es inyectiva y, por lo tanto, invertible), se puede calcular como
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{*}A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}=\left(A^{*}A\right)^{-1}A^{*}.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Este pseudoinverso en particular es un inverso izquierdo , es decir ,.![{\displaystyle A^{+}A=I}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- Si, por otro lado, tiene filas linealmente independientes (de manera equivalente, es sobreyectiva y, por tanto, invertible), se puede calcular como
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle AA^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}=A^{*}\left(AA^{*}\right)^{-1}.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Este es un inverso derecho , como .![{\displaystyle AA^{+}=I}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
En el caso más general, la pseudoinversa se puede expresar aprovechando la descomposición en valores singulares . Cualquier matriz se puede descomponer como para algunas isometrías y una matriz real positiva diagonal . La pseudoinversa se puede escribir entonces como . Que esta matriz satisface el requisito anterior se verifica directamente observando que y , que son las proyecciones sobre imagen y soporte de , respectivamente.![{\displaystyle A=UDV^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle U,V}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle D}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}=VD^{-1}U^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle AA^{+}=UU^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}A=VV^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Propiedades
Existencia y unicidad
Como se analizó anteriormente, para cualquier matriz existe una y solo una pseudoinversa . [8]![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Una matriz que satisface sólo la primera de las condiciones dadas anteriormente, es decir , se conoce como inversa generalizada. Si la matriz también satisface la segunda condición, es decir , se denomina inversa reflexiva generalizada . Los inversos generalizados siempre existen pero, en general, no son únicos. La unicidad es una consecuencia de las dos últimas condiciones.![{\estilo de texto AA^{+}A=A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\estilo de texto A^{+}AA^{+}=A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Propiedades básicas
Las pruebas de las siguientes propiedades se pueden encontrar en b: Temas de álgebra abstracta/álgebra lineal.
- Si tiene entradas reales, entonces también las tiene .
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- Si es invertible , su pseudoinversa es su inversa. Eso es, . [9] : 243
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}=A^{-1}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- La pseudoinversa de la pseudoinversa es la matriz original: . [9] : 245
![{\displaystyle \left(A^{+}\right)^{+}=A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- La pseudoinversión conmuta con la transposición, la conjugación compleja y la transposición conjugada: [9] : 245
![{\displaystyle \left(A^{\operatorname {T} }\right)^{+}=\left(A^{+}\right)^{\operatorname {T} },\quad \left({\ overline {A}}\right)^{+}={\overline {A^{+}}},\quad \left(A^{*}\right)^{+}=\left(A^{+ }\derecha)^{*}.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- El pseudoinverso de un múltiplo escalar de es el múltiplo recíproco de :
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \left(\alpha A\right)^{+}=\alpha ^{-1}A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
para .![{\displaystyle \alpha \neq 0}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- Ker e imagen de la pseudoinversa coinciden con las de la transpuesta conjugada: y .
![{\displaystyle \ker \left(A^{+}\right)=\ker \left(A^{*}\right)}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \operatorname {ran} \left(A^{+}\right)=\operatorname {ran} \left(A^{*}\right)}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Identidades
La siguiente fórmula de identidad se puede utilizar para cancelar o expandir ciertas subexpresiones que involucran pseudoinversos:
![{\displaystyle A={}A{}A^{*}{}A^{+*}{}={}A^{+*}{}A^{*}{}A.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}={}A^{+}{}A^{+*}{}A^{*}{}={}A^{*}{}A^{+*}{ }A^{+},}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{*}={}A^{*}{}A{}A^{+}{}={}A^{+}{}A{}A^{*}.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Reducción al caso hermitiano
El cálculo del pseudoinverso se reduce a su construcción en el caso hermitiano. Esto es posible a través de las equivalencias:
![{\displaystyle A^{+}=\left(A^{*}A\right)^{+}A^{*},}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}=A^{*}\left(AA^{*}\right)^{+},}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
como y son hermitianos.![{\displaystyle A^{*}A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle AA^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Pseudoinverso de productos
La igualdad no se cumple en general. Más bien, supongamos . Entonces los siguientes son equivalentes: [10]![{\displaystyle (AB)^{+}=B^{+}A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A\in \mathbb {K} ^{m\times n},\ B\in \mathbb {K} ^{n\times p}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle (AB)^{+}=B^{+}A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle {\begin{aligned}A^{+}ABB^{*}A^{*}&=BB^{*}A^{*},\\BB^{+}A^{*}AB& =A^{*}AB.\end{alineado}}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle {\begin{aligned}\left(A^{+}ABB^{*}\right)^{*}&=A^{+}ABB^{*},\\\left(A^{ *}ABB^{+}\right)^{*}&=A^{*}ABB^{+}.\end{aligned}}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}ABB^{*}A^{*}ABB^{+}=BB^{*}A^{*}A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle {\begin{aligned}A^{+}AB&=B(AB)^{+}AB,\\BB^{+}A^{*}&=A^{*}AB(AB)^ {+}.\end{aligned}}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Las siguientes son condiciones suficientes para :![{\displaystyle (AB)^{+}=B^{+}A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
tiene columnas ortonormales (entonces ), o![{\displaystyle A^{*}A=A^{+}A=I_ {n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
tiene filas ortonormales (entonces ), o![{\displaystyle BB^{*}=BB^{+}=I_ {n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
tiene columnas linealmente independientes (entonces ) y filas linealmente independientes (entonces ), o![{\displaystyle A^{+}A=I}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle B}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle BB^{+}=I}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
, o
.
La siguiente es una condición necesaria para :![{\displaystyle (AB)^{+}=B^{+}A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle (A^{+}A)(BB^{+})=(BB^{+})(A^{+}A)}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
La cuarta condición suficiente produce las igualdades
![{\displaystyle {\begin{aligned}\left(AA^{*}\right)^{+}&=A^{+*}A^{+},\\\left(A^{*}A\ derecha)^{+}&=A^{+}A^{+*}.\end{aligned}}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Aquí hay un contraejemplo donde :![{\displaystyle (AB)^{+}\neq B^{+}A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle {\Biggl (}{\begin{pmatrix}1&1\\0&0\end{pmatrix}}{\begin{pmatrix}0&0\\1&1\end{pmatrix}}{\Biggr )}^{+}= {\begin{pmatrix}1&1\\0&0\end{pmatrix}}^{+}={\begin{pmatrix}{\tfrac {1}{2}}&0\\{\tfrac {1}{2}} &0\end{pmatrix}}\quad \neq \quad {\begin{pmatrix}{\tfrac {1}{4}}&0\\{\tfrac {1}{4}}&0\end{pmatrix}}= {\begin{pmatrix}0&{\tfrac {1}{2}}\\0&{\tfrac {1}{2}}\end{pmatrix}}{\begin{pmatrix}{\tfrac {1}{2 }}&0\\{\tfrac {1}{2}}&0\end{pmatrix}}={\begin{pmatrix}0&0\\1&1\end{pmatrix}}^{+}{\begin{pmatrix}1&1 \\0&0\end{pmatrix}}^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Proyectores
y son operadores de proyección ortogonales , es decir, son hermitianos ( , ) e idempotentes ( y ). Se mantiene lo siguiente:![{\displaystyle Q=A^{+}A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle P=P^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle Q=Q^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle P^{2}=P}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle Q^{2}=Q}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
y![{\displaystyle A^{+}P=QA^{+}=A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
es el proyector ortogonal sobre el rango de (que es igual al complemento ortogonal del núcleo de ).![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
es el proyector ortogonal sobre el rango de (que es igual al complemento ortogonal del núcleo de ).![{\displaystyle A^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
es el proyector ortogonal sobre el núcleo de .![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
es el proyector ortogonal sobre el núcleo de . [8]![{\displaystyle A^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Las dos últimas propiedades implican las siguientes identidades:
![{\displaystyle A\,\ \left(IA^{+}A\right)=\left(I-AA^{+}\right)A\ \ =0}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{*}\left(I-AA^{+}\right)=\left(IA^{+}A\right)A^{*}=0}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Otra propiedad es la siguiente: si es hermitiana e idempotente (verdadera si y sólo si representa una proyección ortogonal), entonces, para cualquier matriz se cumple la siguiente ecuación: [11]![{\displaystyle A\in \mathbb {K} ^{n\times n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle B\in \mathbb {K} ^{m\times n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A(BA)^{+}=(BA)^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Esto se puede probar definiendo matrices , y verificando que efectivamente sea una pseudoinversa verificando que las propiedades definitorias de la pseudoinversa se cumplan, cuando es hermitiana e idempotente.![{\displaystyle C=BA}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle D=A(BA)^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle D}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle C}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
De la última propiedad se deduce que, si es hermitiana e idempotente, para cualquier matriz![{\displaystyle A\in \mathbb {K} ^{n\times n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle B\in \mathbb {K} ^{n\times m}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle (AB)^{+}A=(AB)^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Finalmente, si es una matriz de proyección ortogonal, entonces su pseudoinversa coincide trivialmente con la propia matriz, es decir, .![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}=A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
construcción geométrica
Si vemos la matriz como un mapa lineal sobre el campo entonces se puede descomponer de la siguiente manera. Escribimos para la suma directa , para el complemento ortogonal , para el núcleo de un mapa y para la imagen de un mapa. Note eso y . La restricción es entonces un isomorfismo. Esto implica que on es el inverso de este isomorfismo y es cero en![{\displaystyle A:\mathbb {K} ^{n}\to \mathbb {K} ^{m}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \mathbb {K} }](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}:\mathbb {K} ^{m}\to \mathbb {K} ^{n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \oplus}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \perp }](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle\ker}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \operatorname {corrió} }](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \mathbb {K} ^{n}=\left(\ker A\right)^{\perp }\oplus \ker A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \mathbb {K} ^{m}=\operatorname {ran} A\oplus \left(\operatorname {ran} A\right)^{\perp }}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A:\left(\ker A\right)^{\perp }\to \operatorname {ran} A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \operatorname {corrió} A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \left(\operatorname {ran} A\right)^{\perp }.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
En otras palabras: para encontrar dado en , primero proyecte ortogonalmente sobre el rango de , encontrando un punto en el rango. Luego forme , es decir, encuentre esos vectores que envía a . Este será un subespacio afín de paralelo al núcleo de . El elemento de este subespacio que tiene menor longitud (es decir, está más cerca del origen) es la respuesta que buscamos. Se puede encontrar tomando un miembro arbitrario de y proyectándolo ortogonalmente sobre el complemento ortogonal del núcleo de .![{\displaystyle A^{+}b}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle b}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \mathbb {K} ^{m}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle b}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle p(b)}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{-1}(\{p(b)\})}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \mathbb {K} ^{n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle p(b)}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \mathbb {K} ^{n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}b}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{-1}(\{p(b)\})}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Esta descripción está estrechamente relacionada con la solución de norma mínima para un sistema lineal.
Limitar las relaciones
Los pseudoinversos son límites:
![{\displaystyle A^{+}=\lim _{\delta \searrow 0}\left(A^{*}A+\delta I\right)^{-1}A^{*}=\lim _{\ delta \searrow 0}A^{*}\left(AA^{*}+\delta I\right)^{-1}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Regularización de Tikhonov[8] : 263 ![{\displaystyle \left(AA^{*}\right)^{-1}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \left(A^{*}A\right)^{-1}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Continuidad
A diferencia de la inversión matricial ordinaria, el proceso de tomar pseudoinversas no es continuo : si la secuencia converge a la matriz (en la norma máxima o norma de Frobenius , por ejemplo), entonces no es necesario que converja a . Sin embargo, si todas las matrices tienen el mismo rango que , convergerá a . [12]![{\displaystyle \left(A_{n}\right)}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle (A_{n})^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\ Displaystyle A_ {n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle (A_{n})^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Derivado
La derivada de una matriz pseudoinversa de valor real que tiene rango constante en un punto se puede calcular en términos de la derivada de la matriz original: [13]![{\displaystyle x}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle {\frac {\mathrm {d} }{\mathrm {d} x}}A^{+}(x)=-A^{+}\left({\frac {\mathrm {d} } {\mathrm {d} x}}A\right)A^{+}~+~A^{+}A^{+{\textsf {T}}}\left({\frac {\mathrm {d} }{\mathrm {d} x}}A^{\operatorname {T} }\right)\left(I-AA^{+}\right)~+~\left(IA^{+}A\right) \left({\frac {\text{d}}{{\text{d}}x}}A^{\operatorname {T} }\right)A^{+{\textsf {T}}}A^ {+}.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
[14][15]Ejemplos
Dado que para las matrices invertibles la pseudoinversa es igual a la inversa habitual, a continuación solo se consideran ejemplos de matrices no invertibles.
- Para la pseudoinversa es La unicidad de esta pseudoinversa se puede ver a partir del requisito , ya que la multiplicación por una matriz cero siempre produciría una matriz cero.
![{\displaystyle A={\begin{pmatrix}0&0\\0&0\end{pmatrix}},}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}={\begin{pmatrix}0&0\\0&0\end{pmatrix}}.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}=A^{+}AA^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- Para la pseudoinversa es .
![{\displaystyle A={\begin{pmatrix}1&0\\1&0\end{pmatrix}},}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}={\begin{pmatrix}{\frac {1}{2}}&{\frac {1}{2}}\\0&0\end{pmatrix}}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- De hecho, y por tanto . De manera similar, y por lo tanto .
![{\displaystyle A\,A^{+}={\begin{pmatrix}{\frac {1}{2}}&{\frac {1}{2}}\\{\frac {1}{2} }&{\frac {1}{2}}\end{pmatrix}}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A\,A^{+}A={\begin{pmatrix}1&0\\1&0\end{pmatrix}}=A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}A={\begin{pmatrix}1&0\\0&0\end{pmatrix}}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}A\,A^{+}={\begin{pmatrix}{\frac {1}{2}}&{\frac {1}{2}}\\0&0\end{ pmatriz}}=A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- Tenga en cuenta que no es ni inyectivo ni sobreyectivo y, por lo tanto, el pseudoinverso no se puede calcular mediante ni , ya que y son ambos singulares y, además, no es un inverso izquierdo ni derecho.
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}=\left(A^{*}A\right)^{-1}A^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}=A^{*}\left(AA^{*}\right)^{-1}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{*}A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle AA^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- No obstante, la pseudoinversa se puede calcular mediante SVD observando que y por lo tanto .
![{\displaystyle A={\sqrt {2}}\left({\frac {\mathbf {e} _{1}+\mathbf {e} _{2}}{\sqrt {2}}}\right) \mathbf {e} _{1}^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}={\frac {1}{\sqrt {2}}}\,\mathbf {e} _{1}\left({\frac {\mathbf {e} _{1} +\mathbf {e} _{2}}{\sqrt {2}}}\right)^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- Para
![{\displaystyle A^{+}={\begin{pmatrix}{\frac {1}{2}}&-{\frac {1}{2}}\\0&0\end{pmatrix}}.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- Para . Los denominadores están aquí .
![{\displaystyle A^{+}={\begin{pmatrix}{\frac {1}{5}}&{\frac {2}{5}}\\0&0\end{pmatrix}}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle 5=1^{2}+2^{2}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- Para
![{\displaystyle A^{+}={\begin{pmatrix}{\frac {1}{4}}&{\frac {1}{4}}\\{\frac {1}{4}}&{ \frac {1}{4}}\end{pmatrix}}.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- Para la pseudoinversa es .
![{\displaystyle A={\begin{pmatrix}1&0\\0&1\\0&1\end{pmatrix}},}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}={\begin{pmatrix}1&0&0\\0&{\frac {1}{2}}&{\frac {1}{2}}\end{pmatrix}}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- Para esta matriz, la inversa izquierda existe y, por tanto, es igual a , de hecho,
![{\displaystyle A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}A={\begin{pmatrix}1&0\\0&1\end{pmatrix}}.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Casos especiales
Escalares
También es posible definir una pseudoinversa para escalares y vectores. Esto equivale a tratarlos como matrices. El pseudoinverso de un escalar es cero si es cero y el recíproco de lo contrario:![{\displaystyle x}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle x}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle x}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle x^{+}={\begin{casos}0,&{\mbox{if }}x=0;\\x^{-1},&{\mbox{de lo contrario}}.\end{ casos}}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Vectores
El pseudoinverso del vector nulo (todo cero) es el vector nulo transpuesto. El pseudoinverso de un vector no nulo es el vector transpuesto conjugado dividido por su magnitud al cuadrado:
![{\displaystyle {\vec {x}}^{+}={\begin{casos}{\vec {0}}^{\operatorname {T} },&{\text{if }}{\vec {x }}={\vec {0}};\\{\dfrac {{\vec {x}}^{*}}{{\vec {x}}^{*}{\vec {x}}}} ,&{\text{de lo contrario}}.\end{casos}}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Matrices diagonales
La pseudoinversa de una matriz diagonal cuadrada se obtiene tomando el recíproco de los elementos diagonales distintos de cero. Formalmente, si es una matriz diagonal cuadrada con y , entonces . De manera más general, si es una matriz rectangular cuyos únicos elementos distintos de cero están en la diagonal, es decir , entonces es una matriz rectangular cuyos elementos diagonales son recíprocos de los originales, es decir ,.![{\displaystyle D}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle D={\tilde {D}}\oplus \mathbf {0} _{k\times k}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle {\tilde {D}}>0}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle D^{+}={\tilde {D}}^{-1}\oplus \mathbf {0} _{k\times k}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle m\veces n}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A_{ij}=\delta _{ij}a_{i}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle a_{i}\in \mathbb {K}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle n\times m}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A_{ii}\neq 0\implica A_{ii}^{+}=1/A_{ii}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Columnas linealmente independientes
Si el rango de es idéntico al rango de su columna , , (para ,) hay columnas linealmente independientes y es invertible. En este caso, una fórmula explícita es: ![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle n}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle n\leq m}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{*}A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}=\left(A^{*}A\right)^{-1}A^{*}.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Se deduce que es entonces un inverso izquierdo de : .![{\displaystyle A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}A=I_ {n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Filas linealmente independientes
Si el rango de es idéntico al rango de fila , , (para ,) hay filas linealmente independientes y es invertible. En este caso, una fórmula explícita es:![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle m}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle m\leq n}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle AA^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}=A^{*}\left(AA^{*}\right)^{-1}.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Se deduce que es un inverso derecho de : .![{\displaystyle A^{+}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle AA^{+}=I_ {m}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Columnas o filas ortonormales
Este es un caso especial de clasificación de columna completa o clasificación de fila completa (tratado anteriormente). Si tiene columnas ortonormales ( ) o filas ortonormales ( ), entonces:![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{*}A=I_{n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle AA^{*}=I_ {m}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}=A^{*}.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Matrices normales
Si es normal , es decir, conmuta con su transpuesta conjugada, entonces su pseudoinverso se puede calcular diagonalizándolo, mapeando todos los valores propios distintos de cero a sus inversos y mapeando los valores propios cero a cero. Un corolario es que conmutar con su transpuesta implica que conmuta con su pseudoinversa.![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Matrices EP
Se dice que una matriz (cuadrada) es una matriz EP si conmuta con su pseudoinversa. En tales casos (y sólo en tales casos), es posible obtener el pseudoinverso como un polinomio en . Un polinomio que se puede obtener fácilmente a partir del polinomio característico de o, más generalmente, de cualquier polinomio aniquilador de . [17]![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle p(t)}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}=p(A)}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Matrices de proyección ortogonales
Este es un caso especial de una matriz normal con valores propios 0 y 1. Si es una matriz de proyección ortogonal, es decir, y , entonces la pseudoinversa coincide trivialmente con la propia matriz:![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A=A^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{2}=A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}=A.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Matrices circulantes
Para una matriz circulante , la descomposición de valores singulares viene dada por la transformada de Fourier , es decir, los valores singulares son los coeficientes de Fourier. Sea la matriz de Transformada Discreta de Fourier (DFT) ; entonces [18]![{\displaystyle C}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle {\mathcal {F}}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle {\begin{aligned}C&={\mathcal {F}}\cdot \Sigma \cdot {\mathcal {F}}^{*},\\C^{+}&={\mathcal {F }}\cdot \Sigma ^{+}\cdot {\mathcal {F}}^{*}.\end{aligned}}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Construcción
Descomposición de rangos
Denotemos el rango de . Luego se puede descomponer (rango) como donde y son de rango . Entonces .![{\displaystyle r\leq \min(m,n)}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A\in \mathbb {K} ^{m\times n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A=BC}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle B\in \mathbb {K} ^{m\times r}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle C\in \mathbb {K} ^{r\times n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle r}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}=C^{+}B^{+}=C^{*}\left(CC^{*}\right)^{-1}\left(B^{*}B \derecha)^{-1}B^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
El método QR
Calcular el producto o y sus inversas explícitamente es a menudo una fuente de errores de redondeo numérico y costo computacional en la práctica. En su lugar, se puede utilizar un enfoque alternativo que utiliza la descomposición QR de .![{\displaystyle \mathbb {K} \en \{\mathbb {R} ,\mathbb {C} \}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle AA^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{*}A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Considere el caso en el que tiene rango de columna completo, de modo que . Entonces se puede utilizar la descomposición de Cholesky , donde hay una matriz triangular superior . La multiplicación por el inverso se realiza fácilmente resolviendo un sistema con múltiples lados derechos,![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{*}A=R^{*}R}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle R}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}=\left(A^{*}A\right)^{-1}A^{*}\quad \Leftrightarrow \quad \left(A^{*}A\right)A ^{+}=A^{*}\quad \Leftrightarrow \quad R^{*}RA^{+}=A^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
que puede resolverse mediante sustitución hacia adelante seguida de sustitución hacia atrás .
La descomposición de Cholesky se puede calcular sin formarse explícitamente, utilizando alternativamente la descomposición QR de , donde tiene columnas ortonormales, y es triangular superior. Entonces![{\displaystyle A^{*}A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A=QR}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle Q}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle Q^{*}Q=I}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle R}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{*}A\,=\,(QR)^{*}(QR)\,=\,R^{*}Q^{*}QR\,=\,R^{*} R,}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
también lo es el factor de Cholesky de .![{\displaystyle R}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{*}A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
El caso de rango de fila completo se trata de manera similar usando la fórmula y un argumento similar, intercambiando los roles de y .![{\displaystyle A^{+}=A^{*}\left(AA^{*}\right)^{-1}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Usar polinomios en matrices
Para un arbitrario , se tiene que es normal y, como consecuencia, una matriz EP. Luego, Ona puede encontrar un polinomio tal que . En este caso se tiene que la pseudoinversa de viene dada por [17]![{\displaystyle A\in \mathbb {K} ^{m\times n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{*}A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle p(t)}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle (A^{*}A)^{+}=p(A^{*}A)}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}=p(A^{*}A)A^{*}=A^{*}p(AA^{*}).}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Descomposición de valores singulares (SVD)
Una forma computacionalmente simple y precisa de calcular la pseudoinversa es mediante la descomposición en valores singulares . [8] [19] Si es la descomposición en valores singulares de , entonces . Para una matriz diagonal rectangular como , obtenemos la pseudoinversa tomando el recíproco de cada elemento distinto de cero en la diagonal, dejando los ceros en su lugar y luego transponiendo la matriz. En el cálculo numérico, sólo los elementos mayores que una pequeña tolerancia se consideran distintos de cero y los demás se reemplazan por ceros. Por ejemplo, en la función pinv de MATLAB o GNU Octave , la tolerancia se toma como t = ε⋅max( m , n )⋅max(Σ) , donde ε es el épsilon de la máquina .![{\displaystyle A=U\Sigma V^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{+}=V\Sigma ^{+}U^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \Sigma}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
El costo computacional de este método está dominado por el costo de calcular el SVD, que es varias veces mayor que la multiplicación matriz-matriz, incluso si se utiliza una implementación de última generación (como la de LAPACK ).
El procedimiento anterior muestra por qué tomar la pseudoinversa no es una operación continua: si la matriz original tiene un valor singular 0 (una entrada diagonal de la matriz anterior), entonces modificar ligeramente puede convertir este cero en un pequeño número positivo, afectando así a la pseudoinversa. dramáticamente ya que ahora tenemos que tomar el recíproco de un número diminuto.![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \Sigma}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
matrices de bloques
Existen enfoques optimizados para calcular la pseudoinversa de matrices estructuradas en bloques.
El método iterativo de Ben-Israel y Cohen
Otro método para calcular la pseudoinversa (cf. Drazin inversa ) utiliza la recursividad
![{\displaystyle A_{i+1}=2A_{i}-A_{i}AA_{i},}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
que a veces se conoce como secuencia de hiperpoderes. Esta recursividad produce una secuencia que converge cuadráticamente a la pseudoinversa de si se comienza con un satisfactorio apropiado . Se ha argumentado que la elección (donde , que denota el valor singular más grande de ) [20] no es competitiva con el método que utiliza el SVD mencionado anteriormente, porque incluso para matrices moderadamente mal condicionadas toma mucho tiempo antes de ingresar a la región de convergencia cuadrática. [21] Sin embargo, si se comienza con una relación ya cercana a la inversa de Moore-Penrose y , por ejemplo , la convergencia es rápida (cuadrática).![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\ Displaystyle A_ {0}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A_{0}A=\left(A_{0}A\right)^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A_{0}=\alpha A^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle 0<\alpha <2/\sigma _{1}^{2}(A)}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \sigma _ {1}(A)}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\ Displaystyle A_ {i}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\ Displaystyle A_ {0}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A_{0}A=\left(A_{0}A\right)^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A_{0}:=\left(A^{*}A+\delta I\right)^{-1}A^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Actualizando el pseudoinverso
Para los casos en los que tiene rango completo de fila o columna, y ya se conoce la inversa de la matriz de correlación ( para rango completo de fila o rango completo de columna), la pseudoinversa para matrices relacionadas se puede calcular aplicando el método de Sherman-Morrison- Fórmula de Woodbury para actualizar la inversa de la matriz de correlación, que puede requerir menos trabajo. En particular, si la matriz relacionada difiere de la original sólo en una fila o columna modificada, agregada o eliminada, existen algoritmos incrementales que explotan la relación. [22] [23]![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle AA^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{*}A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
De manera similar, es posible actualizar el factor de Cholesky cuando se agrega una fila o columna, sin crear explícitamente la inversa de la matriz de correlación. Sin embargo, actualizar la pseudoinversa en el caso general de rango deficiente es mucho más complicado. [24] [25]
Bibliotecas de software
Implementaciones de alta calidad de SVD, QR y sustitución inversa están disponibles en bibliotecas estándar, como LAPACK . Escribir la propia implementación de SVD es un proyecto de programación importante que requiere una experiencia numérica significativa . Sin embargo, en circunstancias especiales, como la computación paralela o la computación integrada , pueden ser preferibles implementaciones alternativas mediante QR o incluso el uso de un inverso explícito, y las implementaciones personalizadas pueden ser inevitables.
El paquete Python NumPy proporciona un cálculo pseudoinverso a través de sus funciones matrix.I
y linalg.pinv
; Utiliza pinv
el algoritmo basado en SVD. SciPy agrega una función scipy.linalg.pinv
que utiliza un solucionador de mínimos cuadrados.
El paquete MASS para R proporciona un cálculo de la inversa de Moore-Penrose a través de la ginv
función. [26] La ginv
función calcula una pseudoinversa utilizando la descomposición de valores singulares proporcionada por la svd
función en el paquete base R. Una alternativa es emplear la pinv
función disponible en el paquete pracma.
El lenguaje de programación Octave proporciona una pseudoinversa a través de la función pinv
y el pseudo_inverse()
método del paquete estándar.
En Julia (lenguaje de programación) , el paquete LinearAlgebra de la biblioteca estándar proporciona una implementación de la inversa de Moore-Penrose pinv()
implementada mediante descomposición de valores singulares. [27]
Aplicaciones
Mínimos cuadrados lineales
La pseudoinversa proporciona una solución de mínimos cuadrados a un sistema de ecuaciones lineales . [28]
Para , dado un sistema de ecuaciones lineales![{\displaystyle A\in \mathbb {K} ^{m\times n}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle Ax=b,}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
en general, es posible que no exista un vector que resuelva el sistema o, si existe, que no sea único. Más específicamente, existe una solución si y solo si es a imagen de y es única si y solo si es inyectiva. La pseudoinversa resuelve el problema de los "mínimos cuadrados" de la siguiente manera:![{\displaystyle x}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle b}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
, tenemos donde y denota la norma euclidiana . Esta desigualdad débil se cumple con igualdad si y sólo si para cualquier vector ; esto proporciona una infinidad de soluciones minimizadoras a menos que tenga el rango de columna completo, en cuyo caso es una matriz cero. [29] La solución con norma euclidiana mínima es [29]![{\displaystyle \left\|Ax-b\right\|_{2}\geq \left\|Az-b\right\|_{2}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle z=A^{+}b}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \|\cdot \|_{2}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle x=A^{+}b+\left(IA^{+}A\right)w}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle w}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \left(IA^{+}A\right)}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle z.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Este resultado se extiende fácilmente a sistemas con múltiples lados derechos, cuando la norma euclidiana se reemplaza por la norma de Frobenius. Dejar .![{\displaystyle B\in \mathbb {K} ^{m\times p}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
, tenemos donde y denota la norma de Frobenius .![{\displaystyle \|AX-B\|_{\mathrm {F} }\geq \|AZ-B\|_{\mathrm {F} }}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle Z=A^{+}B}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \|\cdot \|_{\mathrm {F} }}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Obtención de todas las soluciones de un sistema lineal.
Si el sistema lineal
![{\displaystyle Hacha=b}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
tiene alguna solución, todas están dadas por [30]
![{\displaystyle x=A^{+}b+\left[IA^{+}A\right]w}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
para vector arbitrario . Las soluciones existen si y sólo si . [30] Si esto último se cumple, entonces la solución es única si y sólo si tiene rango de columna completo, en cuyo caso es una matriz cero. Si existen soluciones pero no tienen rango de columna completo, entonces tenemos un sistema indeterminado , cuya infinidad de soluciones están dadas por esta última ecuación.![{\displaystyle w}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle AA^{+}b=b}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle IA^{+}A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Solución de norma mínima para un sistema lineal.
Para sistemas lineales con soluciones no únicas (como sistemas indeterminados), se puede utilizar la pseudoinversa para construir la solución de la norma euclidiana mínima entre todas las soluciones.![{\displaystyle Ax=b,}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \|x\|_{2}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- Si es satisfactoria, el vector es una solución y satisface para todas las soluciones.
![{\displaystyle Hacha=b}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle z=A^{+}b}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \|z\|_{2}\leq \|x\|_{2}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Este resultado se extiende fácilmente a sistemas con múltiples lados derechos, cuando la norma euclidiana se reemplaza por la norma de Frobenius. Dejar .![{\displaystyle B\in \mathbb {K} ^{m\times p}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
- Si es satisfactoria, la matriz es una solución y satisface para todas las soluciones.
![{\displaystyle AX=B}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle Z=A^{+}B}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \|Z\|_{\mathrm {F} }\leq \|X\|_{\mathrm {F} }}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Número de condición
Usando la pseudoinversa y una norma matricial , se puede definir un número de condición para cualquier matriz:
![{\displaystyle {\mbox{cond}}(A)=\|A\|\left\|A^{+}\right\|.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Un número de condición grande implica que el problema de encontrar soluciones de mínimos cuadrados al correspondiente sistema de ecuaciones lineales está mal condicionado en el sentido de que pequeños errores en las entradas de pueden conducir a grandes errores en las entradas de la solución. [31]![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Generalizaciones
Para resolver problemas de mínimos cuadrados más generales, se pueden definir inversas de Moore-Penrose para todos los operadores lineales continuos entre dos espacios de Hilbert y , utilizando las mismas cuatro condiciones que en nuestra definición anterior. Resulta que no todo operador lineal continuo tiene un pseudoinverso lineal continuo en este sentido. [31] Los que sí lo hacen son precisamente aquellos cuyo rango se cierra en .
![{\ Displaystyle H_ {1}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\ Displaystyle H_ {2}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\ Displaystyle H_ {2}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Existe una noción de pseudoinversa para matrices sobre un campo arbitrario equipado con un automorfismo involutivo arbitrario . En este contexto más general, una matriz determinada no siempre tiene una pseudoinversa. La condición necesaria y suficiente para que exista una pseudoinversa es que , donde denota el resultado de aplicar la operación de involución a la transpuesta de . Cuando existe, es único. [32] Ejemplo : Considere el campo de números complejos equipado con la involución de identidad (a diferencia de la involución considerada en otra parte del artículo); ¿Existen matrices que no tengan pseudoinversas en este sentido? Considere la matriz . Observa eso mientras . Entonces esta matriz no tiene una pseudoinversa en este sentido.![{\displaystyle \operatorname {rango} (A)=\operatorname {rango} \left(A^{*}A\right)=\operatorname {rango} \left(AA^{*}\right)}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A^{*}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle A={\begin{bmatrix}1&i\end{bmatrix}}^{\operatorname {T} }}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \operatorname {rango} \left(AA^{\operatorname {T} }\right)=1}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \operatorname {rango} \left(A^{\operatorname {T} }A\right)=0}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
En álgebra abstracta , se puede definir una inversa de Moore-Penrose en un semigrupo *-regular . Esta definición abstracta coincide con la del álgebra lineal.
Ver también
Notas
- ^ Moore, EH (1920). "Sobre el recíproco de la matriz algebraica general". Boletín de la Sociedad Matemática Estadounidense . 26 (9): 394–95. doi : 10.1090/S0002-9904-1920-03322-7 .
- ^ Bjerhammar, Arne (1951). "Aplicación del cálculo de matrices al método de mínimos cuadrados; con especial referencia a los cálculos geodésicos". Trans. Roy. Inst. Tecnología. Estocolmo . 49 .
- ^ ab Penrose, Roger (1955). "Una inversa generalizada para matrices". Actas de la Sociedad Filosófica de Cambridge . 51 (3): 406–13. Código Bib : 1955PCPS...51..406P. doi : 10.1017/S0305004100030401 .
- ^ abcde Golub, Gene H .; Préstamo Charles F. Van (1996). Cálculos matriciales (3ª ed.). Baltimore: John Hopkins. págs. 257-258. ISBN 978-0-8018-5414-9.
- ^ abc Stoer, Josef; Bulirsch, Roland (2002). Introducción al análisis numérico (3ª ed.). Berlín, Nueva York: Springer-Verlag . ISBN 978-0-387-95452-3..
- ^ Greville, TNE (1 de octubre de 1966). "Nota sobre la inversa generalizada de un producto matricial". Revisión SIAM . 8 (4): 518–521. Código Bib : 1966SIAMR...8..518G. doi :10.1137/1008107. ISSN 0036-1445.
- ^ Maciejewski, Anthony A.; Klein, Charles A. (1985). "Evitación de obstáculos para manipuladores cinemáticamente redundantes en entornos que varían dinámicamente". Revista Internacional de Investigación en Robótica . 4 (3): 109–117. doi :10.1177/027836498500400308. hdl : 10217/536 . S2CID 17660144.
- ^ Rakočević, Vladimir (1997). "Sobre la continuidad de las inversas de Moore-Penrose y Drazin" (PDF) . Matematički Vesnik . 49 : 163–72.
- ^ Golub, GH; Pereyra, V. (abril de 1973). "La diferenciación de problemas de mínimos cuadrados no lineales y pseudoinversos cuyas variables se separan". Revista SIAM de Análisis Numérico . 10 (2): 413–32. Código bibliográfico : 1973SJNA...10..413G. doi :10.1137/0710036. JSTOR 2156365.
- ^ Hjørungnes, Son (2011). Derivados matriciales de valores complejos: con aplicaciones en procesamiento de señales y comunicaciones . Nueva York: prensa de la Universidad de Cambridge. pag. 52.ISBN 9780521192644.
- ^ Liu, Shuangzhe; Trenkler, Götz; Kollo, Tõnu; von Rosen, Dietrich; Baksalary, Oskar María (2023). "El profesor Heinz Neudecker y el cálculo diferencial matricial". Artículos estadísticos . doi :10.1007/s00362-023-01499-w.
- ^ ab Bajo, I. (2021). "Cálculo de inversas de Moore-Penrose con polinomios en matrices". Mensual Matemático Estadounidense . 128 (5): 446–456. doi : 10.1080/00029890.2021.1886840.
- ^ Puestos, peso; Boullión, TL (1972). "La pseudoinversa de una matriz circulante r ". Actas de la Sociedad Matemática Estadounidense . 34 (2): 385–88. doi :10.2307/2038377. JSTOR 2038377.
- ^ Sistemas lineales y pseudoinversos
- ^ Ben-Israel, Adi; Cohen, Dan (1966). "Sobre el cálculo iterativo de inversas generalizadas y proyecciones asociadas". Revista SIAM de Análisis Numérico . 3 (3): 410–19. Código Bib : 1966SJNA....3..410B. doi :10.1137/0703035. JSTOR 2949637.pdf
- ^ Söderström, Torsten; Stewart, GW (1974). "Sobre las propiedades numéricas de un método iterativo para calcular la inversa generalizada de Moore-Penrose". Revista SIAM de Análisis Numérico . 11 (1): 61–74. Código Bib : 1974SJNA...11...61S. doi :10.1137/0711008. JSTOR 2156431.
- ^ Gramß, Tino (1992). Worterkennung mit einem künstlichen neuronalen Netzwerk (tesis doctoral). Georg-August-Universität zu Göttingen. OCLC 841706164.
- ^ Emtiyaz, Mohammad (27 de febrero de 2008). "Actualización de la inversa de una matriz cuando se agrega o elimina una columna" (PDF) .
- ^ Meyer, Carl D. Jr. (1973). "Inversas generalizadas y rangos de matrices de bloques". SIAM J. Aplicación. Matemáticas . 25 (4): 597–602. doi :10.1137/0125057.
- ^ Meyer, Carl D. Jr. (1973). "Inversión generalizada de matrices modificadas". SIAM J. Aplicación. Matemáticas . 24 (3): 315–23. doi :10.1137/0124033.
- ^ "R: inversa generalizada de una matriz".
- ^ "LinearAlgebra.pinv".
- ^ Penrose, Roger (1956). "Sobre la mejor solución aproximada de ecuaciones matriciales lineales". Actas de la Sociedad Filosófica de Cambridge . 52 (1): 17-19. Código Bib : 1956PCPS...52...17P. doi :10.1017/S0305004100030929. S2CID 122260851.
- ^ ab Planitz, M. (octubre de 1979). "Sistemas inconsistentes de ecuaciones lineales". Gaceta Matemática . 63 (425): 181–85. doi :10.2307/3617890. JSTOR 3617890. S2CID 125601192.
- ^ ab James, M. (junio de 1978). "La inversa generalizada". Gaceta Matemática . 62 (420): 109–14. doi :10.1017/S0025557200086460. S2CID 126385532.
- ^ ab Hagen, Roland; Roch, Steffen; Silbermann, Bernd (2001). "Sección 2.1.2". C*-álgebras y análisis numérico . Prensa CRC.
- ^ Perla, Martín H. (1 de octubre de 1968). "Inversas generalizadas de matrices con entradas tomadas de un campo arbitrario". Álgebra lineal y sus aplicaciones . 1 (4): 571–587. doi : 10.1016/0024-3795(68)90028-1 . ISSN 0024-3795.
Referencias
- Ben-Israel, Adi ; Greville, Thomas NE (2003). Inversas generalizadas: teoría y aplicaciones (2ª ed.). Nueva York, Nueva York: Springer. doi :10.1007/b97366. ISBN 978-0-387-00293-4.
- Campbell, SL; Meyer, CD Jr. (1991). Inversas generalizadas de transformaciones lineales . Dover. ISBN 978-0-486-66693-8.
- Nakamura, Yoshihiko (1991). Robótica avanzada: redundancia y optimización . Addison-Wesley. ISBN 978-0201151985.
- Rao, C. Radhakrishna; Mitra, Sujit Kumar (1971). Inversa Generalizada de Matrices y sus Aplicaciones . Nueva York: John Wiley & Sons. pag. 240.ISBN 978-0-471-70821-6.
enlaces externos