본문 바로가기
Study/Linear Algebra

[Linear Algebra] 유사 역행렬(Pseudo-Inverse)에 대하여

by ngool 2025. 7. 6.

AI 논문을 읽다보면 항상 행렬이 포함된 수식들을 만나게 됩니다.

그 중에서도 역행렬 연산을 만나게 될 때, 이런 궁금증이 생긴적이 있습니다.

 

"역행렬은 정사각행렬일 때만 정의된다고 배웠는데, 정사각행렬이 아닌 경우가 훨씬 많을텐데 어떻게 역행렬을 계산한거지?"

 

그래서 찾아보니 유사 역행렬(pseudo-inverse)라는 개념이 있었습니다.

이것을 활용하면 정사각행렬이 아닌 경우에도 역행렬을 구할 수 있고, 이는 곧 다양한 상황에서 최적해를 찾는데 도움을 줍니다.


유사 역행렬 계산 방법

이런 방정식이 있다고 해봅시다. 

$$Ax = b$$

위 식의 해를 구하기 위해서는 양변에 $A^{-1}$를 곱해주면 됩니다.

 

그런데 만약 $A$가 정사각행렬이 아니라면?

$A^{-1}$를 정의할 수 없으므로 불가능하겠지요.

 

하지만, 이 때 완벽한 해는 아닐지라도 근접한 최적해를 구할 수 있는 방법이 있는데요, 그게 바로 유사 역행렬(pseudo-inverse)입니다.

 

아래 순서대로 연산을 수행하면 됩니다.

 

1. $Ax=b$의 양변에 $A^T$를 곱해줍니다. ($A$의 크기는 m*n)

 

2. 이 때 $A^TA$는 n*n 크기의 행렬이 됩니다. (역행렬 정의 가능)

 

3. $(A^TA)^{-1}$를 양변에 곱해줍니다. 

 

이러한 방식으로 $A$가 정사각행렬이 아니더라도 $x$의 근사해를 구해낼 수 있습니다.