모노산달로스의 행보
[Linear Algebra] 행렬 곱셈 (Matrix Multiplication) 본문
선형대수학 - 행렬 곱셈
인공지능 시대가 떠올랐습니다. 선형대수학은 데이터의 표현과 변환에 핵심적인 역할을 하여 AI 모델의 학습 및 예측 과정에서 효율적인 계산을 가능하게 합니다. 또한, 차원 축소와 같은 기법으로 고차원 데이터를 효과적으로 처리하고 시각화하므로 AI 개발을 위해 선형대수학 공부가 필수적입니다.
위와 같은 이유로 선형대수학을 공부하면서 정리한 내용을 담은 포스트입니다.
행렬 곱셈(Matrix Multiplication)이란?
우리는 이전에 하나의 행렬을 대상으로 실수를 곱한 적이 있습니다. 그렇다면 행렬이 여러개일 때 서로 연산이 가능할까요? 덧셈과 뺄샘은 물론 곱셈 연산 또한 가능합니다. 하지만 곱셈 연산은 같은 위치의 값을 단순히 더하고 빼는 것과는 조금 다른 과정을 거치게 됩니다.
차원 문제(Dimensions matter)
행렬 A와 행렬 B간의 곱셈 연산을 수행하는 경우에 그 순서는 매우 중요합니다. A · B의 연산 결과와 B · A의 연산 결과는 다릅니다. 다시 말해서, 교환 법칙(Commutative)가 성립하는 실수의 곱셈과 달리 행렬의 곱셈에서는 순서에 따라 값이 바뀔 수 있습니다.
1. 첫 번째 행렬의 열의 크기와 두 번째 행렬의 행의 크기가 같아야한다.
행렬간 곱셈을 수행하기위한 조건은 위와 같습니다. 예를 들어 3 x 2 크기의 행렬 A가 존재한다면, 곱셈 연산이 가능한 행렬 B는 2 x 1 혹은 2 x 2, 2 x 3 ... 과 같을 것 입니다. (위 표현식에서 첫 번째 수는 행의 크기 두 번째 수는 열의 크기를 의미합니다. 행렬 A의 열의 크기가 2 이므로 행렬 B의 행의 크기가 2가 되어야 합니다.)
조금 더 쉽게 위와 같이 표현이 가능합니다. 2 x 3의 크기를 가지는 행렬 A와 3 x 4의 크기를 가지는 행렬 B를 곱할 수 있습니다.
반대로 BA의 순서로 곱셈 연산을 시도하는 것은 불가능하다는 것을 알 수 있습니다.
곱셈의 결과는 첫 번째 행렬의 행의 크기와 두 번째 행렬의 열의 크기로 결정이 됩니다. 즉 AB 곱셈의 결과로 2 x 4 행렬이 되는 것을 알 수 있습니다.
행렬 곱셈 예시(Example of matrix multiplication)
이제 실제 행렬의 곱셈 과정을 알아보겠습니다. 2 x 2 크기의 행렬인 A와 B가 존재합니다. 여기서 행렬 A의 첫 번째 행은 R1, 두 번째 행은 R2로 표현하겠습니다. 그리고 행렬 B의 첫 번째 열은 C1, 두 번째 열은 C2로 표현하겠습니다.
위와 같이 표현된 행렬 A와 B은 아래와 같이 곱셈 연산이 가능합니다.
R1C1 : 행렬 A의 첫 번째 행과 행렬 B의 첫 번째 열이 곱해져 첫 번째 행의 첫 번째 열의 값이 됩니다.
R1C2 : 행렬 A의 첫 번째 행과 행렬 B의 두 번째 열이 곱해져 첫 번째 행의 두 번째 열의 값이 됩니다.
R2C1 : 행렬 A의 두 번째 행과 행렬 B의 첫 번째 열이 곱해져 두 번째 행의 첫 번째 열의 값이 됩니다.
R2C2 : 행렬 A의 두 번째 행과 행렬 B의 첫 번째 열이 곱해져 두 번째 행의 두 번째 열의 값이 됩니다.
R1은 2와 6의 값을 가집니다. C1은 -4와 1의 값을 가집니다. 따라서 둘을 곱할때는 2 x (-4) + 6 x (1) 과 같은 연산을 거치게 됩니다. 연산 결과는 -2이며 이는 AB 행렬의 첫 번째 행의 첫 번째 열의 값이 됩니다.
마찬가지로 R1과 C2는 2 x (-2) + 6 x (0)으로 연산이 가능합니다. 그 결과는 -4이며 AB 행렬의 첫 번째 행의 두 번째 열의 값이 됩니다.
R2과 C1는 3 x (-4) + -1 x (1)으로 연산이 가능합니다. 그 결과는 -13이며 AB 행렬의 첫 번째 행의 두 번째 열의 값이 됩니다.
R2과 C2는 3 x (-2) + -1 x (0)으로 연산이 가능합니다. 그 결과는 -6이며 AB 행렬의 첫 번째 행의 두 번째 열의 값이 됩니다.
행렬 곱셈의 결과는 위와 같습니다.
행렬 곱셈의 성질(Properties of matrix multiplication)
1. 행렬 곱셈은 교환 법칙(Commutative)이 성립하지 않는다.
2. 행렬 곱셈은 결합 법칙(Associative)가 성립한다.
3. 행렬 곱셈은 분배 법칙(Distributive)가 성립한다.
앞서 설명하였듯 AB와 BA의 결과 값은 다릅니다. 행렬 곱셈의 교환 법칙은 성립하지 않습니다.
행렬 곱셈은 결합 법칙이 성립합니다. 위 식과 같이, 괄호의 위치를 옮겨도 연산 결과는 동일합니다. 행렬의 순서를 바꾸지 않기 때문입니다.
행렬 곱셈은 분배 법칙이 성립합니다. 다른 값들 사이에 곱셈을 분배하는 것이 가능합니다.
'Math > Linear Algebra' 카테고리의 다른 글
[Linear Algebra] 가우스-조던 소거법 (Gauss-Jordan elimination) (1) | 2024.07.01 |
---|---|
[Linear Algebra] 피벗 성분 및 행 사다리꼴(Pivot entries and row-enchelon forms) (0) | 2024.06.27 |