train_data = train_data.repeat().shuffle(60000).batch(100)
525
작성한 질문수 2
답변 1
1
안녕하세요~. 반갑습니다.
1. repeat()
repeat()의 경우 전체 epoch의 반복횟수를 지정하는 옵션입니다. 즉 60000개의 mnist 트레이닝 데이터가 있다면 이를 몇번의 epoch 동안 반복할지를 결정합니다.
기본적으로 repeat() 형태로 지정하면 무한한 epoch만큼 반복하게 됩니다.
예를 들어
https://github.com/solaris33/deep-learning-tensorflow-book-code/blob/725016cb715c9df62a42d58cfce20614ca6810ba/Ch04-Machine_Learning_Basic/mnist_classification_using_softmax_regression_v2_keras.py#L18
코드에서 repeat()을 빼버리면
60000(mnist 트레이닝 데이터의 개수) / 100(batch_size) = 600
해서 600번(=1번의 epoch)만 학습할 수 있어서
https://github.com/solaris33/deep-learning-tensorflow-book-code/blob/725016cb715c9df62a42d58cfce20614ca6810ba/Ch04-Machine_Learning_Basic/mnist_classification_using_softmax_regression_v2_keras.py#L65
위에서처럼 1000번 반복을 수행하는 형태로 학습을 진행할 수 없습니다.(즉, 1000번 반복이 가능한 이유는 repeat() 설정으로 무한한 epoch 반복 설정이 지정되어 있기 때문입니다.)
2. shuffle()
shuffle()은 1번의 epoch이 끝났을때 전체 데이터의 순서를 한번 무작위로 섞어주는(shuffle) 옵셥입니다. 이때 인자로 섞을 데이터의 개수를 지정해줄 수 있는데 보통은 아래처럼
https://github.com/solaris33/deep-learning-tensorflow-book-code/blob/725016cb715c9df62a42d58cfce20614ca6810ba/Ch04-Machine_Learning_Basic/mnist_classification_using_softmax_regression_v2_keras.py#L18
전체 데이터의 개수를 1번의 epoch이 끝났을때 섞어주는 것이 일반적인 패턴입니다.(60000=mnist 트레이닝 데이터의 개수)
추가적인 내용은 아래 링크를 참조하세요.
https://www.tensorflow.org/api_docs/python/tf/data/Dataset
감사합니다.
22강 코드 call()메서드 is_training -> model(x,False)로 호출시 밸류에러 참고
0
48
1
선형 회귀 모델에 대해서 질문 있습니다
0
253
2
tf.keras.model.reset_states()
0
745
2
[질문]colab환경에서 텐서보드(TensorBoard)를 이용해서 학습과정 시각화(Visualization)하기강의 관련 질문
0
500
2
[질문]colab환경에서 tf.train.CheckpointManager API를 이용해서 파라미터 저장하고 불러오기 실행에 대한 질문
0
286
2
colab에서 구동 가능한 char-rnn 코드 관련 질문
0
217
1
안녕하세요 파이썬이랑 tensorflow 정확한 버전 알수있을까요?
0
249
1
colab 환경에서 Autoencoder 구현하였으나 결과가 보이지 않는 분들 참고사항
0
209
1
Mnist 에 keras를 통해 softmax를 활용한 regerssion error 발생
0
2098
2
GRU 리셋게이트, 포겟게이트 질문
0
259
1
ANN 구현
0
347
1
char-rnn 코랩 에러 ... 못보나요,, cpus는 너무 느려서
0
589
1
ANN으로 Mnist 숫자분류기 코드질문
0
293
1
ppt 12p 질문
0
381
1
keras에서 이미 정의된 모델을 가져와 학습할 경우
0
654
1
모델 코드 질문
0
368
1
코드 질문
0
277
1
ppt 10p
0
384
1
ppt 13p 추가 질문
0
256
1
ppt 9p 추가 질문
0
264
1
ppt 5p 질문
0
320
1
ppt 9p 질문
0
282
1
vanishing gradient
0
274
1
TensorFlow 2.0을 이용한 CIFAR-10 이미지 분류를 위한 CNN 구현 질문
0
258
1





