- Choosing Activation Function for Output Layer
- Sigmoid: Binary Classification 문제에서 사용
- Linear: Regression 문제
- ReLU: Hidden Layer층에서 주로 사용, 음수값 제거
- Tanh: 양수와 음수를 모두 고려
- Choosing Activation Functions for Hidden Layer
- Sigmoid: 출력값이 확률값을 나타낼 때 사용
- ReLU: 효율성과 간단함, 음수값 제거
- Leaky ReLU: 음수값을 제거하지 않고 작은 기울기를 부여
- GELU: Gaussian 분포를 따르는 Activation Funtion
- Why Nonlinear Activation Function
- Linear Function만 사용할 경우, 모델은 복잡하게 분류하거나 학습할 수 없다.
- Nonlinear Function을 사용하면, 데이터 공간을 비선형적으로 mapping하여 신경망이 복잡한 데이터 패턴을 학습 가능
- Vanishing Gradient
- Sigmoid Activation Fuction
- ReLU Activation Function
# Recap) Sigmoid Function의 도함수
Implementation Details of Neural Network
- Update Rule for Neural Network
- Implementation (Using Class)
- __init__
- weight W와 b를 초기화한다.
self.w = ~ self.b = ~
- forward
- Input data X를 기반으로 출력값을 계산하는 과정
z1 = self.w @ X + self.b1 a1 = self.sigmoid(z1)
- update
- Backpropagation을 포함하여 weight와 bias를 update
# lr : 학습률(Learning Rate) # y : 실제값 # x: 입력 데이터 def sigmoid(self, z): return 1/(1 + np.exp(-z))
- Implementation (__init__)
- 초기화 과정
1. W 초기화
self.w1 = np.random.rand(3, 4)
- 첫 번째 층에서 입력층(4)과 첫 번째 은닉층(3)을 연결하는 가중치 행렬 W1
2. Bias 초기화self.b1 = np.zeros(3, 1)
- 첫 번째 은닉층(3)에 대한 Bias 초기화
3. 구조 정의EX) cf = [4, 3, 2, 1] # cf[1]: 첫 번째 은닉층의 뉴런수 (3) # cf[2]: 두 번째 은닉층의 뉴런수 (2)
- Implementation (Forward)
- broadcasting: 각 입력 데이터에 동일하게 적용되도록 크기를 자동 확장
- Implementation (Forward Propagation)
- forward(self, x)
- X: 입력 데이터
- 입력 값 X를 기반으로 Forward Propagation을 수행하고, 각 층의 z[l] 및 a[l] 값을 update
- code 설명
self.z1 = np.matmul(self.w1, X) + self.b1 self.z1 = self.w1 @ X + self.b1
=> np.matmul: 행렬 곱셈
self.a1 = self.sigmoid(self.z1)
=> a[l] = g(z[l]), g: activation function(Sigmoid)
- Implementation (Backpropagation)
- 최종 출력층 δ
- Hidden Layer δ
- Backpropagation 행렬 연산
- Logistic Regression
- Weight update
'3-2 > 기계학습' 카테고리의 다른 글
11주차-Loss Function Design (0) | 2024.12.07 |
---|---|
10주차-Multi-class Classification (1) | 2024.12.01 |
8주차-Neural Network (0) | 2024.11.27 |
7주차-Regularization (1) | 2024.10.27 |
6주차-Binary Classification (1) | 2024.10.27 |