Kim Seon Deok

1. 딥러닝 학습 기초 본문

AI/Deep Learning

1. 딥러닝 학습 기초

seondeok 2021. 11. 22. 23:19

학습의 과정

 

1.Feed Forward = Forward propagation = Inference

2. Loss and Gradient = Back propagaton

3.Update = Optimize

 

-네트워크(모델)가 입력으로 데이터를 받아 출력을 내보내주는 과정

-사용자가 설정한 네트워크 구조를 따라가며 연산이 진행

-연산과정은 행렬의 형태로 계산

 

Affine연산 : 입력(x)과 가중치(w)의 행렬곱을 이용해 한번에 출력을 계산

Softmax Function

    -분류문제에 사용

    -출력을 확률값으로 나타냄(출력의 총합은 1)

    -입력의 지수함수에 모든 입력의 지수함수의 합으로 나누어 줌

-네트워크 구조에 따라 목적, 성능이 달라짐 >> MLP, CNN, RNN

 

 

Multi Layer Perception(MLP) = 다층퍼셉트론 = 신경망

-Perceptron(뉴런을 모방)이 여러 층 쌓여있는 구조

-가장 전통적인 방법으로 직관적이고 최소한의 성능 척도로 사용되는 경우가 많다

-곱셈과 덧셈연산으로만 이루어짐

=Fully connected Layer

=FC Layer

 

퍼셉트론(Perceptron)

-신경망의 기원이 되는 알고리즘

-뉴런을 수학적으로 표현

-퍼셉트론에 들어오는 신호들에 각각 가중치를 곱하고(wx) 이들과 바이어스를 다 더한다( wx + b )

-이후 activation함수(f)를 취해 출력 결과를 만들어낸다.

-목표 : 학습해서 적절한 가중치를 찾아내는 것

-퍼셉트론의 기하학적 의미  = 두 데이터를 가르는 직선의 방정식 >> 선형 분류 문제를 풀 수 있다

2개 이상의 퍼셉트론을 활용하면 비선형 문제도 해결 가능하다

Shallow neural network    vs    deep neural network

   hidden layer <= 1               hidden layer >= 2

 

 

활성화 함수 (Activation Function)

다음 퍼셉트론에 보낼 신호의 강도를 결정

비선형성을 줌

Convolution Neural Network

Recurrent Neural Network

 

 

 

손실함수 (Loss function)

-Feed forward를 통해 출력으로 나온 데이터가 실제 정답과 얼마나 차이가 나는지를 나타냄

-딥러닝 네트워크가 어떤 방향으로 학습되어야 하는지 학습의 방향을 설정하는 아주 중요한 부분

-Loss func의 결과값을 토대로 네트워크의 weight들이 업데이트 됨

-학습이 거듭 반복되면 해당 Loss function은 값이 작아짐

-회귀(Regression)문제 : 입력에서 연속적인 수치를 예측하는 문제 > 항등함수

-분류(classification)문제 : 데이터가 어느 클래스에 속하느냐는 문제 > softmax 함수

 

1.평균 제곱 오차, Mean Squared Error

2.교차 엔트로피 오차 Cross entropy error

정답일 때의 출력이 전체 값을 결정

실제 정답이 아닌 요소에 대해 잘못 예측한 값은 loss에 포함되지 않아 계산의 효율성이 올라간다.

엔트로피 entropy

정보이론의 관점에서 얼만큼의 정보를 갖고 있는지 정량적으로 표현하기 위해 사용하는 척도

-너무 뻔해서 결과가 예측되는 상황 - 엔트로피가 작다

-결과를 예측할 수 없는 상황 - 엔트로피가 크다

-교차 엔트로피 =서로 다른 두 상태의 정보량 차이를 나타내는 척도

 

'AI > Deep Learning' 카테고리의 다른 글

1. Back propagation  (0) 2022.01.21
딥러닝 학습방법론  (0) 2021.11.23
딥러닝 기초이론 학습의 과정-2 : Loss and Gradient  (0) 2021.11.23
LSTM  (0) 2021.11.20
RNN 기초  (0) 2021.11.19
Comments