우리는 지난 글에서 엔트로피를 통해 정보의 가치를 정량화하는 법을 학습했습니다.
인공지능이 이 소중한 정보를 처리하기 위해서는 흩어져 있는 개별 숫자들을 하나의 의미 있는 덩어리로 묶어내는 과정이 반드시 필요합니다.
선형대수학의 핵심인 벡터와 행렬은 복잡한 세상을 다차원 공간상의 점과 움직임으로 변환하며, 이것이 곧 머신러닝의 모든 연산이 시작되는 지점입니다.

벡터(Vector): 공간 위의 점이자 방향이 있는 화살표
수학적으로 벡터는 크기와 방향을 동시에 가진 양을 의미하지만, 데이터 과학에서는 이를 '숫자들의 목록'으로 이해합니다.
하나의 벡터는 n차원 공간상의 한 점을 가리키며, 이는 곧 데이터가 가진 여러 특성(Feature)이 결합된 하나의 상태를 의미합니다.
예를 들어 한 사람의 키, 몸무게, 나이를 (175, 70, 30)이라는 벡터로 표현하면, 우리는 그 사람을 3차원 공간상의 한 점으로 정의할 수 있습니다.
벡터들 사이의 거리를 계산하거나 내적(Inner Product)을 구하는 행위는 곧 데이터 사이의 유사성을 측정하는 핵심적인 작업이 됩니다.
행렬(Matrix): 데이터를 담는 표이자 공간을 변형하는 도구
행렬은 여러 개의 벡터를 가로(행)와 세로(열)로 쌓아 올린 2차원 숫자 배열입니다.
데이터 분석에서 행렬은 수많은 샘플(행)과 그 샘플들의 특성(열)을 담고 있는 거대한 데이터베이스와 같습니다.
더 나아가 선형대수학적 관점에서 행렬은 공간을 비틀거나 늘리고 회전시키는 '선형 변환(Linear Transformation)'의 역할을 수행합니다.
입력 벡터에 행렬을 곱한다는 것은 데이터를 새로운 차원이나 새로운 관점으로 투영시킨다는 공학적 의미를 담고 있습니다.
데이터를 숫자의 묶음으로 보는 법: 피처 벡터(Feature Vector)
머신러닝 모델이 사진이나 텍스트를 처리할 수 있는 이유는 모든 정보를 '피처 벡터'라는 숫자의 묶음으로 변환하기 때문입니다.
이미지의 픽셀 밝기값이나 단어의 출현 빈도를 벡터화하면, 비로소 컴퓨터는 미분과 같은 수학적 연산을 적용할 준비를 마칩니다.
아래 표는 데이터의 형태에 따른 수학적 표기법과 그 의미를 정리한 내용입니다.
| 구분 | 수학적 명칭 | 머신러닝에서의 역할 |
|---|---|---|
| 스칼라 (Scalar) | 단일 숫자 ($a$) | 가중치 계수, 학습률 등 단일 파라미터 |
| 벡터 (Vector) | 1차원 배열 ($\mathbf{x}$) | 하나의 데이터 샘플(특성 묶음) |
| 행렬 (Matrix) | 2차원 배열 ($\mathbf{A}$) | 전체 데이터셋, 신경망의 가중치 층 |
| 텐서 (Tensor) | 3차원 이상의 배열 | 컬러 이미지(RGB), 비디오 데이터 등 |
행렬 곱셈의 본질: 층과 층 사이의 정보 전달
딥러닝의 인공 신경망은 수많은 행렬 곱셈($\mathbf{y} = \mathbf{Wx} + \mathbf{b}$)의 연속으로 이루어져 있습니다.
여기서 가중치 행렬($\mathbf{W}$)은 입력 데이터($\mathbf{x}$)가 다음 층으로 넘어갈 때 어떤 정보가 중요하게 전달되어야 하는지를 결정하는 필터 역할을 합니다.
행렬의 행과 벡터의 열을 곱하여 더하는 과정은 각 특성에 가중치를 부여해 합산하는 가중합(Weighted Sum) 연산을 효율적으로 수행합니다.
결국 인공지능이 학습한다는 것은 이 거대한 행렬 속의 숫자들을 미세하게 조정하여 최적의 변환 규칙을 찾아내는 행위입니다.
머신러닝 병렬 연산과 GPU의 가속 원리
왜 인공지능은 CPU보다 GPU에서 더 빠르게 작동할까요? 그 해답은 행렬 연산의 독립성에 있습니다.
행렬의 각 원소를 계산하는 과정은 서로의 결과에 의존하지 않기 때문에 수천 개의 연산을 동시에 처리하는 병렬화가 가능합니다.
GPU는 이 수많은 단순 행렬 곱셈을 한꺼번에 처리하도록 설계된 특수 목적 하드웨어입니다.
선형대수학이라는 수학적 틀이 있었기에 우리는 하드웨어 성능을 극한으로 끌어올려 현대의 거대 모델을 학습시킬 수 있게 되었습니다.
선형대수가 그리는 인공지능의 지형도
벡터와 행렬은 인공지능이 세상을 바라보는 눈이자, 복잡한 데이터를 정돈하는 질서입니다.
우리가 선형대수의 기초를 탄탄히 다져야 하는 이유는, 코드 한 줄 이면에 숨겨진 공간의 변화와 정보의 흐름을 이해하기 위해서입니다.
숫자의 묶음 속에 숨겨진 기하학적 의미를 발견할 때, 비로소 데이터 분석의 진정한 재미가 시작됩니다.
지금까지 벡터와 행렬의 본질, 그리고 머신러닝 연산의 기초 원리를 살펴보았습니다.
수학적 기초가 명확할 때 우리는 단순히 라이브러리를 활용하는 수준을 넘어, 모델의 본질적인 한계를 파악하고 개선할 수 있습니다.
오늘 정리한 내용이 여러분이 인공지능의 연산 구조를 깊이 있게 통찰하는 데 큰 도움이 되길 바랍니다.