역전파 알고리즘

역전파 알고리즘은 자동 미분·신경망 학습 분야에서 사용되는 대표적인 알고리즘이다. 연쇄 법칙을 이용한 역방향 기울기 누적을 중심으로 동작하며, 처리 대상은 계산 그래프, 손실 함수, 모델 파라미터이다. 주요 활용에는 인공신경망 학습과 미분 가능한 프로그램 최적화이 포함된다.

분류자동 미분·신경망 학습
설계다수 연구자; 1980년대 다층 신경망 학습에 보급
공개1980년대 이후 널리 확산
입력계산 그래프, 손실 함수, 모델 파라미터
핵심 구조연쇄 법칙을 이용한 역방향 기울기 누적
성질·전제미분 가능 연산·기울기 전파 규칙 필요
활용인공신경망 학습과 미분 가능한 프로그램 최적화
참고 자료논문·공식 문서

역전파 알고리즘은 자동 미분·신경망 학습 분야에서 사용되는 대표적인 알고리즘이다. 연쇄 법칙을 이용한 역방향 기울기 누적을 중심으로 동작하며, 처리 대상은 계산 그래프, 손실 함수, 모델 파라미터이다. 주요 활용에는 인공신경망 학습과 미분 가능한 프로그램 최적화이 포함된다.[1]

역전파 알고리즘(backpropagation)은 신경망을 비롯한 합성 함수의 입력·파라미터에 대한 미분값을 계산 그래프의 출력에서 입력 방향으로 효율적으로 구하는 방법이다. 복잡한 합성 함수의 미분에 연쇄 법칙을 적용하고, 여러 출력 경로로 전달되는 기울기를 누적한다. 계산을 한 번 수행한 뒤 역방향 그래프를 순회하는 방식은 각 파라미터를 개별적으로 수치 미분하는 방법보다 일반적으로 효율적이다.

순전파 단계에서는 각 층의 활성값과 손실을 계산하고 역전파 단계에서는 최종 손실의 기울기에서 시작해 연산별 국소 도함수를 곱한다. 하나의 노드로 여러 경로에서 기울기가 도착하면 이를 합산하여 상위 노드에 전달한다. 행렬 곱·활성화 함수·정규화 계층마다 정확한 미분 규칙이 필요하며, 입력의 차원과 브로드캐스팅 구조도 고려한다.

역전파 자체는 파라미터를 갱신하는 최적화 알고리즘이 아니라 기울기를 얻는 방법이다. 구한 기울기는 경사 하강법, SGD, Adam 같은 최적화 방법에 전달되어 가중치를 수정한다. 역전파에서는 저장한 중간 활성값과 계산 비용 사이의 절충이 존재하며, 매우 깊은 네트워크에서는 기울기 소실과 폭주, 수치 안정성 등의 문제를 함께 다룬다.[2]

역사와 개발

문제 정의

입력과 출력

계산 모델

동작 원리

기초 수학·구조

실행 단계

상태 관리

정확성과 성질

안전성·정확성

종료·수렴

계산 복잡도

연산 비용

메모리·통신 비용

구현과 최적화

구현 구조

경계 조건

다른 알고리즘과의 관계

활용 분야

관련 문서

  1. 관련 기술 문헌 ↩
  2. 상세 알고리즘 자료 ↩