IT
가중치 초기화(Weight Initialization)
rimicode
2022. 6. 8. 20:15
728x90
반응형
SMALL
가중치 초기화(Wegith Initialization)는 초기 가중치 설정과 관련되어 신경망에서 매우 중요한 요소
가중치를 정규분포로 초기화하였을 때 문제
표준편차를 1인 정규분포표로 가중치를 초기화 할 때 각 층의 활성화 값 분포
표준편차가 일정한 정규분포로 가중치를 초기화 해 줄 때에는 대체로 활성화 값이 0, 1에 위치
활성값이 고르지 못할 경우 학습이 제대로 이루어지지 않음
Xavier 초기화 (Xavier initialization)
가중치를 표준편차가 고정값인 정규분포로 초기화 했을 때 문제점을 해결하기 위해 등장한 방법
이전 층의 노드가 n 개일 때, 현재 층의 가중치를 표준편차가
인 정규분포로 초기화
(이전 층의 노드가 n개이고 현재 층의 노드가 m 개일 때, 현재 층의 가중치를 표준편차가
인 정규분포로 초기화)
활성화 함수가 시그모이드(Sigmoid)인 신경망에서 잘 동작
ReLU 일 경우 층이 지날수록 활성값이 고르지 못하게 되는 문제
He 초기화
위의 문제를 해결하기 위해 등장
이전 층의 노드가 n 개일 때, 현재 층의 가중치를 표준편차가
인 정규분포로 초기화
층이 지나도 활성값이 고르게 유지
가중치 초기화 방법 요약
Activation function 에 따른 초기값 추천
1. Sigmoid: Xavier 초기화 사용하는 것이 유리
2. ReLU: He 초기화 사용하는 것이 유리
이외에도 여러가지가 있음
init_mode = ['uniform', 'lecun_uniform', 'normal', 'zero', 'glorot_normal',
'glorot_uniform', 'he_normal', 'he_uniform']
728x90
반응형
LIST