2016-01-20 8 views
5

ich ein bleeding edge theano installiert habe und die folgenden Pakete in folgenden Reihenfolge:Theano - Keras - Kein Modul namens `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 zuerst heruntergeladene Anaconda3-2.4.1-Linux-x86_64.sh und dann:

bash Anaconda3-2.4.1-Linux-x86_64.sh 

Dann pydot (nach dem Update):

conda update conda 
conda update anaconda 
conda install pydot 

Them I kloniert und Theano installiert:

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

ich windows-linux bewegt und bekam sehr glücklich, dass Theanos installiert ist.

Ich führe ein kleines Skript, um zu überprüfen, ob es tatsächlich funktioniert.

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

So, es funktioniert, kann ein triviales Beispiel sein, um einen Punkt zu beweisen.

Danach kommt keras

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

Dann habe ich auf Beispiele Verzeichnis von keras ändern, und geben Sie einfach in

python mnist_mlp.py 

ich die folgende Fehlermeldung erhalten:

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' 

Jetzt , was zur Hölle .... Fehle ich etwas Paket?

Ich denke, das ist keine Ausgabe von keras sondern Problem mit theano.

Ich ging weiter und versuchte, einen schmutzigen Trick, pip install pool und dann erneut aus dem obigen Beispiel, aber ich habe den Fehler:

module 'pool' has no attribute 'max_pool2D' 

ich auch einen Stack-Trace zur Verfügung stellen kann, wenn nötig.

ich viel in immer theano gehen zu kämpfen haben, wollen eifrig, um loszulegen ... vor gesamte Energie Abflüsse in den Anlagen,

+0

BTW, ich benutze CPU, – Adorn

+2

Es scheint, es kann nicht kompilieren die Datei Theano/Tensor/Signal/Pool.py gibt es ein Problem und beheben Sie [GitHub] (https://github.com/Theano/Theano/ Probleme/3894) –

+0

@FabioFumarola geben Sie dies als eine Antwort, ich würde mich freuen zu akzeptieren. Es löst das Problem – Adorn

Antwort

2

Es scheint es die Datei nicht kompilieren kann theano/tensor/signal/pool.py gibt es ein Problem und legen Sie auf github