일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- numpy/pandas
- 딥러닝
- SQL
- C++
- 혼공머신
- CNN
- 중학1-1
- 자바 실습
- 운영체제
- 데이터베이스
- 중학수학
- 자바
- 정수와유리수
- 연습문제
- CSS
- 영어공부
- 컴퓨터비전
- 데이터입출력구현
- html/css
- JSP/Servlet
- 컴퓨터구조
- 정보처리기사실기
- 코딩테스트
- 정보처리기사필기
- 파이썬
- 파이썬라이브러리
- 머신러닝
- 텍스트마이닝
- pandas
- 데이터분석
- Today
- Total
클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지
케라스 2 - 딥러닝 준비 2 : 딥러닝 프로세스 본문
이번에는 딥러닝 프로세스에 대해서 학습해 보겠다.
딥러닝 프로세스
딥러닝 모델 구축 및 훈련을 위해서는 다음과 같은 프로세스를 따른다.
데이터 전처리, 모델의 생성, 컴파일, 훈련은 모델의 훈련을 위한 필수 프로세스로 누락되는 단계는 없다. 예측은 예측용 데이터셋을 입력하며 모델 예측 값을 얻는 과정이다. 검증은 모델의 성능을 평가하는 단계를 말한다.
1. 데이터 전처리
데이터를 모델에 주입하기 전에 데이터를 가공하는 단계를 말한다. 데이터셋의 종류와 적용하려는 문제 유형에 따라 전처리 방법은 다양하다.
때에 따라서는 배열의 차원을 변경하거나 스케일을 정할 수 있다. 전처리 단계에서 데이터셋의 형태나 차원을 미리 구상해야 다음 단계에서 모델을 설계할 때 입력할 데이터셋의 형태를 올바르게 정의할 수 있다.
2. 모델 생성
모델의 구조를 정의하고 생성하는 단계다. 모델을 생성하는 방법은 크게 세 가지로 구분할 수 있으며, 순차적인 구조의 모델은 Sequential API로 구현한다. 다중 입력 및 출력을 가지고 복잡한 구조를 갖는 모델은 Functional API 혹은 Model Subclassing 방법으로 구현할 수 있다.
3. 모델 컴파일
딥러닝 모델의 구조를 정의하고 생성한 뒤에는 생성된 모델 훈련에 사용할 손실함수, 옵티마이저, 평가지표 등을 정의한다. 모델 인스턴스에 compile() 메서드를 적용하고, 앞에서 열거한 여러 가지 속성 값을 설정한다. 이 과정을 컴파일 단계라고 한다.
4. 모델 훈련
모델을 훈련하는 단계다. fit() 함수에 모델 훈련에 필요한 정보를 매개변수(또는 파라미터)로 전달한다. 훈련 데이터셋, 검정 데이터셋, epoch, 배치 크기 및 콜백 함수 등을 지정한다.
5. 모델 검증
훈련이 완료된 모델을 검증하는 단계다. 모델을 훈련할 때 사용하지 않은 검증 데이터셋을 모델에 입력하고 모델의 예측 값을 정답과 비교하여 평가지표를 계산한다. 반환된 검증 결과를 토대로 잠재적인 모델의 성능 평가가 이뤄진다. 검증 결과를 바탕으로 다시 모델 생성 단계로 돌아가 모델 수정을 하고, 컴파일 및 훈련 과정을 거쳐 재평가하는 단계를 통해 목표 성능에 도달할 때까지 이 과정을 계속 반복한다.
6. 모델 예측
훈련과 검증이 완료된 모델로 데이터셋에 대하여 모델을 예측하고 그 결과를 반환한다.
학습을 마치고
답러닝 프로세스에 대해 공부해 보았다. 분량이 많지 않지만 하나의 주제가 끝나서 여기서 마무리해 본다. 그동안 실습은 많이 해보았지만 딥러닝이 어떤 과정에 따라 이루어지는지 잘 몰랐다.
책이 무척 딱딱하고 어렵다고 생각했는데 기본에 대해 제대로 설명하는 정말 괜찮은 책인 것 같다. 이 책을 다 마치고 나면 난 더 이상 딥러닝의 초보 수준이 아닐 것 같다.
'인공지능 > 딥러닝' 카테고리의 다른 글
케라스 4 - 심층 신경망으로 이미지 분류 (1) | 2024.10.26 |
---|---|
케라스 3 - 단순 신경망 훈련 (0) | 2024.10.26 |
케라스 1 - 딥러닝 준비 1 : 주요 용어 정리 (0) | 2024.10.26 |
딥러닝을 시작합니다 6 - 신경망 모델 훈련 2 : 모델 저장과 복원 및 콜백 (0) | 2024.10.26 |
딥러닝을 시작합니다 5 - 신경망 모델 훈련 1 : 손실 곡선과 검증 손실 그리고 드롭아웃에 대하여 (0) | 2024.10.25 |