我尝试在我的ubuntu 14.04 64位机器上安装tensorflow:
sudo pip2 install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.6.0-cp27-none-linux_x86_64.whl
对于python 2.7
当我在控制台中运行 import tensorflow as tf
时,我收到错误
导入tensorflow时出错 . 除非您使用bazel,否则不应尝试从其源目录导入tensorflow;请退出tensorflow源代码树,然后从那里重新启动python解释器 .
谷歌没有提供一个很好的答案,任何想法?
12 回答
如果你在tensorflow的源代码树内部工作时启动python,你会看到这个问题 . (无论你在哪里克隆git存储库)当你运行“import tensorflow”(你的目录中的那个或系统安装了一个)时,Python会对导入什么感到困惑 . 这就是错误消息试图说的内容 .
只需更改到您的主目录,或新的空目录,它应该工作 .
我建议你使用Anaconda,它对ML和数据科学工作非常有帮助 .
在终端中键入命令
python
之前,您的工作区不应该是包含tensorflow-0.6.0-cp27-none-linux_x86_64.whl的目录 . 即你的工作区应该与tensorflow-0.6.0-cp27-none-linux_x86_64.whl所在的目录不同 .我建议使用Anaconda . 它可以轻松安装所需的所有依赖项(大多数都是自动安装的),并且有多个选项可用于安装tensorflow .
要么
问题在于您的tensorflow安装版本和环境配置 . 我也面临同样的问题,因为我已经为Python版本3.5安装了tensorflow,而我的系统有3.6 .
为您的安装选择正确的轮子 . https://pypi.python.org/pypi/tensorflow
它应该工作 .
当您位于tensorflow源目录中时,无法导入tensorflow . 在运行python之前首先更改目录,即
cd ..
.我已经强调了错误的关键部分:“导入tensorflow时出错 . 除非你使用bazel, you should not try to import tensorflow from its source directory ;请退出tensorflow源代码树,然后从那里重新启动你的python解释器 . ”
我遇到了类似的问题 . 错误消息还包含行"ImportError: No module named google.protobuf" . 如上所述:https://github.com/tensorflow/tensorflow/issues/1415,此问题的解决方法是在tensorflow / google目录中创建一个空的__init_.py文件,您还应该有protobuf文件夹 . 希望这可以帮助 .
强烈建议你使用virtualenv . 我一直在安装tensorflow及其依赖项数周,直到我了解virtualenv . 您可以按照官方教程安装它 . (https://www.tensorflow.org/versions/r0.9/get_started/os_setup.html)它附带了您可能使用的所有库 . 此外,您可以在Python IDE中修改您的环境 . 那么你每次使用它都不需要主动和无效的virtualenv . 非常方便!
跟着这些步骤:
然后运行python . 它应该工作 .
我遇到了类似的问题,事实证明这是因为没有达到protobuf依赖,或者protobuf存在问题 . 我会卸载protobuf:
然后重新安装:
如果这不起作用,请尝试卸载并重新安装protobuf和tensorflow . 如果您从源代码构建,check out this issue on GitHub
如果您不熟悉python但是从源代码安装tensorflow,那将是非常痛苦的 . 你不能从tensorflow目录导入tensorflow . 如果退出TENSORFLOW_ROOT,它应该可以工作 .
它显示了这种错误,因为tensorflow不支持你安装的python s / w . 因此,卸载以前版本的python并转到
tensorflow
安装文档,然后安装指定的python软件 .