QR 분해

선형대수학에서 QR 분해()는 실수 성분 정사각 행렬을 직교 행렬와 상삼각 행렬의 곱으로 나타내는 행렬 분해 이다. 그람-슈미트 과정이나 하우스홀더 행렬이나 기븐스 회전을 통해 얻을 수 있으며, 선형 최소 제곱법이나 QR 알고리즘 따위에서 쓰인다.

 정의 
실수체 또는 복소수체  성분의  행렬 은 항상 다음과 같이 분해할 수 있으며, 이를 의 (두꺼운) QR 분해()라고 한다.

여기서
 는  성분의  정사각 행렬이며, 의 열들은 그 선형 생성의 정규 직교 기저를 이룬다. 즉, 는 일 때 직교 행렬, 일 때 유니터리 행렬이다.
 는  성분의  행렬이며, 에 대하여 이다. 즉, 상삼각 행렬이다.

 얇은 분해 
실수체 또는 복소수체  성분의  행렬 에 대하여, 만약 이라면, 을 다음과 같이 분해할 수 있으며, 이를 의 얇은 QR 분해()라고 한다.

여기서
 은  성분의  행렬이며, 의 열들은 그 선형 생성의 정규 직교 기저를 이룬다. 그러나, 정사각 행렬일 필요가 없으므로 직교 행렬이나 유니터리 행렬이 아닐 수 있다.
 은  성분의  상삼각 행렬이다.
물론, 정사각 행렬의 경우 () QR 분해와 얇은 QR 분해를 구분할 필요가 없다. 얇은 QR 분해는 QR 분해의 특수한 경우이다. 구체적으로, 이며, QR 분해 가 주어졌다고 하자. 이 의 첫 열 들로 이루어진  행렬, 이 의 첫 행들로 이루어진  행렬이라고 하였을 때,

이므로

이며, 이는 의 얇은 QR 분해를 이룬다. 또한, 모든 얇은 QR 분해는 이러한 방식으로 얻을 수 있다.

 가역 행렬과 유일성 
다음 두 조건이 서로 동치이다.
 . 여기서 는 행렬 계수이다.
 의 열들이 선형 독립 집합을 이룬다.
또한, 이 조건은 을 함의한다. 인 경우, 추가로 다음 조건이 이와 동치이다.
 은 가역 행렬이다.
만약 이라면, 다음이 성립한다.
 의 열들은 의 열들의 선형 생성의 정규 직교 기저를 이룬다. 보다 일반적으로, 에 대하여, 의 첫 열은 의 첫 열들의 선형 생성의 정규 직교 기저를 이룬다. 의 번째 열이 의 첫 열들의 선형 결합인 사실은 의 상삼각성에 대응한다.
 의 번째 열과 번째 열 사이의 열들은 의 열들의 선형 생성의 직교 여공간의 정규 직교 기저를 이룬다.
 에 대하여, . 즉, 은 가역 행렬이다.
  ()인 경우로 제한하면, 이나 은 유일하며, 도 유일하다. 이 경우, 은 의 숄레스키 분해의 상삼각 성분과 같다. 그러나 은 부분 공간의 정규 직교 기저를 전체 공간의 정규 직교 기저로 확충하는 방법에 대응하므로, 일반적으로 유일하지 않다.
이에 따라, QR 분해는 일반적으로 유일하지 않으며, 이라고 가정하더라도 인 경우 유일하지 않다. 다만, 만약 이라면, 의 얇은 QR 분해는 유일하다. 특히, 가역 행렬의 QR 분해는 유일하다.

 방법 
 그람-슈미트 과정 

벡터 이 일차독립이라 하자. 행렬  에 대해, 그람-슈미트 직교정규화를 사용하면

인 사영 연산자를 이용해서


와 같이 직교정규기저 를 얻을 수 있다.
은  내적 는 노름
위 식을 다시 정리하면

가 되므로,

와 같이 놓으면 이 성립한다.

 예 

정규 직교 행렬 는 의 성질을 갖고있고,

