티스토리 뷰

>>> import tensorflow as tf
ModuleNotFoundError: No module named 'numpy.core._multiarray_umath'
ImportError: numpy.core.multiarray failed to import

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "<frozen importlib._bootstrap>", line 968, in _find_and_load
SystemError: <class '_frozen_importlib._ModuleLockManager'> returned a result with an error set
ImportError: numpy.core._multiarray_umath failed to import
ImportError: numpy.core.umath failed to import
2019-04-19 16:29:29.263208: F tensorflow/python/lib/core/bfloat16.cc:675] Check failed: PyBfloat16_Type.tp_base != nullptr
Abort trap: 6

오픈소스 프로젝트를 진행하기 위해 콘다 가상환경에 소스코드를 GitHub에서 내려받고 requirements.txt의 설치를 진행했습니다.

pip install -r requirements.txt

이제 학습을 위해 Train 을 진행한 순간 에러가 발생했는데요, 의아해서 python 프롬프트로 접속해서 tensorflow 를 import 해보니 위와 같은 에러가 발생을 하네요. 설치된 numpy와 tensorflow의 버전 호환문제로 생각되는데 requirements.txt의 내용을보면 다음과 같습니다.

...
tensorflow
numpy==1.13.3
...

numpy는 버전이 명시되어 있는 반면에 tensorflow는 버전이 따로 명시되어 있지 않네요. 그렇기 때문에 tensorflow는 stable한 최신버전이 설치되었고 호환성에서 문제가 발생되었습니다. 이 문제의 해결방법은 간단합니다. numpy를 삭제하고 다시 설치해주면 되겠죠

pip uninstall numpy
pip install numpy

이런 문제를 미연에 방지하기 위해서는 requirements.txt 를 작성할 때 신경써야겠습니다.

댓글
댓글쓰기 폼