반응형
Notice
Recent Posts
Recent Comments
Link
안 쓰던 블로그
[헷갈리는 개념 정리1] steps_per_epoch 값 정하기 본문
반응형
steps_per_epoch
steps_per_epoch = 훈련 샘플 수 / 배치 사이즈
예시1: 총 45개의 훈련 샘플이 있고 배치사이즈가 3이면 최대 15 스텝으로 지정한다 (그 이하 가능)
예시2: 총 80개의 훈련 샘플이 있고 배치사이즈가 10이면 최대 8 스텝으로 지정한다
사이즈가 너무 크면 이런 에러가 뜬다
Your input ran out of data; interrupting training. Make sure that your dataset or generator can generate at least `steps_per_epoch * epochs` batches (in this case, 150 batches). You may need to use the repeat() function when building your dataset.
쉽게 정리하면.. 이 코드를 사용하면 된다
steps_per_epoch = len(X_train)//batch_size
validation_steps = len(X_test)//batch_size # test data가 있다면
참고로 이 값은 에포크(epochs) 수랑 상관없다
"steps_per_epoch * batch_size <= 훈련 샘플 수"만 맞춰주면 된다
주의!!
만약 ImageDataGenerator를 사용했다면 len(X_train)값과 개수가 다를 수 있다
이미지 제너레이터를 선언한 코드 출력으로 나온 길이를 사용하면 된다
예시: Found 80 images belonging to 2 classes. -> 총 80개의 훈련 샘플
코드 참고
from tensorflow.keras.preprocessing.image import ImageDataGenerator
train_datagen = ImageDataGenerator(rescale=1/255)
train_generator = train_datagen.flow_from_directory(
"/tmp/h-or-s",
target_size=(150,150),
batch_size=10,
class_mode="binary"
)
# output: 'Found 80 images belonging to 2 classes'
history = model.fit(
train_generator,
steps_per_epoch=8,
#9,10,11,12.. 불가능
#6도 가능, 7도 가능.. 8이 마지노선
#이 값은 에포크 수랑 상관없다. 총 45개의 훈련 샘플이 있고 배치사이즈가 3이면 15 스텝으로 지정한다
#배치 사이즈가 10이고, 훈련 샘플은 80개니까, 8개가 마지노선이다
#안 맞으면 Your input ran out of data; interrupting training. Make sure that your dataset or generator can generate at least `steps_per_epoch * epochs` batches (in this case, 150 batches). You may need to use the repeat() function when building your dataset. 에러
epochs=15,
verbose=1,
callbacks=[callbacks]
)
반응형
'머신러닝 > 머신러닝' 카테고리의 다른 글
역 드롭아웃 inverted dropout 구현 시 추가 값을 곱하는 이유 (0) | 2021.08.31 |
---|---|
logistic regression back propagation derivative (로지스틱 회귀의 역전파 미분 유도 과정) (0) | 2021.08.21 |
Transfer Learning과 함께 Image augmentation을 사용 가능할까? (0) | 2021.08.13 |
퍼셉트론, 신경망, 활성화 함수, 선형/비선형 기본 개념 정리 (0) | 2021.07.22 |
사전 훈련된 CNN 사용하기 (Using a pretrained CNN) (0) | 2021.07.16 |
Comments