논문 링크: [PDF] Learning representations by back-propagating errors | Semantic Scholar
https://www.semanticscholar.org/paper/Learning-representations-by-back-propagating-errors-Rumelhart-Hinton/052b1d8ce63b07fec3de9dbb583772d860b7c769
www.semanticscholar.org
OUTTA 논문 리뷰 링크:
[2024-2] 김영중 - Learning representations by back-propagating errors
[2024-2] 김영중 - Learning representations by back-propagating errors
https://www.semanticscholar.org/paper/Learning-representations-by-back-propagating-errors-Rumelhart-Hinton/052b1d8ce63b07fec3de9dbb583772d860b7c769 https://www.semanticscholar.org/paper/Learning-representations-by-back-propagating-errors-Rumelhart-Hinton/
blog.outta.ai
0. Abstract
- 핵심 아이디어:
- 신경망 학습에서 역전파(Backpropagation) 알고리즘을 이용해 출력 오차(error)를 가중치로 효율적으로 전달
- 여러 층(layer)으로 구성된 신경망(다층 퍼셉트론 등)의 학습 성능을 극적으로 개선
- 연쇄 법칙(chain rule)을 바탕으로 오류를 반복 전파하며 가중치 업데이트 수행
- 중요성:
- 기존 단층 퍼셉트론으로 한계가 있었던 비선형 문제나 복잡한 함수 근사를 가능케 함
- 음성 인식, 이미지 분류, 자연어 처리 등 다양한 분야에 적용됨
1. Background
- Self-organizing neural networks를 개발하려는 다양한 시도
- 입력·출력 유닛 사이를 강력한 학습 규칙으로 연결
- 희망 출력 벡터 vs. 실제 출력 벡터 간 차이를 줄이도록 가중치 수정
- Hidden Unit 도입으로 학습이 더 복잡해짐
- Hidden Unit의 목표 상태(Desired State)는 과제에서 정의되지 않음
- 퍼셉트론(단층 구조)에서는 Input → Feature Analyser → Output 흐름이지만, 실제 Representation 학습은 일어나지 않음
- 다층 신경망에선 Hidden Unit들의 상태와 의미까지 동시에 학습해야 함
2. Information (Backpropagation 의 도입)
- 역전파 알고리즘의 등장
- 신경망의 출력 오류를 빠르고 효율적으로 가중치에 전달 가능
- 연쇄 법칙(chain rule)을 사용해 오류를 각 층의 가중치로 전파
- 다층 퍼셉트론 구조에 역전파를 적용 → 복잡한 함수 근사 가능
- 응용 분야: 음성 인식, 컴퓨터 비전(이미지 분류), 자연어 처리 등 다양한 영역
- 논문 기여:
- 역전파 알고리즘의 수학적 기초 및 구현 방법 제시
- 신경망 학습 효율·성능을 높이기 위한 개선 방안 탐색
3. Methodology
3-1. Basic Form
- 레이어 구성:
- 아래쪽(input) → 중간(hidden) → 위쪽(output) 순으로 존재
- 같은 레이어 안에서는 병렬(Parallel), 다른 레이어 간에는 위계적(Sequential) 연결
- 중간 레이어는 건너뛸 수 있음(Skip 가능), 단 역전파 시 순서는 유지
- 순전파(Forward Pass):
- Input layer에 입력 벡터를 설정
- $$x_j = \sum_i \bigl(w_{ji} \times y_i\bigr) + b_j$$ (여기서 $y_i$는 이전 레이어의 출력, $w_{ji}$는 가중치, $b_j$는 편향)
- 활성화 함수 $f$ 적용 후 출력 $y_j = f(x_j)$ 계산
- Output layer에서 state(출력) 산출이 완료될 때까지 진행
3-2. Find Weights
- 목표: 입력 벡터마다 나오는 Output Vector가 Desired Output Vector와 가깝도록 가중치 찾기
- Total Error 정의: :
- $c$: 입력-출력 case(샘플) 인덱스
- $j$: Output unit 인덱스
- $y_j^{(c)}$: 실제 출력, $d_j^{(c)}$: 원하는 출력
- Gradient Descent로 $E$를 최소화 → 각 가중치 $w$에 대해 $\frac{\partial E}{\partial w}$ 계산
- Two-pass로 편미분 계산
- Forward Pass: 실제 출력 $y_j$ 구하기
- Backward Pass: $\frac{\partial E}{\partial w}$ 구하기 위해 출력층 → 입력층 방향으로 기울기 전파
3-3. Backward Pass, Update Weights
- 핵심 아이디어(역전파):
- 출력층에서 오차 $\delta_j = (y_j - d_j)$ 계산
- 시그모이드($y_j = \frac{1}{1+e^{-x_j}}$)라면 $\frac{\partial y_j}{\partial x_j} = y_j(1-y_j)$
- $\frac{\partial E}{\partial x_j} = \delta_j \cdot \frac{\partial y_j}{\partial x_j}$
- 가중치에 대한 미분: $$\frac{\partial E}{\partial w_{ji}} = \frac{\partial E}{\partial x_j} \times \frac{\partial x_j}{\partial w_{ji}} = \bigl(\delta_j \cdot y_j(1-y_j)\bigr)\times y_i$$
- 더 낮은 레이어(hidden layer)로 전파: $$\delta_i = \sum_j \Bigl(\delta_j \cdot y_j(1-y_j) \cdot w_{ji}\Bigr)$$ (출력층에서 역전파된 오차 항들의 가중 합)
- 각 레이어별로 누적된 오차 항을 이용해 $\Delta w_{ji} = -\eta \frac{\partial E}{\partial w_{ji}}$ 갱신
- 출력층에서 오차 $\delta_j = (y_j - d_j)$ 계산
- Batch 모드: 모든 샘플에 대한 기울기( $\frac{\partial E}{\partial w}$ )를 누적한 뒤 업데이트
- Momentum(모멘텀) 기법: $$\Delta w(t) = -\eta \frac{\partial E}{\partial w}(t) + \alpha \,\Delta w(t-1)$$ (과거 방향성을 일부 반영 → 지역 최솟값 탈출 및 학습 안정성)
Summary
- 역전파 알고리즘(Backpropagation):
- 신경망의 출력과 목표값 간의 오차($E$)를 정의
- 연쇄 법칙으로 각 가중치의 기울기 $\frac{\partial E}{\partial w}$ 계산 → 가중치 갱신
- 수식 예시: $$E = \frac{1}{2}\sum_k (y_k - t_k)^2 \quad\quad,\quad \frac{\partial E}{\partial w_{ij}} = \delta_j \cdot x_i \quad\quad(\delta_j = \text{오차 항})$$
- 순전파: $$y_j = f\bigl(\sum_i w_{ji} x_i + b_j\bigr)$$ (입력 → 활성화 함수 → 출력)
- 역전파:
- 출력층에서 시작해 입력층으로 오차 항(델타) 전파
- 각 가중치를 $\Delta w = -\eta \frac{\partial E}{\partial w}$로 업데이트
- 반복 학습으로 오차 최소화
Discussion & Future Work
- 한계점
- Local Minima 문제: 역전파는 지역 최솟값에 빠질 위험 존재
- 계산 비용: 네트워크가 깊거나 노드가 많아질수록 학습 시간 증가
- 활성화 함수 선택에 따른 학습 수렴 속도 및 성능 편차
- 개선 방향
- 최적화 기법: 모멘텀, 적응형 학습률(Adam 등) 사용
- 가중치 초기화: Xavier, He 초기화 등으로 더 안정적인 학습
- 대규모 데이터 처리: 미니배치, 병렬화, 분산 학습 등 적용
- 네트워크 구조 자동화: NAS(Neural Architecture Search) 등으로 구조 최적화
Conclusion
- 역전파(Backpropagation)의 도입으로 다층 신경망 학습이 가능해짐
- 단층 퍼셉트론의 한계를 넘어 비선형 문제나 복잡한 문제 해결
- 이후 딥러닝 분야 발전의 토대가 되었으며, 다양한 패턴 인식 문제에 응용 가능성 열림
- Representation 학습(Feature Representation)을 자동으로 할 수 있게 되어, 신경망이 입력 데이터의 특징을 스스로 학습