본문 바로가기
  • 책상 밖 세상을 경험할 수 있는 Playground를 제공하고, 수동적 학습에서 창조의 삶으로의 전환을 위한 새로운 라이프 스타일을 제시합니다.
카테고리 없음

[2024-2] 김영중 - Learning representations by back-propagating errors

by roori 2024. 12. 8.

 


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/052b1d8ce63b07fec3de9dbb583772d860b7c769

 

www.semanticscholar.org

 

0. Abstract

 

  • 신경망 학습의 핵심 아이디어: 역전파(back-propagation) 알고리즘
  • 네트워크의 출력 오류를 계산하고 가중치에 효율적으로 전달
  • 가중치 업데이트 수행으로 학습 성능 개선
  • 다층 퍼셉트론 신경망 학습에서 중요한 역할
  • 오류 전파를 위해 연쇄 법칙(chain rule) 사용
  • 반복적인 가중치 조정을 통해 최적화 수행

1. Background

 

  • 많은 시도가 있었던 self-organizing neural networks 개발
  • 임의로 연결된 neural network를 통해 작업영역에 적합한 구조를 찾기 위한 시도
  • 강력한 시냅스 수정 규칙을 통해 input unit과 output unit 간의 연결 강도를 조정
  • 학습 규칙을 통해 희망 출력 벡터와 실제 출력 벡 간의 차이를 최소화하는 목표
  • Hidden unit의 도입은 학습을 더 복잡하게 만듦.
    • hidden unit의 actual/desired state는 task에서 정의되지 않음
    • 퍼셉트론의 경우, input과 output 사이에 feature analyser가 있지만, input vector에 의해서만 hidden unit의 상태가 결정되므로 이는 진정한 hidden unit이 아님. 이 경우, representation 학습은 이루어지지 않음.
  • Desired input-output behavior를 달성하기 위해서는 학습 과정에서 hidden unit이 어떤 상황에서 활성화되는지를 결정하고, 이러한 unit들이 무엇을 나타내야 하는지도 학습해야 함.

2. Information

 

  • 신경망 학습에서 역전파(back-propagation) 알고리즘의 도입은 중요한 발전을 가져옴.
  • 역전파는 신경망의 출력 오류를 계산하고, 이를 네트워크의 각 가중치에 효율적으로 전파하여 학습을 가능하게 만듦.
  • 역전파 알고리즘의 핵심은 연쇄 법칙(chain rule)을 사용하여 오류를 각 층의 가중치에 전파하며, 이를 통해 가중치 업데이트가 이루어짐.
  • 이러한 학습 방식은 다층 퍼셉트론(multi-layer perceptron)과 같은 구조에서 복잡한 함수 근사를 가능하게 하여, 기존의 단순한 퍼셉트론 모델의 한계를 극복함.
  • 역전파를 통해 신경망은 복잡한 패턴을 학습할 수 있으며, 이는 음성 인식, 이미지 분류, 자연어 처리 등의 다양한 응용 프로그램에서 효과적으로 활용됨.
  • 논문은 역전파 알고리즘의 수학적 기초와 구현 방법을 설명하며, 이를 기반으로 신경망 학습의 효율성과 성능을 향상시킬 수 있는 방안을 제시함.

3. Methodology

3-1.Basic Form

  • 가장 간단한 형태: 가장 아래에 input unit layer, 중간 layer, 가장 위에 output unit layer
  • layer 내에서 혹은 위에서 아래 layer로는 connection이 있을 수 없으며, 중간 layer는 skip할 수 있음
  • 각 layer 안에 있는 unit들은 parallel 하지만 서로 다른 layer에서는 state가 sequential하게 정해짐 (아래에서부터 위로, output unit의 state가 정해질 때까지)
  • input unit의 state를 설정해서 input vector를 network에 나타나도록 함. 그리고 나서 lower layer에 식 1,2를 적용해여 각 layer에 있는 unit의 state를 결정함
  • unit 의 total input 은 1) j에 연결된 unit의 output yj와 2) 가중치 에 대한 선형함수임

  • 각 unit에 extra input을 주면 bias를 반영할 수 있음. 값은 항상 1이고, 이 값에 대한 가중치는 bias라고 불리며 opposite sign의 threshold와 동일함
  • 한 unit의 ouput 는 total input 에 대한 비선형 함수임

3-2.Find Weights

  • - 목표: 이 network에서 각 input vector에 의해 산출되는 output vector가 desired output vector와 가까워지도록 하는 가중치 찾기 -> 이를 위해 total error라는 개념을 활용
  • total error: network로 산출된 output vector와 desired output vector의 차이

         c: 각 input-output case에 대한 인덱스, j: output unit에 대한 인덱스

