首页 文章

lazylinker_c import错误Theano

提问于
浏览
2

我遇到了一个恼人的错误 .

您可以在此临时文件中找到C代码:/ tmp / theano_compilation_error_ppkcgkmi Traceback(最近一次调用最后一次):文件“/home/ubuntu/my_project/venv/lib/python3.6/site-packages/theano/gof/lazylinker_c .py“,第75行,in raise ImportError()ImportError在处理上述异常期间,发生了另一个异常:Traceback(最近一次调用last):File”/home/ubuntu/my_project/venv/lib/python3.6/site -packages / theano / gof / lazylinker_c.py“,第92行,in raise ImportError()ImportError在处理上述异常期间,发生了另一个异常:Traceback(最近一次调用last):File”“,第1行,在File中” /home/ubuntu/my_project/venv/lib/python3.6/site-packages/theano/init.py“,第110行,来自theano.compile import(文件”/ home / ubuntu / my_project / venv / lib / python3 .6 / site-packages / theano / compile / init.py“,第12行,来自theano.compile.mode import * File”/home/ubuntu/my_project/venv/lib/python3.6/site-packages/theano /compile/mode.py“,第11行,导入theano.gof.vm F. ile“/home/ubuntu/my_project/venv/lib/python3.6/site-packages/theano/gof/vm.py”,第673行,来自 . import lazylinker_c文件“/home/ubuntu/my_project/venv/lib/python3.6/site-packages/theano/gof/lazylinker_c.py”,第127行,在preargs = args中)文件“/ home / ubuntu / my_project / venv /lib/python3.6/site-packages/theano/gof/cmodule.py“,第2359行,在compile_str中(status,compile_stderr.replace('\ n',' . ')))异常:编译失败(返回状态) = 1):/ home /ubuntu / .theano / compiledir_Linux-4.4--aws-x86_64-with-Ubuntu-16.04-xenial-x86_64-3.6.4-64/lazylinker_ext/mod.cpp:1:20:致命错误: Python.h:没有这样的文件或目录 . 编译终止..

我正在使用AWS的P2实例安装Ubuntu 16.04 .

我只想在python3.6.4上尝试 import theano

我已经多次重新安装了theano,我也安装了 MANY 其他的东西而且它不起作用 .

我有一个虚拟环境,我正在使用GPU .

我认为我的GPU-CUDA-CuNN安装得很好

>>> sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
2018-03-07 17:56:48.738855: I tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
2018-03-07 17:56:51.390598: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:898] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2018-03-07 17:56:51.390927: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1212] Found device 0 with properties:
name: Tesla K80 major: 3 minor: 7 memoryClockRate(GHz): 0.8235
pciBusID: 0000:00:1e.0
totalMemory: 11.17GiB freeMemory: 11.10GiB
2018-03-07 17:56:51.390955: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1312] Adding visible gpu devices: 0
2018-03-07 17:56:51.656494: I tensorflow/core/common_runtime/gpu/gpu_device.cc:993] Creating TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 10764 MB memory) -> physical GPU (device: 0, name: Tesla K80, pci bus id: 0000:00:1e.0, compute capability: 3.7)
Device mapping:
/job:localhost/replica:0/task:0/device:GPU:0 -> device: 0, name: Tesla K80, pci bus id: 0000:00:1e.0, compute capability: 3.7
2018-03-07 17:56:51.787214: I tensorflow/core/common_runtime/direct_session.cc:297] Device mapping:
/job:localhost/replica:0/task:0/device:GPU:0 -> device: 0, name: Tesla K80, pci bus id: 0000:00:1e.0, compute capability: 3.7

在我的本地机器上,一切都运行得很好,但是在aws实例上它存储在那里,这是我第一次遇到这个错误 .

我希望有人看到这种错误 .

EDIT

我解决了我的项目的问题,因为我只需要Tensorflow,不知何故有人从 theano 导入 np 而不是 numpy . 但是,它仍然是一个奇怪的问题,我想知道如何解决它 . 这可能是numpy的版本问题吗?

来自 lazylinker_c.py75 行只是比较两个版本 . 我不知道 .

1 回答

  • 0

    当我尝试从Python 3.5继续使用Python 3.6时,我在使用Ubuntu 16.04时遇到了同样的问题 . 最后我发现Ubuntu 16.04不包含标准的Python 3.6的C头文件,因此需要单独安装 . theano库以某种方式使用C进行某些计算 . 运行此命令:

    sudo apt-get install python3.6-dev
    

    为我解决了这个问题 .

相关问题