Machine Learning

딥러닝 기초

robin0309 2020. 4. 15. 14:43

딥러닝의 기본구조

1.데이터  (2. 모델 적용 3.예측 4.에러 최소화 5.최적화)*반복  6.결과

1.Data

학습 시키기 위한 데이터 . 이 데이터가 모델에 들어감

데이터가 생성되고 , 데이터에 Transform 변형을 준다거나
모델에 들어가기 전에 데이터 전처리가 들어감

이 때 들어갈 때는 Batch 로 만들어서 Model 에 넣어줌

 

2.Model

LeNet , AlexNet , VGG 나 ResNet 등 다양하게 설계된 모델

Convolution Layer, Pooling 등 다양한 Layer 층들로 구성

이 모델 안에 학습 파라미터가 있고 , 이 모델이 학습하는 대상

3.Prediction / Logit


각 Class 별로 예측한 값 .

여기서 가장 높은 값이 모델이 예상하는 class 또는 정답



위의 숫자가 정답이라고 할 때 얼마나 틀렸는지 얼마나 맞았는지 확인 가능

4.Loss / Cost  
예측한 값과 정답과 비교해서 얼마나 틀렸는지를 확인 .

Cross Entropy 등 다양한 Loss Function 들이 있음

이 때 계산을 통해 나오는 값이 Loss(Cost, Cost Value 등 이라고 불림

이 Loss 는 얼마나 틀렸는지 를 말하며 이 값을 최대한 줄이는 것이 학습의 과정

5.Optimization

앞에서 얻은 Loss 값을 최소화하기 위해 기울기를 받아 최적화된 Variable 값들로 반환

이 반환된 값이 적용된 모델은 바로 전에 돌렸을 때의 결과보다 더 나아지게 됨

이 때 바로 최적화된 값만큼 바로 움직이는 것이 아닌 Learning Rate 만큼 움직인 값이 적용

6.Result

평가 할 때 또는 예측된 결과를 확인 할 때는 예측된 값에서
argmax 를 통해 가장 높은 값을 예측한 class 라고 둠


위의
예측값에서는 0.3 가 제일 높은 값이므로 클래스 2 가 가
장 높다고 봄 파이썬에선 0 으로 시작

 

7. Model

8. Layer

9. Convolutional

특징을 뽑는 layer층

10. weight/filter/kernel/variable/bias

더 좋은 feature를 잡는 컨벌루션을 만들기위해 계산을 통해 성능 을 높이는 것

11. pooling layer

이미지가 가지고있는 큰특징들을 반으로 줄여 주는 것(max pooling) -> 압축

12. Optimization

인공지능 학습 후 최적화로 찾아가는 것

13. Activation Function

특징 뽑은 것에서 음수 값이나 불필요한 것 제거 주로 요즘은 Relu 사용

14. Softmax

최종 마지막에 컴퓨터가 예측한것 (2.0,1.0,0.1) 각클래스에 수치를 주고 값들이 Soft max를 거쳐서 모든 클래스의

확률이 1이 되게 만듬.  결국 값들을 확률로 바꿔주는 것.

15. Cost / Loss / Loss Function

정답이 0,1,2,3,4 중 3번일 때 각자 예상했던 확률에 대해 맞출확률 틀릴확률을 계산을 해서 얼마나 틀렸는지를

계산하는 방식 ->loss를 줄이기 위해 하는 것들 -> optimization

16.Learning Rate

하이퍼 파라미터(인간이 학습할 때 직접 조절해주는 것) 중 하나 ,  로스를 낮추려하다가 천천히갈지 중간으로갈지

빠르게 갈지 선택 ( 빠르게 가면 제일 낮은 곳을 찾을 수 없음)

17. BatchSize

모델에 데이터를 넣을 때 모든 데이터(ex-6만장)를 한번에 넣을 수 없음. 그래서 몇장을 나눠서 넣어주는데 

그 몇장의 갯수를 정해주는 것.

18.Epoch / Step

전체 6만장도 한번만 볼 수 없음 여러번 반복해서 봐야되는데 epoch수 만큼 반복

며칠돌리는게 아니라 몇주도 걸릴 때 도 있음.

19.Train / Validation / Test

트레인 - 학습 , 밸리데이션- 학습전 마지막 평가 ,테스트 - 평가

 

20. Label / Ground Truth

어떤 데이터셋 에 대한 정답(label)이 있는 것 -supervised learning

21. Class

 

반응형

'Machine Learning' 카테고리의 다른 글

SVM - Support Vector Machine  (0) 2020.06.23
Classification Tree , Regression Tree  (0) 2020.06.23
의사결정나무 - Decision Tree  (0) 2020.06.23
앙상블- Stacking , ensemble 의 ensemble  (0) 2020.06.18
앙상블 - Bagging  (0) 2020.06.18
반응형