- epoch : 한번 학습을 완료한 상태
- batch : 나눠진 데이터 셋
우선, 아래의 세가지 모듈이 필요하다.
import numpy as np
import pandas as pd
import os
csv 파일이 들어있는 폴더로 경로를 정해준다.
예시 : os.chdir('/content/drive/MyDrive/Colab Notebooks/deeplearning')
- epoch
One Epoch is when an ENTIRE dataset is passed forward and backward through the neural network only ONCE
(한 번의 epoch는 인공 신경망에서 전체 데이터 셋에 대해 forward pass/backward pass 과정을 거친 것을 말함. 즉, 전체 데이터 셋에 대해 한 번 학습을 완료한 상태)
▶ 신경망에서 사용되는 역전파 알고리즘(backpropagation algorithm)은 파라미터를 사용하여 입력부터 출력까지의 각 계층의 weight를 계산하는 과정을 거치는 순방향 패스(forward pass), forward pass를 반대로 거슬러 올라가며 다시 한 번 계산 과정을 거처 기존의 weight를 수정하는 역방향 패스(backward pass)로 나뉜다.
이 전체 데이터 셋에 대해 해당 과정(forward pass + backward pass)이 완료되면 한 번의 epoch가 진행됐다고 볼 수 있습니다.
!! 참고사항 epochs = 40이라면 전체 데이터를 40번 사용해서 학습을 거치는 것이다.
▶ 우리는 모델을 만들 때 적절한 epoch 값을 설정해야만 underfitting과 overfitting을 방지할 수 있다.
epoch 값이 너무 작다면 underfitting이 너무 크다면 overfitting이 발생할 확률이 높은 것이다.
- batch size
Total number of training examples present in a single batch.
batch size는 한 번의 batch마다 주는 데이터 샘플의 size. 여기서 batch(보통 mini-batch라고 표현)는 나눠진 데이터 셋을 뜻하며 iteration는 epoch를 나누어서 실행하는 횟수라고 생각하면 된다.
'Deep Learning' 카테고리의 다른 글
Deep Learning : EarlyStopping 라이브러리 사용법 (0) | 2022.06.13 |
---|---|
Deep Learning : validation data란 무엇이고, code에서 사용하는 방법 / 파라미터 validation_split (0) | 2022.06.13 |
Deep Learning : learning rate를 옵티마이저에서 셋팅하는 코드 / 실습문제 풀기 (0) | 2022.06.13 |
Deep Learning : 텐서플로우로, 분류의 문제 모델링 하는 방법 (0) | 2022.06.10 |
Deep Learning with Neural Networks (0) | 2022.06.09 |