1. 문제 정의와 데이터셋 수집
입력과 출력이 무엇인지, 어떤 데이터를 사용할 것인지
2. 성공 지표 선택
성공은 무엇인가를 정의
성공의 지표가 모델이 최적화할 손실 함수를 선택하는 기준이 됨
3. 모델 평가 방법 선택
데이터를 훈련, 검증, 테스트 세트로 나눔
- 홀드아웃 검증 세트 분리: 데이터가 풍부할 때 사용
- K-겹 교차 검증: 홀드아웃 검증을 사용하기에 샘플의 수가 너무 적을 때 사용
- 반복 K-겹 교차 검증: 데이터가 적고 매우 정확한 모델 평가가 필요할 때 사용
선택할 때 유의해야할 사항: 대표성 있는 데이터, 시간의 방향, 데이터 중복
4. 데이터 준비
데이터 전처리
- 벡터화
- 정규화
- 누락된 값 다루기
- 특성 추출
5. 기본보다 나은 모델 훈련하기
통계적 검정력을 달성하는 것
아주 단순한 모델보다 나은 수준의 작은 모델을 개발
첫 번째 모델을 만들기 위해 세 가지 중요한 선택
- 마지막 층의 활성화 함수
- 손실 함수
- 최적화 설정
손실 함수는 주어진 미니 배치 데이터에서 게산 가능해야 하고, 미분 가능해야 함
모델에 맞는 마지막 층의 활성화 함수와 손실 함수 선택
문제 유형 | 마지막 층의 활성화 함수 | 손실 함수 |
이진 분류 | 시그모이드 | binary_crossentropy |
단일 레이블 다중 분류 | 소프트맥스 | categorical_crossentripy |
다중 레이블 다중 분류 | 시그모이드 | binary_crossentropy |
임의 값에 대한 회귀 | 없음 | mse |
0과 1 사이 값에 대한 회귀 | 시그모이드 | mse 또는 binary_crossentropy |
6. 몸집 키우기: 과대적합 모델 구축
과소적합과 과대적합 사이, 즉 과소용량과 과대용량의 경계에 적절히 위치한 모델이 이상적
-> 어디에 위치하는지 찾기 위해서는 지나쳐 보아야 함
모델의 크기를 알기 위해서는 과대적합된 모델을 만들어야 함
- 층을 추가
- 층의 크기를 키움
- 더 많은 에포크 동안 훈련
검증 데이터에서 모델 서능이 감소하기 시작했을 때 과대적합에 도달한 것
7. 모델 규제와 하이퍼파라미터 튜닝
- 드롭아웃 추가
- 층을 추가하거나 제거해서 다른 구조를 시도
- L1이나 L2 또는 두 가지 모두 추가
- 최적의 설정을 찾기 위해 하리퍼파라미터를 바꾸어 시도
- 선택적으로 특성 공학을 시도
출처 : 케라스 창시자에게 배우는 딥러닝
'Study > AI' 카테고리의 다른 글
[AI][ML]데이터 스케일링 (0) | 2022.07.20 |
---|---|
로지스틱 회귀 (0) | 2022.06.04 |
[AI][Deep learning]행렬의 내적(행렬 곱) (0) | 2021.02.06 |
[AI][Deep learning]오차 역전파 (0) | 2021.01.28 |
[AI][Machine learning]생활코딩 Machine learning 1 정리 (0) | 2020.12.29 |