[Xavier 초기화] 깊은 신경망은 왜 학습되지 않았을까?
jay
2026년 7월 28일 12:04
목차
최근 딥러닝의 역전파와 가중치 초기화를 하나씩 살펴보고 있다.
지금은 신경망을 만들 때 Xavier Initialization이나 He Initialization을 자연스럽게 사용한다. 하지만 초기 딥러닝 연구에서는 여러 층을 쌓은 완전연결 신경망이 일반적인 역전파만으로 잘 학습되지 않는 경우가 많았다.
이번에 살펴본 논문은 Understanding the Difficulty of Training Deep Feedforward Neural Networks이다.
이 논문은 흔히 Xavier 초기화를 제안한 연구로 소개된다. 그러나 핵심은 새로운 초기화 공식 하나만 제시한 것이 아니다. 연구진은 깊은 신경망 내부에서 각 층의 Activation과 Gradient가 어떻게 변하는지를 직접 관찰하고, 학습이 어려워지는 원인을 분석했다.
내가 확인하고 싶었던 질문은 다음과 같았다.
- 깊은 신경망은 단순히 층이 많다는 이유만으로 왜 학습이 어려워질까?
- 역전파를 수행하면 모든 층에 Gradient가 전달될 텐데, 왜 입력층에 가까운 층은 잘 학습되지 않을까?
- Sigmoid와 tanh는 모두 포화될 수 있는 함수인데, 왜 학습 과정에서는 다른 결과가 나타날까?
- 가중치를 작은 값으로 초기화하면 안정적일 것 같은데, 너무 작으면 어떤 문제가 생길까?
- Xavier 초기화의 분산 공식은 어떤 조건에서 도출될까?
이 글에서는 논문의 실험 결과와 분산 보존 관점의 수식 전개를 바탕으로 위 질문을 정리한다.
1. 당시의 문제
당시에는 깊은 신경망을 일반적인 역전파만으로 학습시키는 것이 쉽지 않았다. 층을 깊게 쌓으면 학습 손실이 오랫동안 감소하지 않는 Plateau 구간이 발생하거나, 입력층에 가까운 은닉층의 가중치가 거의 업데이트되지 않는 현상이 나타났다.
반면 각 층을 비지도 방식으로 먼저 학습시키는 Unsupervised Pre-training을 적용하면 최적화가 개선되는 사례가 보고되었다.
깊은 신경망이 학습되지 않는 이유는 단순히 나쁜 Local Minimum에 빠지기 때문일까?
논문은 최종 정확도만 비교하지 않았다. 층별 Activation의 평균과 표준편차, 역전파되는 Gradient의 분포를 관찰하면서 신호가 어느 지점에서 약해지는지를 분석했다.
그 결과 깊은 신경망의 학습 실패는 단순히 나쁜 Local Minimum만으로 설명하기 어렵고, 순전파와 역전파 과정에서 신호가 안정적으로 전달되지 않는 문제와 밀접하게 관련되어 있음을 보였다.
2. 깊은 신경망에서 순전파 신호가 변하는 과정
2.1. 한 층의 순전파
신경망의 l번째 층은 다음과 같이 표현할 수 있다.
여기에서 z는 각 층의 출력, W는 가중치, b는 편향, s는 활성화 함수에 들어가기 전의 선형 결합을 의미한다.
한 뉴런에 입력되는 값이 개라면 해당 뉴런의 선형 결합은 다음과 같이 쓸 수 있다.
가중치와 입력이 서로 독립이고 각각의 평균이 0이라고 단순화하면, 선형 결합의 분산은 다음과 같이 근사할 수 있다.
이 식에서 핵심은 다음 항이다.
이 값이 1보다 작으면 층을 지날수록 Activation의 분산이 감소한다. 반대로 1보다 크면 층을 지날수록 분산이 증가한다.
따라서 가중치를 지나치게 작게 초기화하면 서로 다른 입력에 대한 Activation이 점점 비슷한 값으로 모일 수 있다. 반대로 가중치가 너무 크면 선형 결합의 크기가 커지고, Sigmoid나 tanh 같은 함수가 포화 영역으로 들어갈 가능성이 높아진다.
즉, 가중치를 단순히 작게 설정하는 것만으로 안정적인 학습이 보장되지는 않는다.
2.2. Sigmoid가 만드는 포화 문제
Sigmoid 함수는 다음과 같다.
미분값은 다음과 같다.
Sigmoid의 출력 범위는 0과 1 사이이며, 미분값의 최댓값은 0.25이다. 입력의 절댓값이 커질수록 출력은 0 또는 1에 가까워지고 미분값은 0에 가까워진다.
논문의 실험에서는 Sigmoid 네트워크의 상단 은닉층이 빠르게 0 방향으로 포화되는 현상이 관찰되었다. 해당 층의 미분값이 거의 0이 되면서 아래쪽 층으로 전달되는 Gradient가 크게 약해졌고, 학습 오차가 오랫동안 감소하지 않는 Plateau가 발생했다.
일부 모델은 오랜 시간이 지나 포화 상태에서 천천히 빠져나왔지만, 그 과정 자체가 학습을 매우 느리게 만들었다.

