2016-01-20 15 views
5

Ho installato un bleeding edge theano, e le seguenti pacchetti in seguente ordine:Theano - Keras - Nessun modulo chiamato `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 

Anaconda , prima scaricato Anaconda3-2.4.1-Linux-x86_64.sh, e quindi:

bash Anaconda3-2.4.1-Linux-x86_64.sh 

Poi, pydot (dopo l'aggiornamento):

conda update conda 
conda update anaconda 
conda install pydot 

li ho clonato e installato Theano:

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

mi sono trasferito windows-linux e ottenuto molto felice che Theano è installato.

Eseguo un piccolo script per verificare che funzioni correttamente.

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") 

Quindi, funziona, può essere un esempio banale per dimostrare un punto.

Dopo di che, viene keras

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

Poi cambio di esempi directory di keras, e semplicemente digitare

python mnist_mlp.py 

ottengo il seguente errore:

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' 

Ora , che diavolo ... Mi manca qualche pacchetto?

credo che questo non è un problema di keras ma piuttosto problema con theano.

sono andato avanti e ho cercato uno sporco trucco, pip install pool, ed eseguire nuovamente l'esempio di cui sopra, ma ho l'errore:

module 'pool' has no attribute 'max_pool2D' 

io in grado di fornire una traccia dello stack e, se necessario.

ho lottato molto per ottenere theano andare, ardentemente desidera iniziare ... prima di interi canali di scolo di energia negli impianti,

+0

btw, sto usando CPU, – Adorn

+2

Sembra che non possa compilare il file theano/tensor/signal/pool.py vi è un problema e correzione su [github] (https://github.com/Theano/Theano/ issues/3894) –

+0

@FabioFumarola scrivilo come risposta, sarei felice di accettare. Risolve il problema – Adorn

risposta

2

sembra che non può compilare il file theano/tensor/signal/pool.py c'è un problema e fissare sulla github