y: output unit의 actual state, d: output unit의 desired state

  • gradient descent로 total error를 최소화하기 위해서는 각 가중치에 대하여 E의 편미분을 계산해야함. 이는 각 input-output case에 대한 편미분을 다 더한 것과 같음
  • 각 가중치에 대한 오차의 편미분은 two pass로 계산됨
    • forward pass : 각 layer에서 unit의 state는 lower layer unit으로부터 받은 input에 
    • 를 적용해서 구함
    • backward pass: top layer에서 bottom layer로 derivative를 propagate하는 것

3-3.Backward Pass

Update Weights

 

Summary

 

 

  • 역전파 알고리즘(Backpropagation)의 주요 개념은 네트워크의 오차(error)를 계산하고 이를 네트워크의 가중치 업데이트에 사용하는 것.
  • 네트워크의 출력과 목표값 간의 오차는 손실 함수(loss function) E로 정의되며, 이는 다음과 같이 표현됨:

여기서 yk는 네트워크의 출력, tk는 목표 출력입니다. 이 손실 함수는 제곱 오차(Squared Error)로 정의됨.

  • 연쇄 법칙(chain rule)을 사용하여 각 가중치 wi_{ij}에 대한 손실 함수의 기울기를 계산함

여기서 δj번째 뉴런의 오차 항(델타 값), x는 i번째 뉴런의 입력임.

  • 순전파(forward propagation) 단계에서는 입력 데이터 x가 각 뉴런을 통과하며 가중치가 적용되고 활성화 함수 를 통해 출력이 생성됨

여기서 bj는 편향, f는 활성화 함수입니다.

  • 역전파(backpropagation) 단계에서는 출력층에서부터 입력층까지 가중치의 기울기를 계산하고 가중치를 업데이

는 학습률(learning rate)입니다.

 

Discussion and Future Work

    • 한계점 및 개선 가능성
      • 역전파 알고리즘은 강력하지만, 지역 최적화(local minima)에 빠질 위험이 존재하며, 네트워크가 항상 전역 최적화(global minima)에 도달하지 못할 수 있음.
      • 계산 복잡성(computational complexity) 문제가 있으며, 특히 네트워크가 깊거나 노드 수가 많아질수록 학습 시간이 길어짐.
      • 활성화 함수(activation function)의 선택에 따라 학습 성능과 수렴 속도가 크게 영향을 받음.
    • 미래 연구 방향
      • 더 나은 최적화 방법: 학습률을 동적으로 조정하거나, 모멘텀(momentum)을 활용하여 학습 효율성을 개선하는 방향.
      • 가중치 초기화(weight initialization) 방법 개선: 가중치 초기화가 네트워크 학습의 초기 단계에서 중요한 영향을 미침.
      • 대규모 데이터셋 적용: 더 큰 데이터셋과 복잡한 문제를 해결할 수 있는 확장 가능한 알고리즘 연구.
      • 네트워크 구조 최적화: 자동으로 최적의 네트워크 구조를 설계하거나, 역전파와 결합한 새로운 학습 패러다임 개발.

 

Conclusion 

      • 본 연구는 역전파 알고리즘(Backpropagation)을 도입하여 다층 신경망(Multi-layer Neural Network)의 학습 가능성을 입증하였음.
        • 비선형 문제 해결에서 단층 퍼셉트론의 한계를 극복하였으며, 다양한 데이터셋에서 우수한 성능을 보였음.
      • 역전파는 신경망 학습의 패러다임 전환을 이루었으며, 이후의 딥러닝 및 인공지능 발전에 중추적인 역할을 함.
      • 이 연구는 신경망이 특징 표현(feature representation)을 학습하는 데 있어 중요한 전환점을 제시하였으며, 패턴 인식(pattern recognition)과 같은 실질적인 문제에 응용 가능성을 열었음.

 

References 

    1. Rumelhart, D. E., Hinton, G. E., & Williams, R. J. (1986). Learning representations by back-propagating errors. Nature, 323(6088), 533-536.
    2. Rosenblatt, F. (1958). The perceptron: A probabilistic model for information storage and organization in the brain. Psychological Review, 65(6), 386-408.
    3. Werbos, P. J. (1974). Beyond regression: New tools for prediction and analysis in the behavioral sciences. Ph.D. Thesis, Harvard University.
    4. Lecun, Y., Bengio, Y., & Hinton, G. (2015). Deep learning. Nature, 521(7553), 436-444.
    5. Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep Learning. MIT Press.