2.3. Sigmoid와 tanh에서 출력 0의 의미는 다르다
tanh 함수는 다음과 같다.
미분값은 다음과 같다.
입력이 0일 때 함수값과 미분값은 다음과 같다.
Sigmoid의 출력이 0에 가깝다는 것은 함수의 왼쪽 포화 영역에 위치한다는 의미이다. 이때 미분값도 0에 가깝다.
반면 tanh의 출력이 0에 가깝다는 것은 함수의 중앙에 위치한다는 의미이다. 이 영역에서는 미분값이 1에 가까워 Gradient가 비교적 잘 흐른다.
- Sigmoid 출력이 0에 가까운 경우: 포화 영역이며 Gradient가 거의 흐르지 않는다.
- tanh 출력이 0에 가까운 경우: 중앙의 선형 영역이며 Gradient가 비교적 잘 흐른다.
또한 tanh의 출력 범위는 -1과 1이므로 출력 평균을 0 주변에 유지하기가 Sigmoid보다 유리하다. 논문에서 tanh와 softsign이 Sigmoid보다 안정적인 학습 결과를 보인 배경 중 하나이다.
3. 역전파에서 Gradient가 사라지는 이유
현재 층의 오차 신호는 다음 층에서 전달된 오차 신호, 가중치 행렬, 현재 층 활성화 함수의 미분값을 이용해 계산된다.
표기 방향에 따라 전치행렬의 위치는 달라질 수 있지만, 핵심은 동일하다. 역전파에서는 층을 거슬러 올라갈 때마다 가중치와 활성화 함수의 미분값이 반복적으로 곱해진다.
여러 층을 거치는 과정을 개념적으로 펼치면 다음과 같은 연속 곱의 영향을 받는다.
각 층에서 곱해지는 값의 크기가 1보다 작다면 층이 깊어질수록 전체 Gradient는 빠르게 감소한다.
예를 들어 층을 하나 지날 때마다 Gradient 크기가 절반이 된다고 가정하면 다음과 같다.
5개 층을 지나면 처음 Gradient의 약 3.1%만 남는다. 10개 층을 지나면 다음과 같다.
Sigmoid는 미분값의 최댓값 자체가 0.25이고, 포화 영역에서는 미분값이 0에 가까워진다.
이 경우 현재 층의 오차 신호도 0에 가까워진다.
오차 신호가 0에 가까워지면 해당 층의 가중치 Gradient도 거의 0이 된다. 결과적으로 입력층에 가까운 층은 학습이 매우 느려지거나 사실상 멈출 수 있다.
4. Xavier 초기화는 무엇을 보존하려고 하는가
Xavier 초기화의 목적은 가중치를 무조건 작게 만드는 것이 아니다.
순전파에서는 Activation의 분산을, 역전파에서는 Gradient의 분산을 층마다 가능한 한 비슷하게 유지한다.
초기 시점에 신호의 크기가 급격하게 줄거나 커지는 것을 막아, 앞쪽 층과 뒤쪽 층이 모두 학습에 참여할 수 있도록 만드는 것이 핵심이다.
4.1. 순전파 분산 보존
한 층의 선형 결합에 대한 분산은 다음과 같이 근사할 수 있다.
현재 층의 신호 분산이 이전 층과 비슷하게 유지되기를 원하면 다음 조건을 생각할 수 있다.
이를 만족시키기 위한 단순화된 조건은 다음과 같다.
따라서 순전파 관점에서 원하는 가중치 분산은 다음과 같다.
4.2. 역전파 분산 보존
비슷한 방식으로 역전파되는 오차 신호의 분산을 근사하면 다음과 같다.
Gradient의 분산이 층을 거슬러 올라가면서 유지되기를 원하면 다음 조건이 필요하다.
따라서 역전파 관점에서 원하는 가중치 분산은 다음과 같다.
4.3. 두 조건의 절충
순전파가 요구하는 분산과 역전파가 요구하는 분산은 입력 뉴런 수와 출력 뉴런 수가 같을 때 동일하다.
그러나 일반적인 층에서는 두 값이 다를 수 있다.
Xavier 초기화는 두 방향의 신호 보존을 함께 고려하여 다음 분산을 사용한다.
이 식은 순전파와 역전파 중 한쪽만 정확히 맞추는 대신, 두 방향에서 분산이 지나치게 증가하거나 감소하지 않도록 절충한 값이다.
5. Xavier 균등 초기화의 범위는 어떻게 도출되는가
가중치를 0을 중심으로 하는 대칭 균등분포에서 추출한다고 가정한다.
대칭 균등분포의 분산은 다음과 같다.
이를 Xavier 초기화가 원하는 분산과 같게 둔다.
양변을 정리하면 다음과 같다.
따라서 Xavier 균등 초기화는 최종적으로 다음 범위에서 가중치를 추출한다.
이 범위는 경험적으로 임의 선택된 값이 아니다. 순전파 Activation과 역전파 Gradient의 분산을 동시에 가능한 한 보존하려는 조건에서 나온다.
다만 이 전개에는 입력과 가중치의 독립성, 평균 0, 뉴런 간 상관관계가 작다는 가정과 활성화 함수가 원점 근처에서 비교적 선형적으로 동작한다는 가정이 포함된다.
따라서 Xavier 초기화는 모든 깊이와 모든 활성화 함수에서 Gradient 문제를 완전히 제거하는 공식이 아니다. 학습 시작 시점의 신호 흐름을 안정화하는 초기화 방법으로 이해하는 것이 정확하다.
6. 실제로 Gradient가 안정화되는가
논문에서는 일반적인 초기화와 정규화된 Xavier 초기화를 적용한 뒤 층별 Activation과 역전파 Gradient의 분포를 비교했다.
Standard Initialization (윗 그림)
- 층에 따라 Activation 분포가 크게 달라졌다.
- 입력층 방향으로 갈수록 Gradient가 0 근처에 집중되었다.
- 출력층에서 계산된 Error Signal이 앞쪽 층까지 충분히 전달되지 않았다.
- 일부 층의 가중치가 거의 업데이트되지 않았다.
Xavier Initialization (아래 그림)
- 각 층의 Activation 분포가 상대적으로 유사하게 유지되었다.
- 층별 Gradient 분포의 차이가 줄어들었다.
- Error Signal이 입력층에 가까운 층까지 전달되었다.
- 깊은 층 구조에서도 학습이 진행될 가능성이 높아졌다.


