카테고리 없음

‘액웨액웨액나’로 보는 역전파(Backpropagation) (feat. 혁펜하임의 <Easy! 딥러닝>)

soochanbae 2025. 2. 23. 18:45



딥러닝의 심장, 역전파 알고리즘 (Backpropagation)

딥러닝의 원리를 이해하는 데 있어 반드시 역전파 알고리즘(Backpropagation)을 거쳐가야만 합니다. 처음에는 난해할 수 있지만 의미를 알게 된다면 생각보다 간단하답니다.
 
 

1. Backpropagation 개요

역전파 알고리즘은 신경망에서 발생한 오차를 출력층에서 입력층으로 역방향으로 전달하며 가중치를 업데이트하는 과정입니다. 목표는 예측값과 실제 값 사이의 차이를 최소화하는 방향으로 가중치를 조정하는 것입니다. 이를 위해 손실 함수(Loss)를 모든 가중치에 대해 편미분하고, 그 결과를 이용해 가중치를 업데이트합니다. 특히 깊은 층의 가중치를 조정하는 것은 복잡하지만, 체계적인 계산 방법을 통해 해결할 수 있습니다.
 

https://www.datamaker.io/blog/posts/32

 
 
2. 그라디언트 계산과 체인 룰
 

역전파의 핵심은 연쇄 법칙(chain rule)을 활용해 각 층의 가중치에 대한 오차의 기울기를 계산하는 것입니다. 이를 통해 딥러닝 네트워크는 가중치를 업데이트할 방향과 크기를 결정합니다.

예를 들어, 함수 $f(x) = (x+1)^2$ 를 미분하면 다음과 같은 결과를 얻습니다:

$$
\frac{d}{dx} (x+1)^2 = 2(x+1) \times 1 = 2(x+1)
$$

겉미분 속미분이라고 흔히들 말하죠. 체인 룰은 사실 고등학교 때 배운 합성 함수의 미분 규칙과 동일한 원리입니다. 즉, 두 함수가 합성된 형태에서 바깥 함수의 미분값에 안쪽 함수의 미분값을 곱해주는 방식으로 계산됩니다.

이 원리는 인공신경망에서도 동일하게 적용됩니다. 입력값 $x$ 가 첫 번째 층을 통과해 은닉층 값 $h$ 로 변환되고, 이를 다시 활성화 함수 $g$ 에 입력한다고 가정해봅시다:

$$
h = w_1 x + b_1
$$

$$
y = g(w_2 h + b_2)
$$

출력값 $y$ 에 대한 손실 함수 $L$ 을 정의하면, 가중치 $w_1$ 에 대한 편미분은 다음과 같이 계산됩니다:

$$
\frac{dL}{dw_1} = \frac{dL}{dy} \cdot \frac{dy}{dh} \cdot \frac{dh}{dw_1}
$$

이 과정 역시 합성 함수 미분과 동일한 원리로, 각 층의 연산이 연속적으로 이루어지기 때문에 각 단계의 미분값이 곱해지는 형태로 계산됩니다.

이 계산은 각 층을 따라 오차가 역으로 전파되며, 딥러닝에서 오차가 출력층에서 입력층으로 이동하는 역전파(backpropagation)의 원리를 설명합니다.
 
 
 

3. 로스 함수와 미분

https://encord.com/glossary/mean-square-error-mse/

 
손실 함수(Loss Function)는 예측값과 실제 값의 차이를 측정하는 지표입니다. 대표적으로 MSE(Mean Squared Error)나 교차 엔트로피(Cross-Entropy)가 사용되며, 이 값을 기준으로 각 가중치에 대한 편미분이 이루어집니다.
 
W2에 대한 미분은 비교적 간단하지만, W1에 대한 미분은 더 복잡하며 다양한 층의 정보를 고려해 오차를 전달해야 합니다. 여기서  체인 룰이 필요한 것입니다. 합성함수의 미분 원리를 이용해 최종적인 그라디언트를 계산하고, 이를 바탕으로 가중치를 조정해 네트워크가 학습합니다.
 
 
 


 

딥러닝 입문서 추천 : 혁펜하임의 Easy! 딥러닝

이상탐지 관련된 알고리즘을 공부하다 보니 최근 연구는 딥러닝 기반의 모형이 많이 사용되는 것 같아 이번 겨울방학에 딥러닝 기초를 공부해보고자 책을 찾아보던 중 '혁펜하임의 Easy 딥러닝'을 접하게 되었습니다. 학부연구생 공부하면서나, 전공수업 들을 때 워낙 혁펜하임님 도움을 많이 받았어서 제가 정말 좋아하는 강사님이에요.

 
https://youtu.be/MM-mXxI3t4s?si=ArD-yb3MdZgrEWNJ

썸네일이..

"액"은 Activation Function(활성화 함수)
"웨"는 Weight(가중치)입니다 
각 레이어에서 발생하는 연쇄적인 미분 과정을 저렇게 표현하신 것 같아요 ㅋㅋ 저는 이런 부분이 좋았습니다.
 
 
이렇게 유튜브에 무료 강의가 있어서 저는 유튜브 강의 먼저 보고, 책 정독하니까 효율이 좋았던 것 같습니다. 책은 초심자들도 이해할 수 있게 쉽게쉽게 쓰신 느낌이 났어요. 복잡한 수학적 개념들도 직관적으로 이해시키려고 하는 노력이 보였습니다. 책 페이지를 보면 아시겠지만 그림이 많고 글이 적어요 ㅎㅎ

 
 강의가 무료로 공개되어 있으니 먼저 보시고 마음에 드시면 책을 구매하시는 방법도 추천드려요. 저도 일주일 남은 방학동안 책 뒷부분을 마무리해봐야겠습니다.. 
 

본 게시글은 혁펜하임의 <Easy! 딥러닝> 책의 리뷰어 활동으로 작성되었습니다.

도서 구매 링크 1 (교보문고): 
https://product.kyobobook.co.kr/detail/S000214848175
도서 구매 링크 2 (출판사 자사몰): 
https://shorturl.at/yqZpW