Keras:에러
둘러보기로 가기
검색하러 가기
1 개요
케라스를 사용하다 발생하는 에러들을 모아둔 문서이다.
1.1 InternalError: stream did not block host until done; was already in an error state
쥬피터노트북을 사용할 때 나오는 에러인데, 간단하다. 쥬피터노트북을 재시작하면 해결.
1.2 InternalError: Failed to call ThenRnnForward with model config: [rnn_mode, rnn_input_mode, rnn_direction_mode]:
아마 데이터가 너무 커서 발생하는 에러.
이외.. 모델이 너무 크면 커널을 죽이기도 하던데.. 이건 딱히 뜨는 에러가 없어 모르겠다;;
1.3 AttributeError: module 'keras.utils' has no attribute 'Sequence'
제너레이터를 사용하기 위해 Sequence를 불러올 때, keras.utils.Sequence
로 불러오는데... 에러의 원인은 모르겠다.. 버전문제인 듯한데.. 두 가지 방법이 있다.
- 버전이 낮은 경우 : pip install keras --upgrade
keras.utils.all_utils.Sequence
로 불러오기.from keras.utils.all_utils import Sequence
형태로 부르기.
1.4 Function call stack: train_function error
아마 메모리 사용량이 너무 클 때 나타나는 에러인듯. 아래 에러도 비슷한 이유에서 나타나는 듯하다.
I tensorflow/core/common_runtime/bfc_allocator.cc:1040] Next region of size 숫자.
2 GPU 관련
2.1 WARNING:tensorflow:Layer lstm will not use cuDNN kernels since it doesn't meet the criteria. It will use a generic GPU kernel as fallback when running on GPU.
몇몇 조건에 의해 GPU 사용이 안될 때 나타나는 에러이다. 단순히 GPU 사용이 안된다는 건데, 큰 메모리를 사용하는 딥러닝의 특성 상 이 에러가 뜨면 실패 확정이라 보면 된다.
다음과 같은 시도가 가능하다.
- recurrent_dropout 옵션 없애기.
- 활성화 함수를 ReLU 대신 다른 것 사용해보기.