前提・実現したいこと
VisualStudioCodeでAnaconda仮想環境構築してtensorflow,kerasを使用したいと思い環境構築しています。
tensorflowのインストールは完了していますが、tensorflowが利用できません。。
発生している問題・エラーメッセージ
import tensorflow as tf 上記コマンドでエラー >>> import tensorflow as tf Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/__init__.py", line 24, in <module> from tensorflow.python import * File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/python/__init__.py", line 49, in <module> import numpy as np File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/numpy/__init__.py", line 142, in <module> from . import core File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/numpy/core/__init__.py", line 59, in <module> from . import numeric File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/numpy/core/numeric.py", line 3093, in <module> from . import fromnumeric File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/numpy/core/fromnumeric.py", line 17, in <module> from . import _methods File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/numpy/core/_methods.py", line 158, in <module> _NDARRAY_ARRAY_FUNCTION = mu.ndarray.__array_function__ AttributeError: type object 'numpy.ndarray' has no attribute '__array_function__'
該当のソースコード
(py36) Takenori:bin takenori$ pip list | grep tensor tensorboard 1.12.2 tensorflow 1.12.0 tensorflow-gpu 1.1.0 (py36) Takenori:bin takenori$ python3 -V Python 3.6.6 :: Anaconda, Inc. (py36) Takenori:bin takenori$ python -V Python 3.6.6 :: Anaconda, Inc. (py36) Takenori:bin takenori$ python Python 3.6.6 |Anaconda, Inc.| (default, Jun 28 2018, 11:07:29) [GCC 4.2.1 Compatible Clang 4.0.1 (tags/RELEASE_401/final)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> import tensorflow as tf Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/__init__.py", line 24, in <module> from tensorflow.python import * File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/python/__init__.py", line 49, in <module> import numpy as np File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/numpy/__init__.py", line 142, in <module> from . import core File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/numpy/core/__init__.py", line 59, in <module> from . import numeric File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/numpy/core/numeric.py", line 3093, in <module> from . import fromnumeric File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/numpy/core/fromnumeric.py", line 17, in <module> from . import _methods File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/numpy/core/_methods.py", line 158, in <module> _NDARRAY_ARRAY_FUNCTION = mu.ndarray.__array_function__ AttributeError: type object 'numpy.ndarray' has no attribute '__array_function__'
試したこと
補足情報(FW/ツールのバージョンなど)
仮想環境を抜けてAnacondaで実行するとnumpyのimportは問題なく通ります。
from . import corという箇所でエラーになっているようです
virtualenvでpip list,pip3 listしてどちらにも、numpy,tensorflow-gpu入っています。
ここにより詳細な情報を記載してください。
エラーが出るなら、エラーメッセージを提示してください
エラーを読みましたか? 失敗しているのは import numpy as np ですので、まずpythonのプロンプトから直に import numpy して同じエラーになるのか確認してください。エラーが出るようなら質問、タイトル、タグを修正することをお奨めします。特にVisualStudioCodeがなにも関係ないのがよくありません。
エラーメッセージはこちらになります。
>>> import tensorflow as tf
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/__init__.py", line 24, in <module>
from tensorflow.python import *
File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/python/__init__.py", line 49, in <module>
import numpy as np
File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/numpy/__init__.py", line 142, in <module>
from . import core
File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/numpy/core/__init__.py", line 59, in <module>
from . import numeric
File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/numpy/core/numeric.py", line 3093, in <module>
from . import fromnumeric
File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/numpy/core/fromnumeric.py", line 17, in <module>
from . import _methods
File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/numpy/core/_methods.py", line 158, in <module>
_NDARRAY_ARRAY_FUNCTION = mu.ndarray.__array_function__
AttributeError: type object 'numpy.ndarray' has no attribute '__array_function__'
回答ありがとうございます。また分かりづらくすみません。sample.pyは実行しておらず、下のターミナルで(py36というAnacondaのvirtualenv)で実行しているimport tensorflowでエラーとなっています。
import numpyでエラーになっているわけではないです。
そのメッセージをあなたは読んだのですか? 読みもせずに質問したのではないですか? と言っているのですが。
"import numpyでエラーになっているわけではないです。 " import numpy がエラーになってますよね?
AttributeError: type object 'numpy.ndarray' has no attribute '__array_function__'
がエラーメッセージだとは思っており調査はしていますが難航しています。
また途中でFile "<stdin>", line 1, in <module>なども出ていますね。
失礼しました、もう少し自分で1行1行ググってみます。
エラーの中に File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/python/__init__.py", line 49, in <module> import numpy as np という2行がありますよよね? tensorflowがnumpyをインポートしようとした時にエラーが起きています。ですから、同じ環境で import numpy とした時に同じエラーがでるはずですが、そうではないですか?
はい、確かにimport numpyコマンドを打っても同じメッセージが表示されます。
編集ありがとうございます。AnacondaやVSCodeでの実行にはなじみがないため、エラーの内容そのものにはまったく心当たりがなくお力にはなれずすみません。
import numpy 単体でもエラーになるなら、とりあえず一旦 numpy をアンインストールして、インストールし直してはどうでしょうか
ありがとうございます。
numpyの再インストールでimport numpyは通るようになりました。
ただ、tensorflowは相変わらずimportでエラーになります。。
エラー解析中です。。。
>>> import numpy
>>> import tensorflow
Traceback (most recent call last):
File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow.py", line 41, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in <module>
_pywrap_tensorflow_internal = swig_import_helper()
File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 24, in swig_import_helper
_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
File "/Applications/anaconda3/envs/py36/lib/python3.6/imp.py", line 243, in load_module
return load_dynamic(name, filename, file)
File "/Applications/anaconda3/envs/py36/lib/python3.6/imp.py", line 343, in load_dynamic
return _load(spec)
ImportError: dlopen(/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/python/_pywrap_tensorflow_internal.so, 10): Library not loaded: @rpath/libcublas.8.0.dylib
Referenced from: /Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/python/_pywrap_tensorflow_internal.so
Reason: image not found
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/__init__.py", line 24, in <module>
from tensorflow.python import *
File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/python/__init__.py", line 51, in <module>
from tensorflow.python import pywrap_tensorflow
File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow.py", line 52, in <module>
raise ImportError(msg)
ImportError: Traceback (most recent call last):
File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow.py", line 41, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in <module>
_pywrap_tensorflow_internal = swig_import_helper()
File "/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 24, in swig_import_helper
_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
File "/Applications/anaconda3/envs/py36/lib/python3.6/imp.py", line 243, in load_module
return load_dynamic(name, filename, file)
File "/Applications/anaconda3/envs/py36/lib/python3.6/imp.py", line 343, in load_dynamic
return _load(spec)
ImportError: dlopen(/Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/python/_pywrap_tensorflow_internal.so, 10): Library not loaded: @rpath/libcublas.8.0.dylib
Referenced from: /Applications/anaconda3/envs/py36/lib/python3.6/site-packages/tensorflow/python/_pywrap_tensorflow_internal.so
Reason: image not found
Failed to load the native TensorFlow runtime.
See https://www.tensorflow.org/install/install_sources#common_installation_problems
for some common reasons and solutions. Include the entire stack trace
above this error message when asking for help.
>>>
libcublas.8.0 とか CUDA 関係のライブラリの読み込みに失敗しているのではないでしょうか?
TensorFlow が要求する CUDA のライブラリがインストールされているか確認してください。(CUDA もバージョンが複数あるので、バージョンまで一致している必要があります。)
この場合、CUDA 8 が要求されているように見えます。
そのようですね。ありがとうございます。
いったんtensorflow-gpuをアンインストールすることでimportできるようになりました。
回答1件
あなたの回答
tips
プレビュー