무어-펜로즈 역

Moore–Penrose inverse

In mathematics, and in particular linear algebra, the Moore–Penrose inverse of a matrix is the most widely known generalization of the inverse matrix.[1][2][3][4] 1920년 E. H. Moore[5], 1951년 Arne Bjerhammar[6], 1955년 Roger Penrose[7] 의해 독립적으로 기술되었습니다. 일찍이 Erik Ivar Fredholm은 1903년에 적분 연산자의 의사 역수 개념을 도입했습니다. 행렬을 언급할 때, 추가 사양 없이 의사 이라는 용어는 무어-펜로즈 역을 나타낼 때 자주 사용됩니다. 일반화된 역이라는 용어는 의사역의 동의어로 사용되기도 합니다.

의사역의 일반적인 용도는 해가 없는 선형 방정식 체계에 대한 "최적 적합"(최소 제곱) 해를 계산하는 것입니다(아래 § 응용 프로그램 참조). 또 다른 용도는 여러 해를 가진 선형 방정식 체계에 대한 최소 (유클리드) 표준 해를 찾는 것입니다. 의사 역수는 선형 대수학에서 결과의 진술과 증명을 용이하게 합니다.

의사 역수는 입력실수 또는 복소수인 모든 행렬에 대해 정의되고 고유합니다. 특이값 분해를 사용하여 계산할 수 있습니다. A 정규 행렬(예: 에르미트 행렬)인 특수한 경우, 역 A+ A 커널을 소멸시키고, 커널과 직교하는 부분 공간에서 A 의 전통적인 역으로 작용합니다.

표기법

다음 논의에서는 다음과 같은 협약을 채택합니다.

  • 각각 R {\ C 로 표시되는 실수 또는 복소수 필드 중 하나를 나타냅니다 위의 × n 행렬의 벡터 공간은 × n로 표시됩니다
  • For , the transpose is denoted and the Hermitian transpose (also called conjugate transpose) is denoted . If , 다음 A∗ = A T {\displaystyle A^{*} = AT}}}.
  • × n {\displaystyle A\in {K} ^{times n}의 경우, (standing for "range") denotes the column space (image) of (the space spanned by the column vectors of ) and denotes the kernel (null space) of .
  • 임의의 양의 정수 에 대하여 × n n 항등 K n × n {\}\in K} ^{times n}에 표시됩니다.

정의.

