행렬의 덧셈
행렬의 덧셈은 두 행렬의 크기가 같을 때에만 정의된다. 즉, 두 행렬이 모두 m \times n 크기를 가지고 있을 때만 덧셈이 가능하다. 이때 두 행렬 \mathbf{A}와 \mathbf{B}의 덧셈은 대응하는 성분끼리 더하는 방식으로 이루어진다.
이때, 행렬의 덧셈 \mathbf{C} = \mathbf{A} + \mathbf{B}는 다음과 같이 성분별로 계산된다.
즉, \mathbf{C}의 각 성분은 다음과 같이 정의된다.
이와 같은 방식으로 행렬의 덧셈은 매우 간단하게 계산된다.
행렬의 곱셈
행렬의 곱셈은 행렬의 덧셈과 달리 정의가 좀 더 복잡하며, 행렬의 곱셈이 정의되기 위해서는 두 행렬의 크기가 특정한 조건을 만족해야 한다. 두 행렬 \mathbf{A}와 \mathbf{B}의 곱셈이 가능하려면, \mathbf{A}의 열의 개수가 \mathbf{B}의 행의 개수와 같아야 한다.
즉, \mathbf{A}가 m \times n 행렬이고, \mathbf{B}가 n \times p 행렬일 때, 두 행렬의 곱셈 \mathbf{C} = \mathbf{A} \mathbf{B}는 m \times p 행렬로 정의된다. 이때 \mathbf{C}의 각 성분은 다음과 같이 계산된다.
즉, 행렬의 곱셈은 다음과 같이 성분별로 계산된다.
여기서 c_{ij}는 \mathbf{A}의 i-번째 행과 \mathbf{B}의 j-번째 열의 내적을 나타낸다.
행렬 곱셈의 성질
행렬의 곱셈은 덧셈과 달리 일반적으로 교환법칙을 따르지 않는다. 즉, 두 행렬 \mathbf{A}와 \mathbf{B}에 대해 \mathbf{A} \mathbf{B} \neq \mathbf{B} \mathbf{A}일 수 있다. 이는 행렬 곱셈이 성분별로 정의되지 않고, 행과 열의 내적으로 정의되기 때문이다. 그러나 행렬 곱셈은 결합법칙과 분배법칙을 만족한다.
결합법칙
행렬의 곱셈은 결합법칙을 따른다. 즉, 세 개의 행렬 \mathbf{A}, \mathbf{B}, \mathbf{C}가 각각 곱셈이 가능할 때 다음이 성립한다.
이는 행렬의 곱셈 순서를 바꾸는 것이 아니라, 괄호를 적용하는 방식에 따라 순서를 조정하는 것을 의미한다.
분배법칙
행렬의 곱셈은 분배법칙을 따른다. 즉, 두 행렬의 덧셈과 곱셈이 모두 가능할 때 다음이 성립한다.
이 성질은 스칼라 곱셈의 분배법칙과 유사하게, 행렬 곱셈에서도 분배가 가능함을 나타낸다.
단위 행렬과 행렬 곱셈
단위 행렬 \mathbf{I}는 행렬 곱셈에서 항등원 역할을 한다. 단위 행렬은 크기가 n \times n인 정사각행렬로, 대각선 성분이 모두 1이고 나머지 성분이 모두 0인 행렬을 의미한다.
임의의 n \times n 행렬 \mathbf{A}에 대해, 단위 행렬과의 곱셈은 다음과 같은 항등식을 만족한다.
이는 행렬 \mathbf{A}가 단위 행렬과 곱해지면 그 값이 변하지 않음을 나타낸다.
영행렬과 행렬 곱셈
영행렬 \mathbf{0}는 모든 성분이 0인 행렬을 말하며, 행렬 곱셈에서 소거 역할을 한다. 즉, m \times n 행렬 \mathbf{A}와 n \times p 행렬 \mathbf{B}에 대해 영행렬과의 곱셈은 다음과 같다.
이때 \mathbf{0}는 그 크기가 상황에 따라 달라질 수 있으며, \mathbf{A} \mathbf{0}의 결과는 m \times p 크기의 영행렬이다.
스칼라와 행렬의 곱셈
스칼라와 행렬의 곱셈은 스칼라 \alpha와 임의의 m \times n 행렬 \mathbf{A}가 주어졌을 때 정의된다. 이 경우 스칼라 곱셈은 행렬의 각 성분에 스칼라를 곱하는 방식으로 이루어진다.
따라서 스칼라 \alpha와 행렬 \mathbf{A}의 곱셈은 각 성분별로 곱셈을 수행하는 방식으로, 행렬의 크기는 변하지 않고 단순히 성분 값만 변하게 된다.
행렬 곱셈의 해석
행렬 곱셈은 여러 방식으로 해석될 수 있으며, 특히 선형 변환과 관계가 깊다. 행렬은 벡터 공간에서의 선형 변환을 나타내며, 두 행렬의 곱셈은 연속적인 두 선형 변환을 하나의 변환으로 합성하는 것과 같다.
임의의 행렬 \mathbf{A}와 \mathbf{B}에 대해, 곱셈 결과 \mathbf{C} = \mathbf{A} \mathbf{B}는 벡터 공간에서 \mathbf{B}에 의한 변환 후에 \mathbf{A}에 의한 변환을 수행하는 것과 동일하다. 이를 기하학적으로 표현하면, 행렬의 곱셈은 벡터의 변형을 반복적으로 수행하는 과정을 나타낸다고 볼 수 있다.
열 벡터와 행렬 곱셈
행렬의 곱셈은 열 벡터와 행렬의 곱셈으로도 해석될 수 있다. n \times p 행렬 \mathbf{B}와 p \times 1 열 벡터 \mathbf{x}가 주어졌을 때, 행렬 곱셈 \mathbf{B} \mathbf{x}는 열 벡터의 선형 결합을 의미한다.
이때, 행렬과 벡터의 곱은 다음과 같이 계산된다.
이 결과는 열 벡터 \mathbf{x}의 각 성분이 \mathbf{B}의 열 벡터와 곱해진 후 더해지는 방식으로 계산된다.
행 벡터와 행렬 곱셈
열 벡터와의 곱셈과 마찬가지로, 행 벡터와 행렬의 곱셈도 중요한 해석을 제공한다. 1 \times m 크기의 행 벡터 \mathbf{y}와 m \times n 크기의 행렬 \mathbf{A}가 주어졌을 때, 행 벡터와 행렬의 곱 \mathbf{y} \mathbf{A}는 다음과 같이 정의된다.
이때 행 벡터와 행렬의 곱은 행 벡터의 각 성분과 행렬의 각 열의 성분이 곱해져 더해진다.
이 결과는 1 \times n 크기의 행 벡터로, 행 벡터 \mathbf{y}와 행렬 \mathbf{A}의 각 열 벡터의 내적을 계산하는 방식으로 해석할 수 있다.
차원에 따른 행렬 곱셈의 제약
행렬 곱셈이 정의되기 위해서는 행렬의 크기가 반드시 특정 조건을 만족해야 한다. 구체적으로, \mathbf{A}가 m \times n 크기의 행렬이고, \mathbf{B}가 n \times p 크기의 행렬일 때, 두 행렬의 곱 \mathbf{A} \mathbf{B}는 m \times p 크기의 행렬로 정의된다. 이 조건을 만족하지 않으면 곱셈 자체가 정의되지 않는다.
이처럼, 행렬 곱셈의 차원은 곱셈이 정의되기 위해 중요한 역할을 하며, 각 행렬의 크기가 상호 호환 가능해야 한다.
행렬 곱셈의 계산 복잡도
행렬 곱셈의 계산 복잡도는 행렬의 크기에 따라 달라지며, 곱셈은 각 성분을 계산하는 데 상당한 계산 비용이 소요된다. m \times n 행렬 \mathbf{A}와 n \times p 행렬 \mathbf{B}의 곱셈을 계산하는 데 필요한 총 곱셈 연산의 수는 다음과 같다.
즉, \mathbf{A} \mathbf{B}를 계산하려면 m \times n \times p번의 곱셈과 더불어 동일한 수의 덧셈 연산이 필요하다. 이로 인해 행렬의 크기가 커질수록 곱셈의 계산 비용이 크게 증가한다.
행렬 곱셈의 예
예를 들어, 다음과 같은 두 행렬 \mathbf{A}와 \mathbf{B}가 있다고 가정하자.
두 행렬의 곱 \mathbf{C} = \mathbf{A} \mathbf{B}는 다음과 같이 계산된다.
따라서 두 행렬 \mathbf{A}와 \mathbf{B}의 곱셈 결과는 다음과 같다.
이 예제에서 볼 수 있듯이, 행렬 곱셈은 각 성분에 대해 행렬의 성분별 곱과 덧셈을 반복하여 계산된다.