AI 용어집 · 기초 · 언어 모델
역전파 Backpropagation
역전파는 신경망이 낸 답과 정답의 차이(오차)를 출력층에서 입력층 쪽으로 거꾸로 전달하며, 각 가중치가 오차에 얼마나 책임이 있는지 계산하는 방법입니다. 이 값을 바탕으로 가중치를 고쳐 신경망을 학습시킵니다.
어떻게 작동하나
먼저 입력을 신경망에 앞에서 뒤로 통과시켜 예측값을 얻습니다(순전파). 예측값과 정답의 차이를 손실 함수로 계산해 '얼마나 틀렸는지'를 숫자 하나로 만듭니다. 그다음 이 오차를 출력층부터 앞쪽 층으로 거꾸로 전달하면서, 각 가중치를 조금 바꾸면 오차가 얼마나 변하는지(기울기)를 계산합니다. 마지막으로 경사 하강법으로 오차가 줄어드는 방향으로 가중치를 조금씩 고치고, 이 과정을 수없이 반복합니다.
왜 중요한가
층이 여러 개인 신경망에는 가중치가 엄청나게 많아, 하나하나 따로 시험해 보며 고치는 것은 불가능에 가깝습니다. 역전파는 한 번의 거꾸로 계산으로 모든 가중치의 기울기를 효율적으로 구해 줍니다. 덕분에 깊은 신경망을 실제로 학습시킬 수 있게 되었고, 오늘날 LLM을 포함한 거의 모든 딥러닝 모델이 이 방식으로 학습합니다.
알아 둘 점
역전파는 '기울기를 계산하는 방법'이고, 그 기울기로 가중치를 실제로 고치는 것은 경사 하강법 같은 최적화 방법의 몫입니다. 층이 아주 깊으면 거꾸로 전달되는 신호가 점점 작아지거나(기울기 소실) 커지는(기울기 폭발) 문제가 생길 수 있어, 활성화 함수 선택이나 구조 설계로 이를 완화합니다. 학습할 때만 쓰이고, 다 배운 모델을 사용하는 추론 단계에서는 순전파만 합니다.
예시
사진 분류 모델이 고양이 사진을 '개'라고 잘못 답하면, 역전파가 그 오차를 거꾸로 따라가며 어떤 가중치가 '개' 쪽으로 기울게 만들었는지 계산합니다. PyTorch 같은 딥러닝 도구에서는 이 계산이 자동으로 이뤄져, 개발자는 손실을 구한 뒤 한 줄 명령으로 역전파를 실행합니다.