학습 데이터를 더 작은 배치로 분할하여 메모리 오류를 해결하는 방법

Aizayousaf

2 개의 다차원 배열 [prev_sentences, current_sentences]이있는 훈련 데이터가 있는데, 간단한 model.fit 메서드를 사용했을 때 메모리 오류가 발생합니다. 지금 fit_generator를 사용하고 싶지만 훈련 데이터를 배치로 분할하여 model.fit_generator에 공급하는 방법을 모르겠습니다. 훈련 데이터의 모양은 (111356,126,1024) 및 (111356,126,1024)이고 y_train 모양은 (111356,19)입니다. 다음은 간단한 맞춤 방법에 대한 코드입니다.


history=model.fit([previous_sentences, current_sentences], y_train,
                  epochs=15,batch_size=256,
                  shuffle = False, verbose = 1,
                  validation_split=0.2,
                  class_weight=custom_weight_dict,
                  callbacks=[early_stopping_cb])

fit_generator 및 데이터 생성기를 사용한 적이 없으므로 이러한 훈련 데이터를 fit_generator로 사용하도록 분할하는 방법을 정확히 알지 못합니다. 누구든지 fit_generator를 사용하여 배치를 만드는 데 도움을 줄 수 있습니까?

Aizayousaf

훈련 데이터를 미니 배치로 분할하는 데이터 생성기입니다.

def generate_data(X1,X2,Y,batch_size):
  p_input=[]
  c_input=[]
  target=[]
  batch_count=0
  for i in range(len(X1)):
    p_input.append(X1[i])
    c_input.append(X2[i])
    target.append(Y[i])
    batch_count+=1
    if batch_count>batch_size:
      prev_X=np.array(p_input,dtype=np.int64)
      cur_X=np.array(c_input,dtype=np.int64)
      cur_y=np.array(target,dtype=np.int32)
      print(len(prev_X),len(cur_X))
      yield ([prev_X,cur_X],cur_y ) 
      p_input=[]
      c_input=[]
      target=[]
      batch_count=0
  return

다음은 model.fit 메서드 대신 fit_generator 함수 호출입니다.

batch_size=256
epoch_steps=math.ceil(len(previous_sentences)/ batch_size)
hist = model.fit_generator(generate_data(previous_sentences,current_sentences, y_train, batch_size),
                steps_per_epoch=epoch_steps,
                callbacks = [early_stopping_cb],
                validation_data=generate_data(val_prev, val_curr,y_val,batch_size),
                validation_steps=val_steps,  class_weight=custom_weight_dict,
                 verbose=1)

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

SVM 모델을 학습 한 후 감정 분류를 위해 레이블이없는 데이터를로드하는 방법은 무엇입니까?

분류에서Dev

큰 데이터 세트를 반복적으로 분할하여 더 작은 데이터 세트를 행별로 가져 오는 방법

분류에서Dev

tensorflow tf.contrib.learn.SVM이 학습 된 모델을 다시로드하고 예측을 사용하여 새 데이터를 분류하는 방법

분류에서Dev

결합을 사용하여 데이터를 할당하는 더 좋은 방법이 있습니까?

분류에서Dev

포인터 A로 메모리를 해제하는 방법 (새 배치)?

분류에서Dev

libatomic 누락 오류를 해결하는 방법 또는 더 일반적으로 nodejs를 설치하는 방법

분류에서Dev

Excel-데이터를 균등하게 분산 된 학습 및 테스트 세트로 분할하는 방법

분류에서Dev

팬더 데이터 리더를 사용하여 야후 주가를 플롯하는 방법을 배우지 만 옳지 않은 것 같습니다.

분류에서Dev

학습 된 모델을로드하여 예측 데이터를 추론하는 방법

분류에서Dev

기계 학습을 사용하여 분류를 위해 가속도계 데이터를 저장하는 방법

분류에서Dev

의사 결정 트리 분류를 위해 데이터 세트의 예를 다른 배열에로드하는 방법은 무엇입니까?

분류에서Dev

모바일 장치에서 부트 스트랩 데이터 스파이를 비활성화하는 방법은 무엇입니까? (더 작은 해상도)

분류에서Dev

Spark가 데이터를 메모리에로드하는 방법

분류에서Dev

Tensorflow 클라우드 학습을 위해 학습 데이터를 Google에 업로드하는 방법

분류에서Dev

SSE2 : 연속되지 않은 메모리 위치에서 데이터를로드하는 방법?

분류에서Dev

Xcode 8.1에서이 오류 (host_statistics 반환)를 수정하는 방법은 무엇입니까? 장치의 여유 메모리를 알고 싶습니다.

분류에서Dev

Python을 사용하여 다음 미래 가치를 예측하기 위해 학습 LSTM 모델에 새 csv 파일 데이터를 추가하는 방법

분류에서Dev

메모리 부족 예외 오류를 해결하는 방법은 무엇입니까?

분류에서Dev

close ()를 해결하는 방법은 데이터베이스 오류에서 명시 적으로 호출되지 않았습니다.

