2016-01-20 56 views
5

我已经安装了bleeding edge theano,并按照以下顺序以下软件包:Theano - Keras - 没有名为'模块pool`

gfortran:

sudo apt-get install gfortran 

OpenBLAS:

git clone https://github.com/xianyi/OpenBLAS 
cd OpenBLAS 
make FC=gfortran 
sudo make PREFIX=/usr/local install 

蟒蛇,首先下载Anaconda3-2.4.1-Linux-x86_64.sh,然后:

bash Anaconda3-2.4.1-Linux-x86_64.sh 

然后,pydot(更新后):

conda update conda 
conda update anaconda 
conda install pydot 

他们,我克隆安装Theano:

git clone git://github.com/Theano/Theano.git 
python setup.py develop 

我从windows搬到linux并得到了非常高兴,theano安装。

我运行一个小脚本,验证它确实工作正常。

from theano import function, config, shared, sandbox 
import theano.tensor as T 
import numpy as np 
import time 

vlen = 10*30*768 # assuming 30 cores and 768 threads per core 
iters = 1000 

rng = np.random.RandomState(22) 
x = shared(np.asarray(rng.rand(vlen), config.floatX)) 
f = function([], T.exp(x)) 

print (f.maker.fgraph.toposort() ) 
t0 = time.time() 
for i in range (iters): 
    r = f() 
t1 = time.time() 
print("Looping " + str(iters) + " times took " + str(t1-t0) + "seconds") 
print("Result is " + str(r)) 
if np.any([isinstance(x.op, T.Elemwise) for x in f.maker.fgraph.toposort()]): 
    print ("Used the CPU") 
else: 
    print (" Used the GPU") 

所以,这是工作,可能是一个微不足道的例子来证明一个观点。

之后,来自keras

git clone https://github.com/fchollet/keras.git 
python setup.py install 

然后我改变对keras的实例目录,只需键入

python mnist_mlp.py 

我收到以下错误:

Traceback (most recent call last): 
    File "mnist_mlp.py", line 13, in <module> 
    from keras.models import Sequential 
    File "/home/user/anaconda3/lib/python3.5/site-packages/Keras-0.3.1-py3.5.egg/keras/models.py", line 15, in <module> 
    File "/home/user/anaconda3/lib/python3.5/site-packages/Keras-0.3.1-py3.5.egg/keras/backend/__init__.py", line 46, in <module> 
    File "/home/user/anaconda3/lib/python3.5/site-packages/Keras-0.3.1-py3.5.egg/keras/backend/theano_backend.py", line 4, in <module> 
    File "/home/user/anaconda3/lib/python3.5/site-packages/Theano-0.8.0.dev0-py3.5.egg/theano/tensor/signal/downsample.py", line 2, in <module> 
    import pool 
ImportError: No module named 'pool' 

现在,到底是什么.... 我是否缺少一些包?

我觉得这不是问题keras而是问题theano

我继续尝试使坏,pip install pool,然后重新运行上面的例子,但我得到的错误:

module 'pool' has no attribute 'max_pool2D' 

我可以提供一个堆栈跟踪,以及,如果需要的话。

我已经得到theano去挣扎了很多,急切地想之前在安装整个能源水渠上手...,

+0

顺便说一句,我使用CPU, – Adorn

+2

它似乎无法编译文件theano /张量/信号/ pool.py有一个问题和修复[github](https://github.com/Theano/Theano/问题/ 3894) –

+0

@FabioFumarola键入这个答案,我很乐意接受。它解决了这个问题 – Adorn

回答

2

似乎无法编译文件theano/tensor/signal/pool.py有一个问题,并修复github