따라서,  는 다음과 같이 그람-슈미트 절차를 따라서,

그리고,

확인해보면,
이므로,

이다.
분해 된다.
그러나,

분수에의한 부동소수점연산이 관계함으로  오차가 발생할 수 있다.

RQ 분해와의 관계

 분해는 행렬 를 상삼각행렬 (직각 삼각형이라고도 함) 및 직교 행렬 의 곱으로 변환한다. 분해와의 유일한 차이점은 행렬의 순서이다.

분해는 첫 번째 열에서 시작된  행렬의 열의 그람-슈미트 직교화이다.

 분해는 마지막 행에서 시작하는  행렬의 행의 그람-슈미트 직교화이다.

장점과 단점
그람-슈미트 프로세스는 본질적으로 수치적으로 불안정할 수 있다. 투영법의 적용에는 직교화에 대한 주요한 기하학적 유추가 있지만 직교화 자체는 수치 오류가 발생하기 쉽다. 그러나 구현의 용이함이 중요한 장점이다. 사전 작성된 선형 대수 라이브러리(library)를 사용할 수 없거나 용이하지 않은 경우, 이 알고리즘을 프로토타입(prototype)에 사용할 수 있는 유용한 알고리즘으로 적용할 수 있다.

 하우스홀더 방법 

하우스홀더 리플렉터(하우스홀더 변환,Householder reflection)를 이용하여 한 열씩을 상삼각행렬로 바꾸어감으로써 와을 구할 수 있다. 이 방법은 행렬을 하우스홀더 행렬의 곱으로 구해주기 때문에, 직접 를 구할 필요가 없을 때 유용하다.

또, 그람-슈미트 방법은 컴퓨터를 활용하여 계산할 때 0으로 계산되어야 하는 R의 성분이 0이 아닌 값들을 가지는 경우가 많다. 이는 그람-슈미트 방법은 분수의 연산을 수반하고 이에 따른 부동소수점 연산의 오차가 발생하기 때문이다. 크기가 작은 행렬에서는 이 문제가 크게 작용하지 않으나, 크기가 커질수록 오차도 커지게 된다. 때문에 오차를 줄이기 위해서 하우스홀더 변환을 사용하며 본질적으로 이 변환은 의 특정 성분을 0으로 만들어 상삼각행렬이 되도록 하기 때문에 수치적으로 안정하다. 하지만, 새로운 0 성분을 만드는 모든 변환이 와  모두를 바꾸기 때문에 하우스홀더 변환 알고리즘은 대역폭이 넓고 병렬화가 불가능하다는 단점이 있다.

 예 


먼저 행렬  의 첫 번째 열을 벡터로 변환하는 리플렉션을 찾아야한다.
에서,
벡터 







따라서,


하우스홀더 행렬 에서,

확인해보면,

삼각행렬에 접근하고 있음을 알 수 있다.
행열에서 의 성분 값을 으로 만들면 상삼각행렬을 얻게 된다.

 소행렬식에서 다시 위의 절차를 반복해보면,

위와 같은 방법으로 하우스홀더 변환(Householder transformation)된 행렬을 얻고,

에서 각각 전치행렬을 수행한 후 프로세스가 올바르게 작동하는지 확인해보고,

그리고나서,

그리고,

행렬 는 직교행렬이고  은 상삼각행렬이되고 로  분해된다.

 기븐스 회전 
기븐스 행렬은 특정위치에서 성분값을 으로 조작할 수 있는 방법으로 기븐스 회전을 제공한다.

이것은 임의의 행렬을 직교행렬과 특정위치의 성분값이  인 상삼각행렬로 분해되게 유도할 수 있게된다.

 예 



는 으로 조작된다.

 그리고  도 이러한 절차를 반복한다.
 그리고 으로 조작된다.
결과로 상삼각행렬을 얻는다.
따라서,

직교행렬에서,

그리고, 이다.
로 분해된다.

 같이 보기 
 LU 분해
 특잇값 분해

 참고 문헌 

 외부 링크 


분류:행렬 분해
분류:수치선형대수학