← AI 용어집

AI 용어집 · 기초 · 언어 모델

역전파 Backpropagation

역전파는 신경망이 낸 답과 정답의 차이(오차)를 출력층에서 입력층 쪽으로 거꾸로 전달하며, 각 가중치가 오차에 얼마나 책임이 있는지 계산하는 방법입니다. 이 값을 바탕으로 가중치를 고쳐 신경망을 학습시킵니다.

쉽게 말하면 팀 프로젝트 결과가 나쁘게 나왔을 때 마지막 담당자부터 거꾸로 거슬러 올라가며 '누구의 어떤 결정이 결과에 얼마나 영향을 줬는지' 따져 보고, 각자 다음엔 조금씩 다르게 하도록 피드백하는 것과 비슷합니다.

어떻게 작동하나

먼저 입력을 신경망에 앞에서 뒤로 통과시켜 예측값을 얻습니다(순전파). 예측값과 정답의 차이를 손실 함수로 계산해 '얼마나 틀렸는지'를 숫자 하나로 만듭니다. 그다음 이 오차를 출력층부터 앞쪽 층으로 거꾸로 전달하면서, 각 가중치를 조금 바꾸면 오차가 얼마나 변하는지(기울기)를 계산합니다. 마지막으로 경사 하강법으로 오차가 줄어드는 방향으로 가중치를 조금씩 고치고, 이 과정을 수없이 반복합니다.

순전파와 역전파의 학습 고리입력 데이터 → 신경망 순전파; 신경망 순전파 → 예측값; 예측값 → 손실 계산; 정답 → 손실 계산(비교); 손실 계산 → 역전파(오차); 역전파 → 가중치 수정(기울기); 가중치 수정 → 신경망 순전파(반복)입력 데이터신경망 순전파앞→뒤 계산예측값정답손실 계산얼마나 틀렸나역전파뒤→앞 기울기 계산가중치 수정경사 하강법비교오차기울기반복
순전파와 역전파의 학습 고리 윗줄은 답을 내는 순전파, 아랫줄은 오차를 거꾸로 보내 가중치를 고치는 역전파입니다. 고친 가중치로 다시 순전파를 하며 이 고리를 반복합니다.

왜 중요한가

층이 여러 개인 신경망에는 가중치가 엄청나게 많아, 하나하나 따로 시험해 보며 고치는 것은 불가능에 가깝습니다. 역전파는 한 번의 거꾸로 계산으로 모든 가중치의 기울기를 효율적으로 구해 줍니다. 덕분에 깊은 신경망을 실제로 학습시킬 수 있게 되었고, 오늘날 LLM을 포함한 거의 모든 딥러닝 모델이 이 방식으로 학습합니다.

알아 둘 점

역전파는 '기울기를 계산하는 방법'이고, 그 기울기로 가중치를 실제로 고치는 것은 경사 하강법 같은 최적화 방법의 몫입니다. 층이 아주 깊으면 거꾸로 전달되는 신호가 점점 작아지거나(기울기 소실) 커지는(기울기 폭발) 문제가 생길 수 있어, 활성화 함수 선택이나 구조 설계로 이를 완화합니다. 학습할 때만 쓰이고, 다 배운 모델을 사용하는 추론 단계에서는 순전파만 합니다.

예시

사진 분류 모델이 고양이 사진을 '개'라고 잘못 답하면, 역전파가 그 오차를 거꾸로 따라가며 어떤 가중치가 '개' 쪽으로 기울게 만들었는지 계산합니다. PyTorch 같은 딥러닝 도구에서는 이 계산이 자동으로 이뤄져, 개발자는 손실을 구한 뒤 한 줄 명령으로 역전파를 실행합니다.

함께 보면 좋은 용어