2017-11-16 7 views
0

나는 Keras에서 LSTM (Stateful)을 사용하여 시계열 문제를 연구 중이다.Keras의 BatchSize는 어떻게 작동합니까? LSTM-WithState-Time Series

나는 40,000 개의 샘플을 가지고 있으며 배치 크기 64를 사용하고 되돌아보기는 7 일입니다. 그래서 나의 텐서 형태는 (64, 7, 6) 6은 피쳐의 수입니다.

제 질문은 배치 크기 = 64라고 말할 때입니다. Keras LSTM에서 샘플을 어떻게 선택합니까? 처음 64 샘플 다음에 64 샘플이 오나요? 아니면 샘플을 625 개의 창 (40000/64)으로 나누고 각 창에서 64 개의 샘플을 보냅니 까?

예측은 이전 날짜에 따라 다르므로 LSTM과 관련된 시계열 문제로 인해이 작업이 중요합니다.

도와주세요.

답변

0

케라 (keras) 모델에 대한 교육 데이터는 주로 두 가지 방식으로 제공됩니다. model.fit를 사용

  • - 당신은 시작
  • 또는 model.fit_generator()에 전체 데이터를로드 - 당신이

model.fitshuffle 매개 변수는 순서에 결정 배치 현명한 데이터를 산출 발전기를 쓰기되는과 데이터를 입력해야합니다. 기본적으로 데이터는 입니다. 데이터가 모든 신기원마다 섞여 있다는 것을 의미합니다. 이는 시간 시리즈 모델에 필요한 것이 아닌 것 같습니다. 따라서 shuffle 매개 변수를 False으로 설정하여 배열이 구성된 순서대로로드 된 데이터를 사용하도록해야합니다.

model.fit_generator의 경우 컨트롤은 사용자가 구현 한 생성기 기능과 완전히 동일하므로 생성기 수준에서 순서를 결정할 수 있습니다.