행렬 분해

위키백과, 우리 모두의 백과사전.

행렬 분해(行列分解, 영어: matrix decomposition)는 행렬을 특정한 구조를 가진 다른 행렬의 곱으로 나타내는 것을 의미한다. 행렬분해는 선형 방정식의 해를 구하거나, 행렬 계산을 효율적으로 하거나, 행렬의 특정 구조를 밝히는 등의 목적으로 사용된다.

응용[편집]

수치 해석에서 효율적인 행렬 알고리즘(매트릭스 알고리즘)을 구현하기 위해 같은 대상의 행렬일지라도 상황에따른 각기 다른 분해가 사용된다.

예를 들어, 선형 연립 방정식 의 시스템을 풀 때 행렬 A는 LU 분해를 통해 분해 될 수 있다. LU 분해는 행렬을 하부 삼각 행렬 L 및 상부 삼각 행렬 U로 분해한다. 시스템 은 원래 시스템 와 비교할 때,[1] 더 적은 수의 덧셈과 곱셈을 필요로하지만 부동 소수점과 같은 부정확하고 복잡한 연산에서 훨씬 더 많은 자릿수의 데이터가 계산과정에서 요구될 수 있다.

한편, QR 분해는 Q를 직교 행렬로 해서, QR을 A로 표현하고, R은 상 삼각 행렬을 표현한다. 시스템 Q (Rx) = b는 Rx = QTb = c에 의해 해결되고 시스템 Rx = c는 후진대입(back substitution)에 의해 해결된다.[2] 필요한 추가 및 곱셈의 수는 LU 분해를 사용하는 것의 약 두 배이지만, QR 분해가 수치적으로 안정하므로 부동 소수점과 같은 연산에서 더 이상 부수적인 데이터가 필요하지는 않게된다.

선형 방정식과 관련한 분해[편집]

고윳값에 근거한 분해[편집]

다른 분해 방법들[편집]

같이 보기[편집]

참고[편집]