728x90
반응형
신경망을 훈련한다는 것은 고차원의 Loss Function에서 파라미터를 업데이트하면서 Global Optima를 찾아가는 과정이다.
신경망의 Loss Function은 고차원 함수이기 때문에, 신경망이 어떻게 학습되고 있는지 직관적으로 알기 어렵다.
하지만, 고차원의 목적 함수를 사람이 이해할 수 있는 3차원 공간에 표현함으로써, 신경망의 훈련 과정을 더 잘 이해할 수 있고 신경망 설계에 필요한 인사이트를 얻을 수 있다.
Loss Surface는 모델의 Loss Fuction이 그래프로 표현된 것이다.
Loss Function은 모델을 최적화하는 데 사용된다. 따라서 Loss Surface는 모델의 성능과 최적화 과정에 매우 중요한 역할을 한다.
Loss Surface 만드는 법
Loss Surface를 시각화하는 방법은 다음과 같다.
1. 두 개의 가우시안 분포를 따르는 랜덤 방향 벡터를 만드는 것 이다. (0,0)의 중앙 지점은 이미 훈련된 파라미터에서의 Loss 값으로 최저점을 의미한다고 볼 수 있다.
2. 두 개의 방향 벡터를 만든 뒤, 각 방향벡터에 -1 부터 1까지의 상수를 곱하고, 기존 신경망의 학습된 파라미터와 더한다.
3. 이렇게 생성된 벡터를 사용하여 Loss Surface를 시각화 한다.
실제로 Loss Surface를 만들어보자.(MNIST 데이터를 사용해서)
TensorBoard를 통해 쉽게 확인할 수 있다.
728x90
반응형
'AI > 딥러닝(Deep Learning)' 카테고리의 다른 글
[딥러닝/DL] Loss Function (0) | 2024.09.09 |
---|---|
[딥러닝/DL] Attention (0) | 2024.01.09 |
[딥러닝/DL]9. LSTM과 GRU 셀 (0) | 2022.12.09 |
[딥러닝/DL]8. 순환 신경망으로 IMDB리뷰 분류하기 (1) | 2022.12.08 |
[딥러닝/DL]7. 순차 데이터와 순환 신경망 (1) | 2022.12.08 |