일반적으로 이용하는 행렬곱의 방법

 

행렬의 곱은 일반적으로 다음과 같이 생각한다.

그림 1. 행렬의 일반적인 곱셈 방법

 

수식을 이용해 조금 더 정확하게 쓰면 다음과 같다.

이것을 잘 뜯어 생각해보면, 왼쪽에 있는 행렬에서 행 하나를 가져오고 오른쪽에 있는 행렬에서 열 하나를 가져와서 계산하게 된다는 것을 알 수 있다.

 

또, 가져온 행 혹은 열을 벡터로 생각한다면 계산된 행렬의 각 원소값은 벡터의 내적을 표현한 것임을 알 수 있다.

 

즉, 식(2)의 계산 결과에서 1행 1열의 원소값은 계산 되기 전 두 행렬 중 왼쪽 행렬의 1행의 행벡터와 오른쪽 행렬의 1열의 열벡터를 가져와 계산한 것임을 알 수 있다.

 

즉, 일반적으로 이용하는 행렬곱의 관점은 행벡터와 열벡터 간의 내적(inner product)을 계산함으로써 행렬곱이 이루어진다는 것을 알 수 있다.

 

여기서 행벡터와 행벡터, 혹은 열벡터와 열벡터가 아닌, “행벡터와 열벡터 간의 연산”이 이루어진다는 점이 중요하다.

 

참고로 이러한 관점을 응용한 개념으로는 공분산 행렬이 있으며, 공분산 행렬의 의미는 여러 종류의 feature들이 서로 얼마나 닮았는지(즉, 내적을 이용)를 의미한다.

 

공분산 = 데이터 간의 닮음을 표현

 


열벡터의 선형 결합

또 다른 방식으로 행렬의 곱을 이해하는 방법은 열벡터의 선형결합으로 이해하는 방법이다.

다시 말해 행렬과 벡터의 곱은 행렬을 구성하고 있는 (1,3), (2,4) 두 열벡터의 선형결합을 다른 방식으로 표현한 것이라고 할 수 있는 것이다.

 


열공간을 기반한 해석

벡터의 선형결합이 의미하는 것은 벡터 공간의 생성이다. 즉, 행렬과 벡터의 곱이라는 수식이 우리에게 묻는것은 “주어진 열벡터들을 이용해 만들 수 있는 벡터 공간(즉, 열공간(column space))에 대한 탐구”라는 점에서 매우 중요하다고 할 수 있다.

 

 

다음의 수식의 의미를 생각해보자.

아래와 같은 문제를 생각해보자.

이 문제의 해답은 아래와 같다는 것은 연립방정식을 풀면 쉽게 알 수 있다.

하지만, 이번엔 이 식을 아래와 같이 생각해보자.

필자는 이렇게 해석하고 싶다.

이러한 관점을 이용한 선형대수학에서의 응용은 선형연립방정식의 풀이 선형 회귀가 있다.


선형 변환을 기반한 해석

이 뿐 아니라, 행렬과 벡터의 곱이 열벡터의 선형결합이라는 해석이 우리에게 주는 또 다른 관점은 행렬과 벡터의 곱을 기저 벡터의 변형을 통한 벡터의 선형 변환으로 해석할 수 있도록 도움을 주기 때문이다.

 

예를 들어, 행렬

를 이용해 벡터

를 변환시켜 보면,

임을 알 수 있는데, 아래의 그림에서 처럼 이 값은 새로운 두 기저벡터의 1배와 1배의 합으로 표현될 수 있다.

 

(1,0) (0,1)이라는 기저벡터가

(2,1) (-3,1)의 기저벡터로 바뀌었다.

(-1,2) 로 바뀌었다.

 

원래의 기저벡터(1,0), (0,1)은

새로 변환된 공간에서의 기저벡터(2,1), (-3,1)의

1배와 1배의 합으로 표현될 수 있다.

 

이것이 선형 변환이다.

 

 

이러한 관점을 이용한 선형대수학에서의 응용은 고윳값과 고유벡터, 주성분 분석(PCA), 특이값 분해(SVD) 등이 있다.

 

Ref : https://angeloyeo.github.io/2020/09/08/matrix_multiplication.html

복사했습니다!