인공지능은 어떻게 정답을 찾을까?
인공지능, 딥러닝, 신경망... 이름만 들으면 무척 복잡하고 난해한 최첨단 기술처럼 느껴집니다. 하지만 그 안을 들여다보면, 기본 원리는 우리가 학창 시절 배웠던 수학과 크게 다르지 않습니다.
오늘은 2차원 평면 위에 놓인 세 개의 점을 지나는 '가장 알맞은 직선'을 찾아보며, 인공지능이 데이터를 학습하는 두 가지 방법을 쉽고 직관적으로 알아보겠습니다.
문제 상황: 세 점을 지나는 완벽한 직선은 없다
2차원 평면 위에 세 점 $(1, 2)$, $(2, 3)$, $(3, 5)$가 있다고 상상해 봅시다.

이 세 점을 동시에 완벽하게 관통하는 하나의 직선은 존재하지 않습니다. 따라서 우리의 목표는 이 점들과 가장 오차가 적은(가장 근접하게 지나가는) 직선인 $y = wx + b$를 찾는 것입니다. (여기서 $w$는 기울기, $b$는 y절편을 의미합니다.)

이 최적의 선을 긋기 위해 우리는 두 가지 접근 방식을 사용할 수 있습니다.
첫 번째 접근: 수학 공식을 통해 단번에 정답 구하기 (해석적 방법)
가장 전통적이고 정확한 방법은 수학 방정식을 푸는 것입니다.
우선 우리가 그은 선이 얼마나 틀렸는지 측정할 '오차'를 정의해야 합니다. 직선이 예측한 값($wx + b$)과 실제 점의 y값 사이의 차이를 구해 제곱한 뒤 모두 더한 것을 오차 함수(Error Function)라고 부릅니다.
$$\begin{align} Error &= (w \cdot 1 + b - 2)^2 + (w \cdot 2 + b - 3)^2 + (w \cdot 3 + b - 5)^2 \\ &=14w^2 + 3b^2 + 12wb - 46w -10b + 38\end{align}$$

우리의 목표는 이 $Error$ 값이 가장 작아지도록 만드는 $w$와 $b$를 찾는 것입니다.
고등학교 수학 시간에 배운 미분을 떠올려 볼까요? 2차 함수의 그래프는 아래로 볼록한 U자 모양(포물선)을 그립니다. 오차가 가장 작아지는 제일 밑바닥 지점은 바로 미분값(기울기)이 0이 되는 지점입니다.
따라서 오차 함수를 $w$와 $b$에 대해 각각 미분하고, 그 값이 0이 되는 연립방정식을 풀면 오차가 최소가 되는 정확한 $w$와 $b$의 값을 단번에 계산할 수 있습니다.
$Error$를 $w$에 대해 미분하고 값을 0으로 지정:
$$\begin{align}\frac{\partial Error}{\partial w} = 28w+12b-46=0\end{align}$$
$Error$를 $b$에 대해 미분하고 값을 0으로 지정:
$$\begin{align}\frac{\partial Error}{\partial b} = 6b+12w-10=0\end{align}$$
$w$와 $b$에 대한 연립방정식의 해:
$$\begin{align}w &= \frac{13}{2} \\ b &= -\frac{34}{3}\end{align}$$
- 장점: 정답을 100% 정확하고 명쾌하게 한 번에 찾아냅니다.
- 한계: 이 방법은 데이터와 변수가 적을 때만 유효합니다. 만약 점이 30억 개라면 어떨까요? 찾아야 할 변수($w, b$)가 챗GPT처럼 수천억 개라면요? 방정식이 너무 거대해져서, 아무리 뛰어난 슈퍼컴퓨터라도 우주의 수명이 다할 때까지 답을 계산할 수 없게 됩니다.
두 번째 접근: 조금씩 더듬어가며 정답에 다가가기 (수치해석적 방법)
방정식을 한 번에 풀 수 없다면 어떻게 해야 할까요? 바로 여기서 신경망의 진짜 학습 방법이 등장합니다. 수학적 계산으로 한 방에 답을 내는 대신, 안대가 씌워진 채 산을 내려오는 사람처럼 조금씩 정답을 향해 더듬어 가는 방법입니다. 이를 경사하강법(Gradient Descent)이라고 부릅니다.

작동 원리는 다음과 같이 아주 단순합니다.
- 아무 선이나 일단 긋기 (초기화): $w$와 $b$에 임의의 숫자를 아무거나 찍어 넣습니다. 당연히 처음 그은 직선은 세 점과 엉망진창으로 빗나갈 것이고, 오차는 매우 큽니다.
- 현재 위치의 기울기 확인하기 (미분): 현재의 $w, b$ 값에서 오차 함수의 미분값(기울기)을 구합니다.
- 만약 기울기가 양수(+)라면? 값이 커지는 중이므로, $w$를 줄여야 오차가 작아지는 바닥으로 내려갑니다.
- 만약 기울기가 음수(-)라면? 값이 작아지는 중이므로, $w$를 키워야 바닥에 가까워집니다.
- 조금씩 발걸음 옮기기 (학습): 미분값이 알려주는 내리막길 방향을 따라 $w$와 $b$의 값을 아주 조금 수정합니다. (이때 얼마나 큰 보폭으로 움직일지를 결정하는 수치를 학습률이라고 합니다.)
- 반복하기: 2번과 3번 과정을 수천, 수만 번 반복합니다.
이렇게 점진적으로 오차의 골짜기를 따라 내려가다 보면, 어느새 미분값이 0에 가까워지는 바닥(최소 오차 지점)에 도달하게 됩니다. 완벽한 수학적 정답은 아닐지 몰라도, 실용적으로 매우 훌륭하고 근접한 직선을 찾아낸 것입니다.
정리
인공지능을 구성하는 신경망은 첫 번째 방법(수식 풀기)을 포기하고 두 번째 방법(수치해석적 접근)을 선택했습니다. 거대한 데이터와 복잡한 변수들을 다룰 때는, 완벽한 공식을 세우려 끙끙대는 것보다 '일단 대략적으로 짐작해 보고, 미분을 통해 오차를 줄이는 방향으로 끊임없이 수정해 나가는 것'이 훨씬 빠르고 현실적이기 때문입니다.
결국 거창해 보이는 인공지능의 '학습'이란, 우리가 고등학교 때 배웠던 미분의 원리를 무수히 많이, 그리고 아주 빠르게 반복하며 최적의 선을 깎아나가는 과정입니다.
'인공지능 > 신경망 이해' 카테고리의 다른 글
| 데이터로부터 참값을 찾아가는 과정 (0) | 2026.03.17 |
|---|---|
| 1차원 데이터로 흠집 탐지: 일반 오토인코더와 LSTM-오토인코더 (0) | 2025.12.05 |
| 옵티마이저 종류 요약 (0) | 2025.12.05 |
| 오류 역전파 및 기울기 계산 과정 (0) | 2025.12.05 |
| 경사하강법에서 손실값의 변화 (0) | 2025.12.05 |