AI 분야에서 「학습한다(train)」는 말은 일상의 학습과 다른 매우 구체적인 뜻을 가집니다.
한마디로 말하면 「데이터를 보여 주고, 모델 안의 숫자(파라미터)를 조금씩 바꿔 가며 예측이 정답에 가까워지도록 만드는 과정」입니다.
조금 더 풀어 보겠습니다.
모델을 한 권의 「수많은 다이얼이 달린 큰 기계」라고 상상해 봅시다.
다이얼 하나하나는 모델의 파라미터에 해당합니다.
처음에는 다이얼이 모두 무작위로 맞춰져 있어, 무엇을 입력해도 엉뚱한 답이 나옵니다.
이때 학습 데이터를 한 묶음씩 모델에 보여 주고, 모델이 낸 예측이 정답과 얼마나 멀리 떨어졌는지를 「손실함수(loss function)」로 잰 뒤, 각 다이얼을 어느 방향으로 얼마만큼 돌리면 손실이 줄어들지 계산해 다이얼을 미세하게 조정합니다.
이 한 번의 사이클이 학습의 한 「스텝(step)」입니다.
수십·수백만 번의 스텝이 누적되면 다이얼이 점차 「데이터의 패턴」을 반영하는 위치로 자리잡습니다.
그 시점부터 모델은 처음 보는 입력에 대해서도 그럴듯한 답을 낼 수 있게 됩니다.
이 자리잡힌 다이얼 값들의 묶음이 바로 「학습된 모델」, 즉 「가중치(weights)」입니다.
비유하자면 학습은 「수많은 보디빌더가 거대한 콘솔 패널 앞에서 매번 1mm씩 다이얼을 돌려 가며 거대한 풍경 그림이 점점 또렷해지도록 맞춰 가는 작업」과 같습니다.
매우 단조로운 반복의 누적이 결국 우리가 보는 ChatGPT의 답을 만들어 냅니다.
한 줄 요약
AI에서 「학습」은 데이터를 보여 주고 손실함수로 오차를 잰 뒤, 모델 안의 파라미터(수많은 다이얼)를 조금씩 돌려 예측이 정답에 가까워지도록 만드는 반복 과정입니다.
더 알아볼 것
- 손실함수의 종류 — MSE·Cross Entropy
- 역전파 — 다이얼을 어느 쪽으로 돌릴지 계산하는 법
- 옵티마이저 — 다이얼 돌리는 전략의 모음