Weight 초기화
아무것도 모르는 상태에서 weight 초기값은 어떻게 찾을까?
일단은 랜덤한 값으로 찾자.
Loss Function(Cost Function)
Neural Network이 잘되고 있는지에 대한 척도를 알아보기 위해서
Neural Network의 출력값과 실제의 값을 비교 하여서 차이를 확인 하는 방법이다.
그 구간을 Loss Function의 값이 줄어들도록 Weight 값이 조금씩 바꾸는 것이다.
weight를 어떻게 바꿔야 Loss Function의 값이 줄어드는 것은 미분을 적용하는것이다.
Gradient Descent
Loss Funtion의 미분(gradient)을 Weight 값를 찾는 방법이다.
Recap - Gradient Descent
모든 트레이닝 데이타를 대해서 Neural Network의 출력과 실제 정답을 비교하여 각각의 Loss를 계산하고 이를 모두 더해서 전체의 Loss를 계산한다. 합산한 Loss를 Weight로 미분한 다음 그 미분값(gradient)이 가르키는 방향의 반대 방향으로 weight 값을 아주 조금씩 바꿔 나간다.
Batch / Stochastic / Mini-batch Gradient Descent
모든 트레이닝 데이터에 대해서 Loss율을 다 계산 하는 건 너무 오래 걸리기 때문에
전체 데이터에서 일부 데이터를 추출 해서 이 데이터가 전체 데이터를 대표한다고 가정한 후
일부 데이터만 Loss를 계산하고 Weight 값을 찾아도 되지 않을까 라는 것은 Batch Gradient Descent 이다
Stochastic Gradient Descent 은 전체 데이터 중에 1개를 뽑아서 그 Loss 값을 이용하는 것이다.
Mini-batch Gradient Descent 은 Batch와 Stochastic 중간 형태로 데이터를 n개 만큼 뽑고 그 n개의 Loss를 계산한 후에 다 더한 후에 이용하는 방법이다.
'데이터분석 > 기초' 카테고리의 다른 글
[데이터분석] Deep Learning(딥러닝) 4 (0) | 2021.12.01 |
---|---|
[데이터분석] Deep Learning(딥러닝) 3 (0) | 2021.11.30 |
[데이터분석] Deep Learning(딥러닝) 1 (0) | 2021.11.28 |
[데이터분석] 기초 통계학 7 (2) | 2021.11.27 |
[데이터분석] 기초 통계학 6 (2) | 2021.11.26 |
최근댓글