1. DNN(Deep Neural Network) 핵심 개념
- Feedforward Neural Network (순방향 신경망)
데이터가 한 방향으로만 전달되는 구조 (입력 → 출력)
Fully Connected : 모든 뉴런이 다음 층 뉴런과 연결
구성요소
1) 입력층 (Input Layer) : 입력 데이터를 벡터로 변환해 전달
2) 은닉층 (Hidden Layer) : 가중치 합 + 편향 -> 활성함수 적용
3) 출력층 (Output Layer) : 문제 유형에 따라 다른 활성함수 사용
활성함수 종류
1) Sigmoid : S자 형태, 확률 해석 가능 (이진 분류에 사용)
2) Tanh : -1~1 출력
3) ReLU : 0 이하 0, 그 외 그대로 통과 (비선형 표현 강함)
4) Swish : x * sigmoid(x), AutoML에서 최적 탐색
5) Softmax : 다중 클래스 분류에 사용 (출력 합이 1)
분류 문제
1) 이진 분류 : sigmoid -> 확률로 해석
2) 다중 분류 : softmax -> 각 클래스별 확률 출력
3) 회귀 문제 : 출력중 활성함수 없음 (보통 f(x) = x 그대로 출력)
2. 손실 함수 (Loss Function)
회귀 -> MSE(Mean Squared Error)
이진 분류 -> Logistic Loss (Cross Entropy)
3. 최적화 알고리즘 (Optimiza)
- 경사하강법 (Gradient Descent)
목적 : 손실함수를 최소로 만드는 방향으로 가중치 업데이트
기본식 :
- SGD (Stochastic Gradient Descent)
전체 데이터 대신 일부 데이터로 업데이트 -> 빠르지만 불안정
문제 : 진동, saddle Point에 잘 수 있음
- SGD Momentum
이전의 이동 속도에 관성(m) 부여 -> 궤적이 더 부드럽고 빠름
- Nesterov Momerntum
미리 한 발짝 가보고 경사 계산 -> overshooting 방지
- Ada Grad
많이 변화한 파라미터는 학습률 줄이고, 덜 변화한 건 키움
- RMSProp
AdaGrad 보완, 최근 변화 중심으로 학습률 조정 (지속적으로 변화량 반영)
- Adam
Momentum + RMSProp의 장점 결합
편향 보정 기능 포함 -> 가장 널리 쓰임
자동으로 학습률 조절하면서 수렴 빠름
'딥러닝' 카테고리의 다른 글
[딥러닝] CNN 구조를 한눈에! (1) | 2025.04.20 |
---|---|
[딥러닝] DNN 학습의 원리와 최적화 전략 (0) | 2025.04.20 |
[딥러닝] 딥러닝 모델은 어떻게 학습되는가? – DNN & CNN 학습 구조 (1) | 2025.04.20 |
[딥러닝] DNN 설계에 관한 핵심 내용들 (0) | 2025.04.14 |
[딥러닝] 딥러닝과 빅데이터 개념 (0) | 2025.04.13 |