티스토리 뷰

Deep Learning Computation Procedure

 

① Deep Learning Model Setup (딥러닝 모델 만들기)

딥러닝 모델 만들기 단계에 포함되는 내용은 아래와 같다.

MLP, CNN, RNN, GAN, Customized Model

Hidden Layers, Units, Input/Output

Cost Function, Optimizer Selection

이 모델의 Hidden Layer는 4개이고, Unit은 각 레이어 당 7개이다. 레이어와 유닛이 많아질수록 정교한 분류가 가능해진다. 예를 들어, 사과와 체리 같이 분류가 어려운 경우에 정교한 분류가 필요하다.

 

 

② Training (모델 훈련하기)

모델에 대량의 데이터를 집어넣는 단계이다.

Input: Data, Output: Labels

예를 들어, 사과 이미지를 Input에 넣어주고, '사과'라는 레이블을 Output에 넣어주어 무엇인지 모르는 값을 찾는다. (위 그림의 MLP에서 노란 점의 값을 찾는 것에 해당한다.)

 

 

③ Inference (추론하기)

실제로 현실세계에서 적용하여 활용하는 단계이다. Real World Excution.

Input: Real World Input Data

Output: Inference Results based on Updated Weights in Deep Neural Networks

예를 들어, 사과 이미지와 귤 이미지가 들어왔을 때, 사과일 확률이 80%, 귤일 확률이 20%라면 결과는 사과라는 값이 나온다.

 

 

Overfitting

딥러닝은 오버피팅 이슈가 있다. 오버피팅이란, 훈련데이터에 과도하게 Fitting 되어 새로운 데이터를 예측하는 성능이 떨어지게 되는 것을 말한다. 오버피팅은 딥러닝이 데이터 기반 AI이기 때문에 발생하는 문제이다.

 

이것을 풀어서 설명하자면, 다양한 데이터가 부족한 경우 훈련데이터에 Fit 하게 훈련이 되는데, 훈련데이터의 문제점을 고치지 않고, 모델에 잘못된 부분이 있다고 판단하여 훈련을 더 많이 진행하게 된다. 그렇게 되면, 훈련데이터의 더욱 세부적인 부분까지 학습이 되어 훈련데이터의 예측 확률 값은 점점 향상되게 된다. 그 결과, 새로운 데이터가 들어오면 예측률이 더 떨어지게 된다. 이럴 경우 오버피팅을 의심해야 한다.

 

오버피팅을 해결하는 방법

① More training data

② Droupout

③ Autoencoding

④ Regularization

 

더 많은 학습데이터를 사용하는 방법은 불가능한 경우가 있을 수 있으므로, 데이터가 부족해서 오버피팅이 발생한 경우에는 예를 들어, 모델의 성능을 80%에서 50%로 줄이고, 현실에서 20%에서 50%로 작동할 수 있도록 모델을 일반화(정확도를 낮춘다)한다.

 

 


댓글
최근에 올라온 글
페이지 이동 안내

보던 글 목록 : 브라우저 뒤로 가기 메인 화면 : 좌측 상단 아이콘
🍍 The GOAL: AI expert에 가까워지는 중

🍍 I am becoming AI expert who can develop cool things by coding.