활성화 함수에 따른 차이도 확인되었다. Sigmoid 네트워크에서는 상단 은닉층의 포화로 긴 Plateau가 발생했다. 반면 tanh와 softsign을 사용한 네트워크는 Sigmoid보다 안정적으로 학습되었고, 정규화된 초기화를 적용했을 때 결과가 추가로 개선되었다.
다만 Xavier 초기화가 비지도 사전학습의 효과를 완전히 대체한 것은 아니다. 논문의 중요한 기여는 깊은 신경망의 학습 실패 원인 중 상당 부분이 초기 Activation과 Gradient의 불안정한 전달에 있다는 점을 실험적으로 보여준 것이다.


7. 정리
- 깊은 신경망의 학습 실패는 단순히 나쁜 Local Minimum만으로 설명하기 어렵다.
- 가중치가 너무 작으면 순전파 신호와 역전파 Gradient가 층을 지날수록 감소할 수 있다.
- 가중치가 너무 크면 Activation이 커져 Sigmoid나 tanh의 포화 영역에 들어갈 수 있다.
- Sigmoid는 출력이 0 또는 1에 가까워질수록 미분값이 0에 가까워진다.
- Sigmoid 출력 0은 포화를 의미하지만, tanh 출력 0은 기울기가 큰 중앙 영역을 의미한다.
- 역전파에서는 가중치와 활성화 함수의 미분값이 반복적으로 곱해지므로 Vanishing Gradient가 발생할 수 있다.
- Xavier 초기화는 순전파 Activation과 역전파 Gradient의 분산을 동시에 가능한 한 보존하도록 설계되었다.
Xavier 초기화의 핵심 분산은 다음과 같다.
균등분포를 사용할 때의 최종 초기화 범위는 다음과 같다.
결국 Xavier 초기화의 핵심은 가중치를 단순히 작은 값으로 만드는 것이 아니다. 입력 데이터의 정보가 출력층까지 전달되고, 출력층에서 계산된 오차 정보가 다시 입력층 방향으로 전달될 수 있도록 신호의 크기를 조절하는 것이다.
깊은 신경망에서는 층을 많이 쌓는 것만큼, 그 층들을 통과하는 Activation과 Gradient를 살아 있게 유지하는 것이 중요하다.
참고 논문
Glorot, X., & Bengio, Y. (2010). Understanding the Difficulty of Training Deep Feedforward Neural Networks. Proceedings of the Thirteenth International Conference on Artificial Intelligence and Statistics, 249–256.
You might also like
Comments (0)
Leave a Reply
Or login to comment with your account.
No comments yet. Be the first to share your thoughts!