선형대수의 개념을 모르는 사람이더라도, 엑셀은 사용해봤으리라 생각이 든다.
우리는 어떠한 정보를 기록해두기 위해서 엑셀을 사용하는데, 엑셀 테이블의 행과 열이 선형대수 관점에서 어떻게 사용되고 있을까?
아래의 사람의 개인정보를 담은 테이블을 보자
각 행은 한 사람에 대한 데이터를 담고 있다.
이 맨 윗 행에 대한 정보를 테이블에서 똑 떼와서 본다면 160cm, 80kg, 19세, 남성 이라는 정보가 --> (160, 80, 19, 1) 이렇게 하나의 벡터로 표현을 할 수 있다.
물론 파이썬 pandas의 관점에서 생각을 해보면, 하나의 열 (키, 몸무게, 연령, 성별) 이라는 변수들이 벡터로서 표현되어 각 열벡터가 하나로 취합되어 테이블(=데이터프레임=행렬)로써 표현이 되고 있다.
마찬가지로 두번째 세번째 행에 대한 정보를 똑 떼와서 데이터로 표현해보면 각각 --> (170, 70, 27, 2)와 (180, 56, 30, 1)로 표현할 수 있다.
이를 하나로 취합한다면
(160, 80, 19, 1)
(170, 70, 27, 2)
(180, 56, 30, 1)
이렇게 표현이 되는데, 이때 데이터를 행렬이라는 개념에 입각해서 바라볼 수 있다.
$$ \begin{bmatrix}
160& 80& 19& 1 \\
170& 70& 27& 2 \\
180& 56& 30& 1 \\
\end{bmatrix} $$
이렇듯 정형데이터도 선형대수 관점에서 바라보면 다양한 응용을 할 수 있다.
위 데이터의 표현을 기반으로 활용하는 사례를 하나 들어보자면...
추천시스템에서는
우리는 Euclidean distance를 구해서 김**과 이**의 거리가 더 가까운지, 또는 김**과 박**의 거리가 더 가까운지 확인할 수 있다.
이걸 어디서 쓰느냐? 거리가 짧으면 그만큼 의미가 비슷하다고 판단하기에, 추천시스템에서 쉽게 활용이 될 수 있다.
마찬가지로 코사인 유사도를 적용할 수 있다.
이 외의 고급 데이터 사이언스 기법들이 있으나, 여기서는 생략하도록 하겠다.
벡터를 알고 선형대수를 공부한다면, 단순 테이블을 보더라도 활용방안에 대해 더 깊고 빠르게 생각할 수 있다는 장점이 있다.
'선형대수학 > 벡터' 카테고리의 다른 글
[선형대수] 정사영 (Projection) (1) | 2022.12.23 |
---|---|
내적과 코사인유사도 (dot product & cosine similarity) (0) | 2022.12.22 |
Norm, 노름, 거리, euclidean distance, 데이터 유사도 (0) | 2022.12.21 |
일차결합(linear combination) (0) | 2022.12.21 |