일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- Today
- Total
- activation function
- AdaGrad
- adaptive learning rate
- arithmetic reasoning
- Attention is all you need
- attention mechanism
- auto encoder
- Back Propagation Trough Time
- Backpropagation
- Bayes Theorem
- BCE
- Bert
- Bidirectional Encoder Representation from Transformer
- Binary classification
- BPTT
- Chain-of-Thought
- CNN
- commonsense reasoning
- Computer Vision
- Confusion Matrix
- convolutional neural network
- Cot
- cot reasoning
- counting
- Cross Entropy Loss
- deep learning
- degradation
- Dimension Reduction
- Few-shot
- fine-tuning
데이터 분석 일지
[Deep Learning] Regression 본문
1. Motivation
실생활에서는 선형 데이터보다 비선형 데이터가 더 많이 존재한다. → 비선형 함수를 어떻게 만들 수 있을까?
아래의 식과 같이 선형 함수 두 개를 이어 붙이는 경우에도 선형 함수가 나온다.
$$n = x · W_1 + b_1$$ $$y = n · W_2 + b_2 = x · W_1 · W_2 + b_1 · W_1 + b_2$$
2. In Logistic Regression
마지막 sigmoid 함수를 통해 매우 작은 값은 0에, 매우 큰 값은 1에 수렴하도록 할 수 있다.
3. Adding Non-linearity: 레이어 사이에 비선형 활성 함수 추가
4. Network Capacity
깊이와 너비를 넓게 할수록 신경망의 표현력은 좋아진다. 보통 너비는 입력보다 출력이 더 작은 형태로 이루어진다. 입력되는 파라미터, 즉 조건은 여러 개이지만 출력되는 값은 더 적은 경우가 많다.
5. Gradient Descent for Deep Neural Networks
Same as Linear / Logistic Regression, except DNN has more parameters(= more computation)
6. Backpropagation
Gradient Descent를 하려면 Loss 값을 학습 파라미터로 미분해야 하는데, 이 계산을 수행할 때 반복적으로 나오는 값은 저장해 두었다가 순차적으로 계산한다.
7. Chain rule
미분을 다룬 변수들의 미분의 곱으로 표현할 수 있다.
$$\frac{\partial{y}}{\partial{x}} = \frac{\partial{y}}{\partial{h}} · \frac{\partial{h}}{\partial{x}}$$
이 chain rule을 사용한다면 심층신경망은 합성 함수로 표현할 수 있다.
8. Backpropagation with Chain rule
Chain rule을 사용한다면 Backpropagation을 수행할 때 필요한 기존 미분 값 재활용이 가능하다.
$$\frac{\partial{L}}{\partial{W_3}} = \frac{\partial{L}}{\partial{y}} · \frac{\partial{y}}{\partial{W_3}}$$ $$\frac{\partial{L}}{\partial{W_2}} = \frac{\partial{L}}{\partial{y}} · \frac{\partial{y}}{\partial{h_2}} · \frac{\partial{h_2}}{\partial{W_2}}$$
$$\frac{\partial{L}}{\partial{W_1}} = \frac{\partial{L}}{\partial{y}} · \frac{\partial{y}}{\partial{h_2}} · \frac{\partial{h_2}}{\partial{h_1}} · \frac{\partial{h_1}}{\partial{W_1}}$$
각 수식마다 새롭게 계산해야 하는 항은 모두 2개 싹이다. 이와 같이 미분 값을 저장해 둔다면 계산을 더 효율적으로 할 수 있다.
9. Gradient of Sigmoid & TanH
sigmoid나 tanh를 미분하면 모두 1보다 작은 값이 나온다. 이는 gradient vanishing 문제로 이어질 수 있다.
- Gradient가 1보다 작을 경우: 1보다 작은 값을 거듭제곱한다면 이는 0에 수렴하여 파라미터가 업데이트되지 않는다.
$$W_1 \leftarrow W_1 - \eta\nabla_{W_1}L(\theta)$$
- Gradient가 1보다 클 경우: 1보다 큰 값을 거듭제곱하여 곱한다면 이는 무수히 커질 수 있기 때문에 파라미터가 증폭한다.
10. ReLU(Rectified Linear Unit)
ReLU는 두 개의 Linear 함수로 이루어져 있고, 이는 gradient vanishing 문제를 어느 정도 해결할 수 있다. 수식은 아래와 같다.
$$y = ReLU(x) = max(0, x)$$
11. Leaky ReLU
Leaky ReLU는 기울기를 조절할 수 있다. ReLU는 x가 0보다 작을 경우에 이전 레이어를 학습할 수 없다는 문제가 있었는데 이를 개선한 것이 Leaky ReLU이다. 수식은 아래와 같다.
$$y = Leaky ReLU_\alpha (x) = max( \alpha · x, x)$$ $$where 0 \leq \alpha <1$$
'Lecture or Textbook Review > Deep Learning' 카테고리의 다른 글
[Deep Learning] Hyper-Parameter & Optimizer (0) | 2024.02.02 |
---|---|
[Deep Learning] SGD (Stochastic Gradient Descent) (0) | 2024.01.31 |
[Deep Learning] Logistic Regression (로지스틱 회귀) (0) | 2024.01.23 |
[Deep Learning] Linear Regression (선형 회귀) (0) | 2024.01.23 |
[Deep Learning] 기초 최적화 방법: Gradient Descent (0) | 2024.01.22 |