AI 정리

파라미터(w,b) 초기 값 정하는 방법

dawon-project 2025. 3. 19. 00:41

파라미터(parameter) vs 하이퍼 파라미터(hyperparameter)

  • 파라미터(AI가 스스로 알아내는 변수) 
    • weight
    • bias(이것도 그냥 weight라고 부르기도 함)
    • 등등
  • 하이퍼파라미터(내가 정해줘야 하는 변수)
    • Epoch : 몇 번 학습할 것인가?
    • batch size : 몇 개 씩 꺼낼 것인가?
    • Initial weight 값
    • learning rate & learning rate scheduling
    • model architecture(layer 수, node 수, activation 함수 등)
    • loss 함수 뭐 쓸지
    • 최적화 함수 뭐 쓸지

 

그렇다면 파라미터 초기 값들은 아무렇게나 값을 할당해주면 되는가?

  • 만약 가중치를 0으로 초기화 한후 학습을 진행한다면 모든 뉴런들이 같은 값을 가지게 되고, 역전파 진행시 각 뉴런이 loss에 미친 영향도 같으므로, 모두 동일한 값으로 가중치가 update 된다. -> 여러 개의 층으로 나눈 의미가 없게 됨
  • 만약 가중치 초기값을 너무 크게 설정한 경우 gradient가 기하 급수적으로 커지며, weight(가중치)도 비정상적으로 커지면서 학습 양상이 발생하게 된다. -> 발산-> Overshooting
  • 반대로 초기 값을 너무 작게 설정한 경우 역전파 과정에서 연산이 진행 될 수록 gradient가 작아지면서 weight가 제대로 업데이트 되지 않게 되며, 너무 느리게 수렴하게 된다.

-> 랜덤하게 0 근처로 잡아야하는게 정설

 

N : Normal ( 평균, 분산 )

U : Uniform (시작 값, 끝 값) -> 시작 ~ 끝 값 까지 범위

Initial weight(초기 값)는 어떻게 잡아야하는가? 

  • LeCun 방식

 

  • Kaiming( He )
    • ReLU 활성화 함수와 그를 변형한 활성 함수를 사용하는 네트워크를 위해 개발된 초기화 방식
    • ReLU 사용하는 신경망에 자주 사용

  • Xavier(Glorot) -> 더 0 근처로 더 보수적으로 초기값을 잡겠다!
    • 입력 노드와 출력 노드에 따라 초기 가중치의 스케일을 조정하는 방식
    • N(out)을 통해 역전파를 할 경우에도 고려해서 초기값을 할당해 주는 방식
    • 분산이 Kaiming 방식보다 작다
    • Sigmoid/ tahn을 사용하는 신경망에 적합

 

모델을 학습할 때, 가중치 초기화 방식에 문제가 있다는 것을 어떻게 알 수 있을까?

아래의 문제가 생겼다고 해서 가중치 초기화 방식에 문제가 있다는 것이 아니라 고려해 봐야한다는 것이다.

  • 학습이 매우 느리게 진행되는 경우
    • 적절한 가중치 초기화가 이루어지지 않으면, 신경망은 매우 작은 그라디언트 값을 가질 수 있다.
  • 학습이 전혀 진행되지 않는 경우
    • 가중치가 너무 크게 초기화되어 그라디언트 발산이 발생하거나 너무 작게 되어 그라디언트 소실이 발생할 수 있다.
      -> 이 경우 Weight와 Bias가 Nan의 값을 가진다.
  • 손실 함수의 값이 NaN이나 무한대로 발산하는 경우
    • 가중치가 너무 크게 초기화되어 오버플로를 일으키거나, 계산 중에 불안정한 수치 문제가 발생할 수 있다.
  • 검증 성능이 개선되지 않거나 과적합이 심해지는 경우
    • 가중치 초기화가 모델의 학습 능력에 부적절하게 영향을 미쳐, 학습 데이터에는 빠르게 적응하지만 검증 데이터 셋에서는 성능이 개선되지 않거나, 과적합이 발생할 수 있다.

 

 

https://familia-89.tistory.com/85 

https://www.youtube.com/watch?v=iehelJNqlhE -> 혁펜하임 참고 자료

'AI 정리' 카테고리의 다른 글

딥러닝 기본적인 모델 유형  (0) 2025.03.22
Overfitting+ Internal Covariate Shift와 해결 방법  (0) 2025.03.19
Optimizer 종류들  (0) 2025.03.19
역전파  (0) 2025.03.17
비용 함수  (0) 2025.03.10