크로네커 곱 (Kronecker Product)

수학
한 줄 정의: 한 행렬의 각 성분에 다른 행렬 전체를 곱해 큰 행렬을 만드는 연산입니다.

쉽게 풀면

두 행렬을 곱하는 또 다른 방식입니다. 첫 번째 행렬의 각 성분마다 두 번째 행렬 전체를 그 성분배 해서 블록으로 채워 넣으면 됩니다. 결과는 두 행렬의 크기를 곱한 만큼 커집니다. 예를 들어 2×2 행렬과 3×3 행렬의 크로네커 곱은 6×6 행렬이 됩니다.

왜 중요한가

여러 요인이 동시에 작용하는 구조를 한 행렬로 표현할 수 있어 실험설계의 모형행렬, 다차원 신호처리, 공분산 구조 모형에서 널리 쓰입니다. 양자정보에서 여러 큐비트의 결합 상태를 기술할 때도 이 연산이 기본 도구입니다.

논문에서는 이렇게 쓰입니다

"두 요인의 설계행렬을 크로네커 곱으로 결합하여 전체 모형의 계획행렬을 구성하였다."

조금 더 깊게 보면

크로네커 곱은 결합법칙을 만족하지만 교환법칙은 만족하지 않으며, 두 행렬의 고유값들의 모든 곱이 결과 행렬의 고유값이 된다는 유용한 성질을 가집니다. 행렬식과 대각합도 원래 행렬들의 값으로 간단히 표현됩니다. 행렬 방정식을 벡터화하여 보통의 선형 연립방정식으로 바꿀 때 이 연산이 핵심 역할을 하므로, 리아푸노프 방정식이나 실베스터 방정식 처리에 자주 등장합니다.

주의할 점

일반적인 행렬곱과는 완전히 다른 연산이며, 두 행렬의 크기가 맞지 않아도 언제나 정의된다는 점이 다릅니다. 성분끼리 곱하는 아다마르 곱과도 구별해야 합니다.

관련 용어