m × n {\ A\in {K} ^{\times n}}의 경우, A의 의사 역수는 \mathbb {K} ^{n\times m}에서 다음 4가지 조건을 모두 만족하는 행렬 A + ∈ K n × m {displaystyle A^{+}\in \mathbb {K} ^{n\times m}로 정의됩니다. 무어-펜로즈 조건:

  1. + 는 일반 항등 행렬일 필요는 없지만 A의 모든 열 벡터를 자신에게 매핑합니다.
  2. A약한 역으로 작동합니다.
  3. + 에르미트식입니다.
  4. + 에르미트식입니다.

+ A + 직교 투영 연산자입니다. 이러한 조건은 + A의 이미지에 투영되는 것과 같습니다. 그리고 +{\ A의 이미지에 투영된 것입니다[citation needed] The pseudoinverse exists for any matrix . If furthermore is full rank, that is, its rank is , A+ 는 특히 간단한 대수식을 갖습니다.

특히, A 가 선형으로 독립된 열을 가질 때(동일하게, A 가 주입되고, A ∗ A {\A^{*} A} 가 일 때 A + {\A^{+}} 가 다음과 같이 계산될 수 있습니다.

이 특정 의사역은 역, A+ = I A^{+} = I입니다. 반면, A A가 선형 독립 행을 가지면(이와 equival으로, A {\displaystyle A}는 사변형이므로, A ∗ {\displaystyle AA^{*}}는 반전성), + 은 다음과 같이 계산할 수 있습니다.
이것은 + = AA^{+}= I}이므로 오른쪽 역입니다.


보다 일반적인 경우, 의사 역수는 특이값 분해를 활용하여 표현될 수 있습니다. 모든 행렬은 = ∗ {\displaystyle A=로 분해할 수 있습니다. 등각선 U V V 대각 양의 실수 D D에 대한 ^{*}. 그런 다음 의사 역은 + D- {\A^{+} VD^{-1 U^{*}로 쓸 수 있습니다. + = {\displaystyle AA^{+}=를 관찰하여 이 행렬이 위 조건을 만족하는지 직접 확인합니다.+ displaystyle A^{+}A A {\displaystyle 의 이미지 및 지원에 대한 투영입니다

특성.

존재와 유일성

위에서 논의한 바와 같이, 의 행렬 A 에 대하여 의사 역 + 가 하나만 존재합니다[8]

위에 주어진 조건 중 첫 번째 조건, 즉 + = AA^{+}A = A만 만족하는 행렬을 일반화 역이라고 합니다 행렬이 두 번째 조건, 즉 + + = A+ A를 만족하면^{+} 일반화된 반사 이라고 합니다. 일반화된 역수는 항상 존재하지만 일반적으로 고유한 것은 아닙니다. 유일성은 마지막 두 조건의 결과입니다.

기본속성

아래 속성에 대한 증명은 b에서 확인할 수 있습니다.추상대수/선형대수의 주제.

  • 실제 항목이 있는 경우 A+ A도 마찬가지입니다
  • (가) 반전 가능한 경우 해당 의사 역이 됩니다. 즉, + = - {\displaystyle A^{+} = A^{-1}} 입니다.
  • 제곱 대각선 행렬의 의사 역수는 0이 아닌 대각선 원소의 역수를 취함으로써 얻어집니다. 형식적으로, D = D ~ ⊕ k × k {\displaystyle D={\tilde {D}\opplus \mathbf {0} _{k\times k}} 및 D ~ > 0 {\displaystyle {\tilde {D}}>0}인 경우, D+ = ~- 1 ⊕ 0 × k {\ D^{+} = {\tilde {D}}^{-1}\opplus \mathbf {0} _{k\times k}입니다. 보다 일반적으로, A {\displaystyle A} 가 대각선에 0이 아닌 요소들만 있는 임의의 m × n {\displaystyle m\times n} 직사각형 행렬이면, meaning , , then is a rectangular matrix whose diagonal elements are the reciprocal of the original ones, that is, A_{iiii입니다.
  • 의사역의 의사역은 원래 행렬입니다:(+)+ = {\^{+}
  • 의사 반전은 전치, 복소 결합, 그리고 결합 전치를 취함으로써 커뮤테이션됩니다.[9]: 245
  • 의 스칼라 배수의 의사 역수는 + 의 역수 배수입니다
    ≠ 0 \n의 경우 0

아이덴티티

의사 역을 포함하는 특정 하위 표현식을 취소하거나 확장하는 데 다음 항등식을 사용할 수 있습니다.

이와 하게 A+ {\ A A {\ A에 대입하면 다음을 얻을 수 있습니다.
∗ {\displaystyle 를 A A}에 대입하는 동안

에르미트 케이스로 축소

의사역의 계산은 에르미트의 경우에 그것의 구성으로 환원될 수 있습니다. 다음과 같은 동등성을 통해 가능합니다.

{\displaystyleA^{*}A}와 AA ∗ {\displaystyle AA^{*}}는 에르미트입니다.

상품들

K × n, ∈ K n × pK} n{K ^{n\times p}라고 가정합니다. 그렇다면 다음은 동등합니다.[10]

다음은 (+ = + +{\displaystyle(AB)^{+} = 에 대한 충분한 조건입니다.:

  1. 에 정규 열이 있습니다({\ AA =). 또는
  2. 에는 ({\{*}BB{+}=에서B =). 또는
  3. 에는 선형으로 독립된 열이 있고( I {\ A^{+ A I}), B {\displaystyle B}에는 선형으로 독립된 행이 있습니다(B + = I {\displaystyle BB^+} = I}), 또는
  4. {\displaystyl B = A^{*}}, 또는
  5. = + displaystyl B = A^{+}}.

다음은(+ = B+ +{\displaystyle(AB)^{+} = 의 필요 조건입니다.:

네 번째 충분 조건은 동등성을 산출합니다.

: 등식+ = + +displaystyle(AB)^{+} = B 일반적으로 유지되지 않습니다. 반대 예를 참조하십시오.

프로젝터

= + {\ P =AA^{+}} Q = A + A Q = A^{+} A}는 직교 투영 연산자로, 즉 에르미트(Hermitian P ∗ {\displaystyl P = P^{*}), {\ = Q^{*}} 및 idempotent( 2 = P {\displaystyle P^2} = P} 및 2 = Q {\displaystyle Q^2} = Q}). 다음 홀드:

  • A + Q + A + {\displaystyle A^{+}P Q
  • P는 A A ( {\A^{*}}의 커널의 직교 보형과 동일)의 직교 프로젝터입니다.
  • {\A^{*}의 범위(A A}의커널의 직교 보형과 동일)에 대한 직교 프로젝터입니다.
  • = I- + -Q = I-A^{+}A}는 A {\displaystyle A}의 커널에 있는 직교 프로젝터입니다.
  • = I- + {\ -P = I -AA^{+}는 A ∗ {\displaystyle A^{*}의 커널에 있는 직교 프로젝터입니다.

마지막 두 속성은 다음 ID를 의미합니다.

또 다른 성질은 다음과 같습니다. ∈ K n × \in {K} ^{n\times n}가 에르미트이고 idempotent(직교 사영을 나타내는 경우에만 참임)일 경우, \mathbb {K} ^{m\times n}의 임의의 행렬 B ∈ K m × n {\displaystyle B\in \m}에 대해 다음 방정식은 성립합니다.

이는 행렬 = C = }, D = A (BA + {\displaystyle D = A (BA)를 정의함으로써 입증될 수 있습니다.A A 에르미트이고 idempotent일 때 의사 역방향 홀드의 정의 속성을 확인하여 C{\C}에 대한 의사 역방향임을 확인합니다.

마지막 속성으로부터, ∈ K × n AK} ^{ntimes n}에서 A 행렬 K n × m {\displaystyle B\in \mathbb {K} ^{n\times m}에 대해 다음과 같이 나타납니다.

마지막으로, A가 직교 투영 행렬인 경우, 그 은 행렬자체, 즉 A + = A {\ A^{+} = A와 삼차적으로 일치합니다

기하학적 구조

K n → m {\displaystyle A}\to \mathbb {K} ^{m} 필드 K {\displaystyle {K} 위에서 보면 A + : K m → K n {\displaystyle A^{+}:\mathbb {K} ^{m}\to \mathbb {K} ^{n}은 다음과 같이 분해할 수 있습니다. 직접은 ⊕ {\\opplus}, ⊥ {\ \perp},의 커널은 displaystyle \ker}, 지도의 이미지는\operatorname {ran}을(를) 실행합니다. =( ⁡ A) ⊥ ⊕ ⁡ A \{K} ^{ =\(\ker A\right)^{\perp} 및 Km = run ⁡ A ⊕(ran ⁡ A) ⊥ {\displaystyle \mathbb {K} ^{m} =\operatorname {ran} A\opplus \left(\operatorname {ran} A\right)^{\perp }}입니다. :( ⁡ A) ⊥ → ⁡ A {\ A:\left(\ker A\right)^{\perp}\to \operatorname {ran} A}는 동형입니다. 이는 ⁡에서 A+ A을 의미합니다. ran} A}은(는) 이 동형의 역이며, (실행된 ⊥ A) ⁡에서 0입니다. {\displaystyle\left(\operatorname {ran} A\right)^{\perp}}

다른 말로 하면: To find for given in , first project orthogonally onto the range of , finding a point in the range. Then form , that is, find those vectors in that sends to . 이것은 의 커널과 평행한 의 아핀 부분 공간이 됩니다 이 부분공간에서 가장 작은 길이(즉 원점에 가장 가까운)를 갖는 원소는 우리가 찾는 답 + b A입니다. - ( )} 의 임의의 멤버를 취하여 의 커널의 직교 보형에 직교 투영하여 찾을 수 있습니다

이 설명은 선형 시스템에 대한 최소-노름 해와 밀접한 관련이 있습니다.

부분공간

관계의 한계

의사 역수는 한계입니다.

(티호노프 정규화 참조). 이러한 제한은( - 1 \left)^{-1}} 또는 (A ∗ A) - 1 {\displaystyle \left(A^{*}A\right)^{-1}}가 존재하지 않더라도 존재합니다.

연속성

일반적인 행렬 반전과 달리 의사 반전을 취하는 과정은 연속적이지 않습니다. 순서 A 가 행렬 A수렴하는 경우(최대 노름 또는 Frobenius 노름에서, 예를 들어, 그러면()+ + A로 수렴할 필요가 없습니다 However, if all the matrices have the same rank as , will converge to .[12]

도함수

에서 일정한 순위를 갖는 실수 값 의사 역행렬의 도함수는 원래 행렬의 도함수를 이용하여 계산될 수 있습니다.[13]

복소 행렬의 경우 전치는 공액 전치로 대체됩니다.[14] 실제 값 대칭 행렬의 경우 매그너스-뉴데커 도함수가 성립합니다.[15]

가역 행렬의 경우 의사 역수는 일반적인 역수와 같으므로, 아래에서는 가역 행렬의 예만 고려합니다.

  • =( {\displaystyle A = {\begin{pmatrix}0&0\\0&0\end{pmatrix}}의 경우 의사역은 A + = ( 0 000)입니다. {\displaystyle A^{+} = {\begin{pmatrix}0&0\\0&0\end{pmatrix}}. (일반적으로 0 행렬의 의사역은 그 전치입니다.) 의사역의 += A + A + {\displaystyle A^{+} = A^{+} 요건에서 알 수 있습니다.0 행렬의 곱셈은 항상 0 행렬을 생성하기 때문입니다.
  • = 100 A = {\\\1}}의 경우 의사 역수는 A + = (1 2 1 2 2020)입니다. {\displaystyle A^{+}={\begin{pmatrix}{\frac {1}{2}}&{\frac {1}{2}}\\0&0\end{pmatrix}}}

    실제로 + =( 2 1 1 A^{+} AA+ (1 0 . {\displaystyle A

    마찬가지로 + A =( {\displaystyle A^{+}A ={\begin{pmatrix}1&0\\0&0\end{pmatrix}}, 따라서 A + A + A + = (1 2 1 2 2 0) = A + . {\displaystyle A^{+}A\,
  • =(- 의 경우 {\ A = {\\-1}}, A + = (12 - 120 {\displaystyle A^{+}={\begin{pmatrix}{\frac {1}{2}}&-{\frac {1}{2}}\\\0&0\end{pmatrix}}}
  • For (The denominators are .)
  • =(의 경우, A = {\}}, A + = (1 4 1 4 1 4 {\displaystyle A^{+}={\begin{pmatrix}{\frac {1}{4}}\{\frac {1}{4}}\{\frac {1}{4}}\{\frac {1}{4}\end{pmatrix}}}.
  • = 0 {\ A ={\1\\0end}}의 경우 의사 역수는 A + = (100 0 1 2입니다. {\displaystyle A^{+} ={\begin{pmatrix}1&0\0&{\frac {1}{2}}&{\frac {1}{2}}\end{pmatrix}}입니다.이 행렬의 경우 왼쪽 역수하므로 A+ 실제로는 + A 1입니다 displaystyle A^{+}A {\

특수한 경우

스칼라

스칼라 및 벡터에 대한 의사 역수를 정의할 수도 있습니다. 이것은 이것들을 행렬로 취급하는 것과 같습니다. 0이고 x {\ x}의 역수가 아니면 스칼라 x x의 의사 역수는 0입니다.

벡터

널(모두 0) 벡터의 의사 역수는 전치 널 벡터입니다. non-null 벡터의 의사 역수는 공액 전치 벡터를 제곱한 크기로 나눈 값입니다.

선형 독립 열

If the rank of is identical to its column rank, , (for ,) there are linearly independent columns, and is invertible. 이 경우 명시적인 공식은 다음과 같습니다.[16]

A+ {\ A 의 왼쪽 역수입니다 A+ = A =

선형 독립 행

If the rank of is identical to its row rank, , (for ,) there are linearly independent rows, and is invertible. 이 경우 명시적인 공식은 다음과 같습니다.

A+ {\ AA {\A}의 오른쪽 역입니다 + = I =

정규 열 또는 행

이것은 전체 열 순위 또는 전체 행 순위(위에서 처리됨)의 특수한 경우입니다. 에 직교하는 열이 있는 ^{*}=)또는 직교 정규 행( displaystyle AA^{*}) 그러면:

정규행렬

정상 경우, 즉 그것의 공액 전치와 함께 커뮤테이션하는 경우, 그것의 의사 역수는 그것을 대각선화하고, 0이 아닌 모든 고유값을 그들의 역수와 매핑하고, 0의 고유값을 0으로 매핑하여 계산할 수 있습니다. 결과적으로 전치와 통근하는 A {\displaystyle 는 의사 역으로 통근한다는 것을 의미합니다.

정사영행렬

이것은 고유값이 0과 1인 정규 행렬의 특별한 경우입니다. 가 직교 투영 행렬, 즉 =displaystyle = ^{*} = A A^{2} = A}인 경우 의사 역행렬은 행렬 자체와 사소적으로 일치합니다.

순환행렬

순환 행렬 의 경우특이값 분해는 푸리에 변환에 의해 주어지는데, 특이값은 푸리에 계수입니다. [17] 이산 푸리에 변환(DFT) 행렬이라고 가정합니다.

시공

서열분해

( n) } ^{times n}에서 ∈ K × n A\의 순위를 나타냅니다. Then can be (rank) decomposed as where and are of rank . 그런 다음 + = + + = (CC∗) - 1 (B ∗) - 1 B ∗ {\displaystyle A^{+} = C^{+} B^{+} = C^{*}\left(CC^{*}\right)^{-1}\left(B^{*}B\right)^{-1}B^{*}}.

QR 방법은

{ C} {K} \{C} \} A ∗A {\displaystyle A^{*} A}의 경우 그 역수는 실제로 수치 반올림 오류와 계산 비용의 원인이 되는 경우가 많습니다. A{\A}의 QR 분해를 사용하는 대안적인 접근 방식을 사용할 수 있습니다.

Consider the case when is of full column rank, so that . Then the Cholesky decomposition , where is an upper triangular matrix, 사용될 수 있습니다. 역수 곱셈은 우변이 여러 개인 계를 풀면 쉽게 이루어집니다.

전방 치환후방 치환으로 해결할 수 있습니다.

촐레스키 분해는 A {\ A^{*}A}를 으로 형성하지 않고, 또는 A =QR {\ A=QR}의 QR 분해를 사용하여 계산할 수 있습니다. 여기서 Q {\displaystyle Q}는 직교 열을 가지며, Q ∗ Q = I {\displaystyle Q^{*}Q = I}, R (는) 위쪽 삼각형입니다. 그리고나서

R ∗ {\A^{*}A}의 촐레스키 인자입니다.

전체 행 순위의 경우는 A+ = ∗) - {\displaystyle A^{+} = A^{*}\left(AAright)^{-1}를 사용하고 유사한 인수를 사용하여 A {\displaystyle A}와 A ∗ {\displaystyle A^{*}}의 역할을 교환하여 유사하게 처리됩니다.

특이치분해(SVD)

계산적으로 간단하고 정확하게 의사 역수를 계산하는 방법은 특이값 분해를 사용하는 것입니다.[16][8][18] = σ ∗ {\ A = U\Sigma V^{*}가 A{\displaystyle A}의 특이값 분해인 경우 A + = V σ + U ∗ {\displaystyle A^{+} = V\Sigma^{+} \Sigma와 같은 직사각형 대각선 행렬의 경우 대각선의 0이 아닌 각 요소의 역수를 취하여 0을 그대로 둔 다음 행렬을 전치하여 의사 역수를 얻습니다. 수치 계산에서는 일부 작은 허용 오차보다 큰 요소만 0이 아닌 것으로 간주하고 다른 요소는 0으로 대체합니다. 예를 들어, MATLAB 또는 GNU 옥타브 함수에서 pinv, 허용오차는 t = ε⋅max(m, n) max(σ)가 되어야 합니다. 여기서 ε는 기계 엡실론입니다.

이 방법의 계산 비용은 행렬-행렬 곱셈보다 몇 배 높은 SVD 계산 비용에 의해 지배됩니다. 이는 (LAPACK과 같은) 최첨단 구현을 사용하더라도 마찬가지입니다.

위의 절차는 의사 반전을 취하는 것이 연속적인 작업이 아닌 이유를 보여줍니다. 원래 A A에 특이값 0(위 행렬σ {\\Sigma}의 대각선 항목)이 있는 경우 A A}를 약간하면 이 0이 작은 양수로 바뀔 수 있습니다. 그래서 우리는 지금 아주 작은 수의 역수를 취해야만 하기 때문에 의사 역수에 극적으로 영향을 미칩니다.

블록행렬

블록 구조 행렬의 의사 역수를 계산하기 위한 최적화된 접근 방식이 존재합니다.

Ben-Israel과 Cohen의 반복방법

의사 반전을 계산하는 또 다른 방법(cf). Drazin inverse)는 재귀를 사용합니다.

이를 하이퍼 파워 시퀀스라고 부르기도 합니다. 이 재귀는 를 만족하는 A {\displaystyle A_{0}}을( 0 ∗ {\A_{0}A=(A_{A\right)로 시작할 경우 {\ A의 의사 역으로 2차 수렴하는 시퀀스를 생성합니다. 선택 A {\ A_{0}\alpha A^{*}} (여기서 0 < α < 2 / 12 (A) {\displaystyle 0<\alpha < 2/\ _{1}^{2(A)}, A의 가장 큰 σ 1(A\sigma_{1}(A)}이(가) 위에서 언급한 SVD를 사용한 방법에 대해 경쟁력이 없다는 주장이 제기되었습니다. 왜냐하면 적당한 조건을 갖춘 행렬의 에도Ai {\i}}가 2차 수렴 영역에 들어가기까지는 오랜 시간이 걸리기 때문입니다.[20] 그러나 무어-펜로즈 역에 이미 가까운 로 시작하는 경우 A =( 0 AA_{0} A =left (A_{ A\right) 예를 들어 :( A + I ) - 1 A {\displaystyle A_{0}:\left(A^{*}A+\delta I\right)^{-1}A^{*}, 수렴이 빠릅니다().

의사 역방향 업데이트

가 풀 로우 또는 컬럼 랭크를 가지는 경우 및 상관 행렬의 역수( 로우 랭크를 가지는 A AA의 경우 A ∗ {\displaystyle AA^{*}} 또는 A ∗ A {\displaystyle A^{*}가 풀 컬럼 랭크인 경우)는 이미 알려져 있으므로, A A와 관련된 행렬에 대한 의사 역수는 셔먼-모리슨-을 적용하여 계산할 수 있습니다.작업이 덜 필요할 수 있는 상관 행렬의 역수를 업데이트하기 위한 우드베리 공식. 특히 관련 행렬이 원래 행렬과 변경, 추가 또는 삭제된 행 또는 열만 다를 경우 관계를 이용하는 증분 알고리즘이 존재합니다.[21][22]

마찬가지로, 상관 행렬의 역수를 명시적으로 만들지 않고 행 또는 열이 추가될 때 촐레스키 인자를 업데이트할 수 있습니다. 그러나 일반적인 순위 결핍 사례에서 의사 역수를 업데이트하는 것은 훨씬 더 복잡합니다.[23][24]

소프트웨어 라이브러리

LAPACK과 같은 표준 라이브러리에서는 SVD, QR, 백치환의 고품질 구현이 가능합니다. SVD의 자체 구현을 작성하는 것은 상당한 수치 전문 지식을 필요로 하는 주요 프로그래밍 프로젝트입니다. 그러나 병렬 컴퓨팅 또는 임베디드 컴퓨팅과 같은 특수한 상황에서는 QR에 의한 대체 구현 또는 명시적인 역방향의 사용이 선호될 수 있으며 맞춤형 구현이 불가피할 수 있습니다.

Python 패키지 NumPy는 함수를 통해 의사 역산을 제공합니다. matrix.I 그리고. linalg.pinv; 그것의 pinv 는 SVD 기반 알고리즘을 사용합니다. SciPy가 기능을 추가합니다. scipy.linalg.pinv 최소한의 squares 해결기를 사용합니다.

R에 대한 MASS 패키지는 다음을 통해 무어-펜로즈 역수를 계산합니다. ginv 함수의[25]ginv 함수는 에 의해 제공되는 특이값 분해를 사용하여 의사 역수를 계산합니다. svd 기본 R 패키지에서 기능합니다. 대안은 다음을 사용하는 것입니다. pinv Pracma 패키지에서 사용할 수 있는 기능.

옥타브 프로그래밍 언어는 표준 패키지 함수를 통해 의사 역방향을 제공합니다. pinv 그리고 그 pseudo_inverse() 방법.

줄리아(프로그래밍 언어)에서 표준 라이브러리의 선형 대수 패키지는 무어-펜로즈 역의 구현을 제공합니다. pinv() 단일 값 분해를 통해 구현됩니다.[26]

적용들

선형 최소 제곱

의사역은 선형 방정식 체계에 대한 최소 제곱 해를 제공합니다.[27] m n {\displaystyle A\in {K} ^{times n}에 대하여, 선형 방정식 체계가 주어졌을 때

일반적으로, 시스템을 해결하는 x{\ x가 존재하지 않을 수도 있고, 존재한다면 고유하지 않을 수도 있습니다. 의사역은 "최소 제곱" 문제를 다음과 같이 해결합니다.

  • Kn \K ^{}, x ≥ ‖ A z b ‖ 2 {\displaystyle \left\ Ax-b\right\_{2}\geq \left\ Az-b\right\_{2}}, 여기서 z = A + b {\displaystyez= 2 {\displaystyle \cdot \_{2}}는 유클리드 표준을 나타냅니다. 약한 부등식은 임의의 벡터 w {\displaystyle w}에 대해 x = +b + (I - A + A) w {\displaystyle x = A^{+}b+\left(I-A^{+}A\right)w}인 경우에만 동일하게 유지됩니다. 이는 A {\displaystyle A}가 전체 열 순위를 갖지 않는 한 해를 최소화하는 무한대를 제공합니다. 이 경우(- + ) 는 영 행렬입니다.[28] 유클리드 노름이 최소인 는 z [28]

이 결과는 유클리드 노름이 프로베니우스 노름으로 대체될 때 여러 우변을 가진 시스템으로 쉽게 확장됩니다. × p B\K} ^{times p}라고 합니다.

  • K × p \K} ^{times }, B ≥ ‖ A Z ‖ F {\\ AX-B\ {}}\geq \ AZ-B\ {F}}}, 서 Z = A + B {\displaystye Z= F {\ \cdot \_{\mathrm {F}}}는 Frobenius norm을 나타냅니다.

선형 시스템의 모든 해를 구함

선형계의 경우

모든 해결책이 있습니다. 모두 다음에[29] 의해 주어집니다.

for arbitrary vector . Solution(s) exist if and only if .[29] If the latter holds, then the solution is unique if and only if has full column rank, in which case is a zero matrix. 해가 존재하지만 에 완전한 열 순위가 없는 경우, 우리는 모든 해의 무한대가 이 마지막 방정식에 의해 주어진 불확정 시스템을 가지고 있습니다.

선형 시스템에 대한 최소 표준 해

unique 솔루션이 아닌 선형 시스템 A = ,displaystyle Ax=b,}의 경우, 의사 역은 모든 솔루션 중 최소 유클리드 노름 ‖ x ‖ 2 {\displaystyle \ x\_{2}의 솔루션을 구성하는 데 사용될 수 있습니다.

  • = displaystyle Ax= b}를 만족하면 z = A + b {\displaystyle z=는 해이며, 해에 대해 z x 2 \ z\_{2}\leq \ x\_{2}}를 만족합니다.

이 결과는 유클리드 노름이 프로베니우스 노름으로 대체될 때 여러 우변을 가진 시스템으로 쉽게 확장됩니다. × p B\K} ^{times p}라고 합니다.

  • = AX = B}를 만족하면 행렬 Z= A + B {\displaystyle Z =는 해이며, 해에 대하여 F ≤ \ Z\{F}\leq \ X\_{\mathrm {F}}를 만족합니다.

조건번호

의사 역수와 행렬 노름을 사용하여 임의의 행렬에 대한 조건 번호를 정의할 수 있습니다.

조건 번호가 크다는 것은 A의 항목에서 작은 오류가 솔루션의 항목에서 큰 오류로 이어질 수 있다는 의미에서 해당 선형 방정식 시스템에 대한 최소 제곱 솔루션을 찾는 문제가 부적절하다는 것을 의미합니다.[30]

일반화

보다 일반적인 최소 squares 문제를 해결하기 위해 모든 연속 선형 A: → H {\ A: 정의와 동일한 4가지 조건을 사용하여두 힐베르트 공간 사이 입니다. 모든 연속 선형 연산자가 이러한 의미에서 연속 선형 의사 역수를 가지는 것은 아님이 밝혀졌습니다.[30] 바로 에서 범위가 닫혀 있는 것입니다

의사 개념은 임의의 관여적 자기 형태가 장착된 임의의 필드 위의 행렬에 대해 존재합니다. 이 보다 일반적인 설정에서는 주어진 행렬이 항상 의사 역을 가지는 것은 아닙니다. 의사 가 존재하기 위한 필요충분조건은 = ⁡(A ∗) = 순위 ⁡(A ∗) {\displaystyle \operatorname {rank}(A)=\operatorname {rank} \left(A^{*}A\right)=\operatorname {rank} \left(AA^{*}\right)}, ∗ {\displaystyle A^{*}}는 A A}의전치에 인볼루션 연산을 적용한 결과입니다. 존재하는 경우 고유합니다. 예제: (기사의 다른 곳에서 고려된 발명과는 대조적으로) 항등식을 갖춘 복소수 분야를 생각해 보십시오. 이러한 의미에서 의사반전을 갖지 못하는 행렬이 존재합니까? 행렬 =[ 1 ] T {\displaystyle A = {\begin{bmatrix}1&i\end{bmatrix}}^{\operatorname {T}}를 생각해 보십시오. (A AT) = 1 \left( {T}\right) = 1}, 랭크 ⁡ (A T A) = 0 {\displaystyle \operatorname {rank} \left(A^{\operatorname {T} }A\right) = 0}을 관찰합니다. 따라서 이 행렬은 이러한 의미에서 의사 역수를 갖지 않습니다.

추상대수학에서 무어-펜로즈 역수는 *정규 준군 위에 정의될 수 있습니다. 이 추상적인 정의는 선형 대수학의 정의와 일치합니다.

참고 항목

메모들

  1. ^ Ben-Israel & Greville 2003, 7쪽.
  2. ^ Campbell & Meyer 1991, 10쪽.
  3. ^ 나카무라 1991, 42쪽
  4. ^ Rao & Mitra 1971, p. 50–51.
  5. ^ Moore, E. H. (1920). "On the reciprocal of the general algebraic matrix". Bulletin of the American Mathematical Society. 26 (9): 394–95. doi:10.1090/S0002-9904-1920-03322-7.
  6. ^ Bjerhammar, Arne (1951). "Application of calculus of matrices to method of least squares; with special references to geodetic calculations". Trans. Roy. Inst. Tech. Stockholm. 49.
  7. ^ a b Penrose, Roger (1955). "A generalized inverse for matrices". Proceedings of the Cambridge Philosophical Society. 51 (3): 406–13. Bibcode:1955PCPS...51..406P. doi:10.1017/S0305004100030401.
  8. ^ a b c d e Golub, Gene H.; Charles F. Van Loan (1996). Matrix computations (3rd ed.). Baltimore: Johns Hopkins. pp. 257–258. ISBN 978-0-8018-5414-9.
  9. ^ a b c Stoer, Josef; Bulirsch, Roland (2002). Introduction to Numerical Analysis (3rd ed.). Berlin, New York: Springer-Verlag. ISBN 978-0-387-95452-3..
  10. ^ Greville, T. N. E. (1966-10-01). "Note on the Generalized Inverse of a Matrix Product". SIAM Review. 8 (4): 518–521. Bibcode:1966SIAMR...8..518G. doi:10.1137/1008107. ISSN 0036-1445.
  11. ^ Maciejewski, Anthony A.; Klein, Charles A. (1985). "Obstacle Avoidance for Kinematically Redundant Manipulators in Dynamically Varying Environments". International Journal of Robotics Research. 4 (3): 109–117. doi:10.1177/027836498500400308. hdl:10217/536. S2CID 17660144.
  12. ^ Rakočević, Vladimir (1997). "On continuity of the Moore–Penrose and Drazin inverses" (PDF). Matematički Vesnik. 49: 163–72.
  13. ^ Golub, G. H.; Pereyra, V. (April 1973). "The Differentiation of Pseudo-Inverses and Nonlinear Least Squares Problems Whose Variables Separate". SIAM Journal on Numerical Analysis. 10 (2): 413–32. Bibcode:1973SJNA...10..413G. doi:10.1137/0710036. JSTOR 2156365.
  14. ^ Hjørungnes, Are (2011). Complex-valued matrix derivatives: with applications in signal processing and communications. New York: Cambridge university press. p. 52. ISBN 9780521192644.
  15. ^ Liu, Shuangzhe; Trenkler, Götz; Kollo, Tõnu; von Rosen, Dietrich; Baksalary, Oskar Maria (2023). "Professor Heinz Neudecker and matrix differential calculus". Statistical Papers. doi:10.1007/s00362-023-01499-w.
  16. ^ a b 벤-이스라엘 & 그레빌 2003.
  17. ^ Stallings, W. T.; Boullion, T. L. (1972). "The Pseudoinverse of an r-Circulant Matrix". Proceedings of the American Mathematical Society. 34 (2): 385–88. doi:10.2307/2038377. JSTOR 2038377.
  18. ^ 선형 시스템 & 유사 역
  19. ^ Ben-Israel, Adi; Cohen, Dan (1966). "On Iterative Computation of Generalized Inverses and Associated Projections". SIAM Journal on Numerical Analysis. 3 (3): 410–19. Bibcode:1966SJNA....3..410B. doi:10.1137/0703035. JSTOR 2949637.pdf
  20. ^ Söderström, Torsten; Stewart, G. W. (1974). "On the Numerical Properties of an Iterative Method for Computing the Moore–Penrose Generalized Inverse". SIAM Journal on Numerical Analysis. 11 (1): 61–74. Bibcode:1974SJNA...11...61S. doi:10.1137/0711008. JSTOR 2156431.
  21. ^ Gramß, Tino (1992). Worterkennung mit einem künstlichen neuronalen Netzwerk (PhD dissertation). Georg-August-Universität zu Göttingen. OCLC 841706164.
  22. ^ Emtiyaz, Mohammad (February 27, 2008). "Updating Inverse of a Matrix When a Column is Added/Removed" (PDF).
  23. ^ Meyer, Carl D. Jr. (1973). "Generalized inverses and ranks of block matrices". SIAM J. Appl. Math. 25 (4): 597–602. doi:10.1137/0125057.
  24. ^ Meyer, Carl D. Jr. (1973). "Generalized inversion of modified matrices". SIAM J. Appl. Math. 24 (3): 315–23. doi:10.1137/0124033.
  25. ^ "R: Generalized Inverse of a Matrix".
  26. ^ "LinearAlgebra.pinv".
  27. ^ Penrose, Roger (1956). "On best approximate solution of linear matrix equations". Proceedings of the Cambridge Philosophical Society. 52 (1): 17–19. Bibcode:1956PCPS...52...17P. doi:10.1017/S0305004100030929. S2CID 122260851.
  28. ^ a b Planitz, M. (October 1979). "Inconsistent systems of linear equations". Mathematical Gazette. 63 (425): 181–85. doi:10.2307/3617890. JSTOR 3617890. S2CID 125601192.
  29. ^ a b James, M. (June 1978). "The generalised inverse". Mathematical Gazette. 62 (420): 109–14. doi:10.1017/S0025557200086460. S2CID 126385532.
  30. ^ a b Hagen, Roland; Roch, Steffen; Silbermann, Bernd (2001). "Section 2.1.2". C*-algebras and Numerical Analysis. CRC Press.
  31. ^ Pearl, Martin H. (1968-10-01). "Generalized inverses of matrices with entries taken from an arbitrary field". Linear Algebra and Its Applications. 1 (4): 571–587. doi:10.1016/0024-3795(68)90028-1. ISSN 0024-3795.

참고문헌

외부 링크