Ich habe einen rekursiven Autoencoder mit Theano implementiertund testete es sowohl unter Linux als auch unter Windows. Es dauerte ~ 3 Stunden, 2,3 G Arbeitsspeicher unter Linux und ~ 9 Stunden, 0,5 G Arbeitsspeicher unter Windows. config.allow_gc = True für beide Fälle.
Es könnte sich um ein Python-Problem handeln, wie im Thread erläutert: Warum ist Python unter Windows so viel langsamer?
Gibt es in Theano eine bestimmte Einstellung, die auch unter Windows die Dinge verlangsamen könnte?
Vielen Dank,
Ya
Antworten:
1 für die Antwort № 1Es kann sein, dass sie unterschiedliche BLAS-Librairien verwenden. Autoencoder-Engpass ist das Matrixprodukt, das BLAS genannt wird. Unterschiedliche BLAS-Implementierungen können bis zu 10-fache Geschwindigkeitsunterschiede aufweisen.
Überprüfen Sie also, ob Sie das gleiche BLAS verwendet haben. Ich würde empfehlen, Python über EPD / Canopy oder Anaconda Python-Pakete zu installieren. Es gibt keine kostenlose Version, die zu einem guten Blas verlinkt und Theano wiederverwendet. Die jetzt kostenlose Version ist für akademische Zwecke kostenlos.