BESS(Back-End Study Space)

Perceptron, Deep Learning, Gradient Descent 본문

데이터 분석 입문/딥러닝

Perceptron, Deep Learning, Gradient Descent

leeez 2020. 12. 5. 12:48

#1. Perceptron(1958, Frank Rosenblatt)

생물학적 뉴런을 모방하여 인공신경망(Artificial Neural Network)의 기본 단위

Schematic of Rosenblatt's perceptron

※ Activation function : 가중치들의 합으로 만들어진 신호가 이 함수를 만족해야 다음 perceptron으로 전달되도록 한다.

 

#2. Artificial Neural Network (ANN)

- Artificial Neural Network : Perceptron을 여러 개 연결한 것
- Artificial Neural Network의 학습 : 우리가 원하는 목표를 달성하기 위한 weight값들을 찾아내는 과정

 

#3. Deep Learning

Single-Layer Perceptron Multi-Layer Perceptron(MLP)
- input layer은 layer 개수 따질 때 고려하지 않음 - hidden layer가 한 개 이상 존재할 때 Multi-Layer

Deep Learning ?
☞ Deep Neural Network을 이용한 Machine Learning 방법

    - Deep Neural Network : Hidden Layer 수가 2개 이상인 network

 

 

#4. Gradient Descent

> 1. Weight 초기화
원하는 weight를 어떻게? → 그 전에 아무것도 모르는 상태에서 weight의 초기값은 어떻게? 모르겠다 일단 Random한 값으로 시작하자!
Random Initialization
- weight가 두 종류 있다고 가정했을 때, 둘 중에 어떤 것이 더 예측을 잘하는 지 평가가 필요함
              ▼
> 2. Loss Function(Cost Function)
- Neural Network이 얼마나 못하는 지에 대한 척도가 필요함 (Neural Network의 출력과 실제 정답의 차이)
- 예 ) 2가지 광고료 조합에 대하여 Neural Network이 예측한 (남,녀)에게의 판매량 : (100, 80) / 실제 판매량 : (105. 78) 일 때,
         L = (105-100)^2 + (78-80)^2 = 29
         (+, - 로 인해 상쇄되는 효과를 없애기 위해 제곱을 하여 양수로 바뀌게 해 주는 방식이 가장 많이 쓰임)
- Loss 계산법 : 내가 가진 모든 training data에 대하여 Neural Network의 출력과 실제 정답(label)을 비교하여 각각의 Loss를 계산하고 이를 모두 더해서 전체 Loss를 계산한다
- Loss Function 값이 줄어들도록 weight 값들을 조절하는 것이 필요 weight을 어떻게 바꿔야 Loss Function 값이 줄어들까? 미분!

Gradient (미분)


'w0에서의 접선의 기울기'
의 의미
: 예를 들어 w0에서의 미분값이 -2라면, w를 w0에서 왼쪽(-방향)으로 아주 조금 움직이면 그 2배만큼 L값이 증가한다는 뜻


Loss를 w로 미분하고, 미분값이 가리키는 방향의 반대방향으로 아주 조금씩 w를 바꿔나가면 Loss를 감소시킬 수 있다

 

 

> 3. Gradient Descent
Loss Function의 미분(Gradient)를 이용하여 weight를 update하는 방법

 

'데이터 분석 입문 > 딥러닝' 카테고리의 다른 글

TensorFlow와 PyTorch  (0) 2020.12.07
Generative Adversarial Network  (0) 2020.12.07
Recurrent Neural Network(RNN)  (0) 2020.12.06
Convolutional Neural Network(CNN)  (0) 2020.12.06
Mini-Batch, Back Propagation, Overfitting  (0) 2020.12.05