행렬 분해

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

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

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

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

선형 방정식과 관련한 분해 
 LU 분해
 QR 분해
 계수 인수분해
 촐레스키 분해

고윳값에 근거한 분해 
 고유값 분해
 조르단 분해
 슈어 분해
 QZ 분해
 특잇값 분해
 다카기 분해(高木 decomposition)

다른 분해 방법들 
 극분해
 모스토우 분해
 싱크혼 일반 형식
 윌리엄슨 일반 형식
 비음수 행렬 분해

같이 보기 
 행렬의 인수분해

참고 

 Bluebit Software
 (매스월드)Wolfram Alpha Matrix Decomposition Computation » LU and QR Decomposition
 (springer.com ,European Mathematical Society)
 Springer Encyclopaedia of Mathematics » Matrix factorization
 (GraphLab)collaborative filtering library, large scale parallel implementation of matrix decomposition methods (in C++) for multicore.

 
행렬
행렬론