DeepLearning Flow
변하지 않는 Deep learning Flow

1. Data 가져오기
MNIST data load 및 data 확인
TensorFlow datasets 에서 제공하는 MNIST 데이터

[QUIZ_1] 훈련용 데이터셋에는 각 숫자의 그림이 몇개씩 인지 조회하고 시각화하시오.

[QUIZ_2] 이미지 불러온 뒤 시계 반대 방향으로 90도 회전하고 아래위를 반전 시키시오.

2. Preprocessing
- 데이터 검증
- 전처리
- 데이터 증강 ... (이 건 추후에!)
데이터 검증
- 데이터 중에 학습에 포함 되면 안되는 것이 있는가?
(ex) 개인정보가 들어있는 데이터, 테스트용 데이터에 들어있는것, 중복되는 데이터
- 학습 의도와 다른 데이터가 있는가?
(ex) 얼굴을 학습하는데 발 사진이 들어가있진 않은지(가끔은 의도하고 일부러 집어넣는 경우도 있음)
- 라벨이 잘못된 데이터가 있는가?
(ex) 7인데 1로 라벨링, 고양이 인데 강아지로 라벨링
- 기타

전처리
- 입력하기 전에 모델링에 적합하게 처리!
- 대표적으로 Scaling, Resizing, label encoding 등이 있다.
- dtype, shape 항상 체크!!
Scaling

Flattening
- 이번에 사용할 모델은 기본적인 Feed-Forward Neural Network
- 1차원 벡터가 Input의 샘플 하나가 된다. (2차원 텐서라는 말)

Label encoding
- One-Hot encoding
tf.keras.utils.to_categorical 사용!

하나의 클래스로 만들어서 관리

3. Modeling
(1) 모델 정의

(2) 학습 로직

(3) 학습 실행

4. Evaluation
(1) 학습 과정 추적

(2) 모델 검증

(3) 후처리
