역전파 알고리즘(back-propagation Algorithm), 가중치 감소(weight decay)

CODEDRAGON Development/AI

반응형


 

역전파 알고리즘(back-propagation Algorithm)

·         오류 역전파 알고리즘(Error Back Propagation)

·         오차 역전파

·         "역전파" 통해 "역방향으로 에러를 전파(backward propagation of error)" 시키면서 최적의 학습 결과를 찾아가는 가능해졌습니다.

·         인공신경망모형에서의 학습과정에서 가중치를 갱신하는데 사용되는 대표적인 알고리즘입니다.

·         역전파 알고리즘은 홉필드(Hopfield) 개발한 것으로, 알고리즘의 개발로 인해 신경망 모델이 널리 사용되게 되었습니다.

 

·         최적의 학습 결과를 갖는 신경망을 설계하려면, 역전파(back-propagation) gradient-descent 방법을 사용해야 합니다.

·         역전파 개념은 입력이나 특정 넷의 가중치를 조금 변경시키면, 출력에 작은 변화가 일어난다는 점에 근거하고 있습니다.

·         다층 퍼셉트론에서 기여도 할당 문제에 대한 해결책입니다. (Rumelhart, Hinton and Williams; 1986)

 

 

https://en.wikipedia.org/wiki/Backpropagation

 

 

 

 

 

역전파(backpropagation) 용어 유래

"가중치(w) 바이어스(b) 값을 아주 작게 변화를 시키면, 편미분을 시키면, 출력 쪽에서 생기는 변화 역시 매우 작은 변화가 생기며, 작은 구간만을 보았을 때는 선형적인 관계가 있습니다." 말은 작은 변화의 관점에서는 선형적인 관계이기 때문에, 출력에서 생긴 오차를 반대로 입력 쪽으로 전파시키면서 w b등을 갱신하면 된다는 뜻이 됩니다.

 

w b 값들을 무작위로 변화시키는 것이 아니라, cost function 결국 w b 함수로 이루어졌기 때문에, 출력 부분부터 시작해서 입력 쪽으로( 방향으로), 순차적으로 cost function 대한 편미분을 구하고, 얻은 편미분 값을 이용해 w b 값을 갱신시z킵니다.

모든 훈련 데이터에 대해서 작업을 반복적으로 수행을 하다 보면, 훈련 데이터에 최적화된 w b 값들을 얻을 있습니다.

 

출력부터 반대 방향으로 순차적으로 편미분을 수행해가면서 w b값들을 갱신시켜간다는 뜻에서 만들어진 용어입니다.