분류에서Dev

TensorFlow에서 내 데이터를 사용하여 이미지를 테스트 및 학습 세트로 분할하는 방법

분류에서Dev

데이터 프레임 분할 열 값, 오류 메시지를 해결하는 방법?

분류에서Dev

메모리 오류를 방지하기 위해 VBA 매크로의 메모리를 지우는 방법은 무엇입니까?

분류에서Dev

Spark Streaming에서 새 배치에서만 (이전 학습 데이터 세트를 사용하지 않고) 모델을 다시 학습하는 방법은 무엇입니까?

분류에서Dev

C ++ 래퍼에서 C 개체 간의 상호 작용에서 발생하는 메모리 관련 오류를 해결하는 방법은 무엇입니까?

분류에서Dev

치명적인 오류를 해결하는 방법 : 잡히지 않은 오류?

분류에서Dev

UPC 런타임 오류를 해결하는 방법 : 공유 메모리 부족

분류에서Dev

pandas로 'ffill'메소드로 분할 된 fillna를 수행하는 더 좋은 방법이 있습니까?

분류에서Dev

비동기 데이터를 처리하는 더 좋고 더 짧은 방법이 있습니까?

분류에서Dev

flex / bison에 대해 더 나은 오류 메시지를 구현하는 방법

Related 관련 기사

  1. 1

    SVM 모델을 학습 한 후 감정 분류를 위해 레이블이없는 데이터를로드하는 방법은 무엇입니까?

  2. 2

    큰 데이터 세트를 반복적으로 분할하여 더 작은 데이터 세트를 행별로 가져 오는 방법

  3. 3

    tensorflow tf.contrib.learn.SVM이 학습 된 모델을 다시로드하고 예측을 사용하여 새 데이터를 분류하는 방법

  4. 4

    결합을 사용하여 데이터를 할당하는 더 좋은 방법이 있습니까?

  5. 5

    포인터 A로 메모리를 해제하는 방법 (새 배치)?

  6. 6

    libatomic 누락 오류를 해결하는 방법 또는 더 일반적으로 nodejs를 설치하는 방법

  7. 7

    Excel-데이터를 균등하게 분산 된 학습 및 테스트 세트로 분할하는 방법

  8. 8

    팬더 데이터 리더를 사용하여 야후 주가를 플롯하는 방법을 배우지 만 옳지 않은 것 같습니다.

  9. 9

    학습 된 모델을로드하여 예측 데이터를 추론하는 방법

  10. 10

    기계 학습을 사용하여 분류를 위해 가속도계 데이터를 저장하는 방법

  11. 11

    의사 결정 트리 분류를 위해 데이터 세트의 예를 다른 배열에로드하는 방법은 무엇입니까?

  12. 12

    모바일 장치에서 부트 스트랩 데이터 스파이를 비활성화하는 방법은 무엇입니까? (더 작은 해상도)

  13. 13

    Spark가 데이터를 메모리에로드하는 방법

  14. 14

    Tensorflow 클라우드 학습을 위해 학습 데이터를 Google에 업로드하는 방법

  15. 15

    SSE2 : 연속되지 않은 메모리 위치에서 데이터를로드하는 방법?

  16. 16

    Xcode 8.1에서이 오류 (host_statistics 반환)를 수정하는 방법은 무엇입니까? 장치의 여유 메모리를 알고 싶습니다.

  17. 17

    Python을 사용하여 다음 미래 가치를 예측하기 위해 학습 LSTM 모델에 새 csv 파일 데이터를 추가하는 방법

  18. 18

    메모리 부족 예외 오류를 해결하는 방법은 무엇입니까?

  19. 19

    close ()를 해결하는 방법은 데이터베이스 오류에서 명시 적으로 호출되지 않았습니다.

  20. 20

    TensorFlow에서 내 데이터를 사용하여 이미지를 테스트 및 학습 세트로 분할하는 방법

  21. 21

    데이터 프레임 분할 열 값, 오류 메시지를 해결하는 방법?

  22. 22

    메모리 오류를 방지하기 위해 VBA 매크로의 메모리를 지우는 방법은 무엇입니까?

  23. 23

    Spark Streaming에서 새 배치에서만 (이전 학습 데이터 세트를 사용하지 않고) 모델을 다시 학습하는 방법은 무엇입니까?

  24. 24

    C ++ 래퍼에서 C 개체 간의 상호 작용에서 발생하는 메모리 관련 오류를 해결하는 방법은 무엇입니까?

  25. 25

    치명적인 오류를 해결하는 방법 : 잡히지 않은 오류?

  26. 26

    UPC 런타임 오류를 해결하는 방법 : 공유 메모리 부족

  27. 27

    pandas로 'ffill'메소드로 분할 된 fillna를 수행하는 더 좋은 방법이 있습니까?

  28. 28

    비동기 데이터를 처리하는 더 좋고 더 짧은 방법이 있습니까?

  29. 29

    flex / bison에 대해 더 나은 오류 메시지를 구현하는 방법

뜨겁다태그

보관