2015-11-09 8 views
59

Ich habe nichts über Windows-Kompatibilität gesehen - ist das irgendwo unterwegs oder zur Zeit verfügbar, wenn ich mir etwas Mühe gebe? (Ich habe einen Mac und eine Ubuntu-Box, aber die Windows-Maschine ist diejenige mit der diskreten Grafikkarte, die ich derzeit mit theano verwende).Ist Tensorflow mit einem Windows-Workflow kompatibel?

Antwort

62

Aktualisiert 28/11/2016: Heute haben wir den ersten Release Candidate von TensorFlow 0.12 veröffentlicht, der Unterstützung für Windows enthält. Sie können die Python-Anbindung mit dem folgenden Befehl in einer Python-Shell installieren:

C:\> pip install tensorflow 

... oder, wenn Sie GPU-Unterstützung wünschen:

C:\> pip install tensorflow-gpu 

Sie können auch bauen TensorFlow sich Microsoft Visual C++ und NVCC (für die CUDA-Teile). Der einfachste Weg, unter Windows zu bauen, ist derzeit die Verwendung der CMake build, und wir werden bald Unterstützung für Bazel on Windows bieten.


Zurück Antwort: Wir haben nicht so weit zu bauen TensorFlow auf Windows versucht: die einzigen unterstützten Plattformen sind Linux (Ubuntu) und Mac OS X, und wir haben nur Binärdateien für diese Plattformen gebaut.

Vorerst auf Windows, der einfachste Weg, mit TensorFlow zu beginnen wäre die Verwendung Docker: für die Unterstützung http://tensorflow.org/get_started/os_setup.md#docker-based_installation

Es sollte einfacher werden, hinzuzufügen Windows-Unterstützung, wenn Bazel (die Build-System, das wir verwenden) ergänzt Aufbau auf Windows, das ist on the roadmap for Bazel 0.3. Sie können the full Bazel roadmap here sehen. In der Zwischenzeit können Sie issue 17 on the TensorFlow GitHub page folgen.

+0

Docker 4tw !! : D – cregox

+5

Ich möchte nur für andere Leute hinzufügen, da es nicht von einer der vorherigen Antworten angesprochen wird, können Sie keine GPU-Unterstützung unter Windows mit Docker (afaik) haben, so gibt es keinen guten Weg, GPU-Unterstützung zu haben, bis es einen nativen Build gibt von TensorFlow für Windows. – Steve

+0

Python 3.5 und Cuda 8.0 ist erforderlich. Beide können in einer Umgebung in Anaconda installiert werden. –

4

Eine andere Möglichkeit, es unter Windows auszuführen, ist beispielsweise die Installation von Vmware (eine kostenlose Version, wenn Sie es nicht kommerziell verwenden), die Installation von Ubuntu Linux und die anschließende Installation von TensorFlow unter Verwendung der Linux-Anweisungen. Das ist, was ich gemacht habe, es funktioniert gut.

+0

Ist es möglich, etwas auf der GPU von einer virtuellen Maschine zu verarbeiten? Lassen Sie mich eine andere Frage stellen, ist Vmware besser als VirtualBox? –

+0

@FelipeOriani Das letzte Mal, das ich überprüft habe (Juli 2015), war es nicht möglich, CUDA-Arbeit über eine VM zu erledigen, da der Zugriff auf die echten PCE-Geräte aus der virtuellen Maschinenabstraktion nicht trivial ist. Ich habe gehört, dass dies etwas ist, was in Zukunft möglich sein könnte, aber ich habe es bis jetzt noch nicht wirklich geschafft. – user2805751

12

Wie @mrry vorgeschlagen hat, ist es einfacher, TensorFlow mit Docker einzurichten. Hier ist, wie ich es eingerichtet habe und iPython Notebook in meiner Docker-Umgebung zum Laufen gebracht habe (ich finde es sehr praktisch, iPython Notebook für alle Testzwecke zu verwenden und meine Experimente zu dokumentieren).

Ich nehme an, dass Sie sowohl Docker und Boot2docker für Windows hier installiert haben.

docker run -dit -v /c/Users/User/:/media/disk -p 8888:8888 b.gcr.io/tensorflow/tensorflow:latest 

/c/Users/User/ Ersetzen mit einem Pfad in Ihrem Host, den Sie wünschen:

Zuerst laufen TensorFlow Docker auf Daemon und es so Jupyter Server (ipython Notebook) einrichten können von Ihrem Haupt-Windows-System des Browsers zugegriffen werden mount dh, wo Sie Ihre iPython-Dateien behalten können. Ich weiß nicht, wie Sie es auf andere Laufwerke als C :, lassen Sie mich wissen, wenn Sie tun. /media/disk ist der Speicherort in Ihrem TensorFlow-Andockfenster, in dem Ihr Hostpfad installiert ist.

-p 8888:8888 bedeutet im Grunde "Karte Port 8888 in Docker zu 8888 in Host-Verzeichnis". Sie können den zweiten Teil zu anderen Häfen ändern, wenn Sie wünschen.

Wenn Sie es wurde ausgeführt wird, können Sie darauf zugreifen, indem Sie den folgenden Code ausführen:

docker ps 

So starten Sie Ihre ipython:

docker exec -ti [docker-id] bash 

Wo [Docker-id] kann durch Ausführen finden Notebook-Server aus TensorFlow Andockfenster, führen Sie den folgenden Befehl:

ipython notebook --ip='*' 

Um Ipython se zu ermöglichen rver, um alle IP zu hören, so dass Ihre App von Host-Maschine zugänglich sein kann.

Anstatt Ihre App in http://localhost:8888 anzuzeigen, können Sie sie nur in http://[boot2docker-ip]:8888 anzeigen. Um boot2docker-ip laufen diese in Ihrem Terminal (nicht boot2docker Terminal):

boot2docker ip 
+0

Hmm, eigentlich hat es bei mir nur auf Windows 10 funktioniert, nein muss. Docker einfach installieren, Schnellstart ausführen, das Tensorflow-Andockfenster ausführen und die Convolution.py ausführen. Kein Problem! Ich benutze den neuesten Docker/neueste virtuelle Box, wenn das hilft. Jetzt versuchen Sie, GPU hier zu gehen: https://github.com/tensorflow/tensorflow/tree/master/tensorflow/tools/docker – Blaze

+0

Das oben genannte ist für, wenn Sie ipython Notebook-Server in Ihrem Andockbehälter laufen lassen möchten, der von Ihrem Wirt zugänglich ist Browser und/oder wenn Sie es auf einem productoon-Server als Daemon-Prozess ausführen möchten. – jaycode

+1

Gotcha. Übrigens ist der Befehl, der mit Docker Quick Start verwendet werden soll, etwas anders (aber Jaycode steht für Inspiration) docker run -dit -v // c/temp /:/media/disk -p 8888: 8888 b.gcr.io/Tensorflow/Tensorflow: next Nicht die "//" Schrägstriche statt einer. Verwenden Sie docker-machine ip default (verwenden Sie docker-machine ls, um das herauszufinden), um die IP-Adresse herauszufinden. Wenn jemand weiß, wie GPU funktioniert, wäre das großartig. Ich warte immer noch auf Nvidia, um mir Zugriff zu geben – Blaze

4

TensorFlow wird nicht von Windows an dieser Stelle unterstützen, aber Windows hat sich geändert. Windows 10 Build 14432 enthält bash.

können Sie die Build-Download von https://www.microsoft.com/en-us/software-download/windowsinsiderpreviewadvanced

enter image description here

Nach der Installation bash einfach installieren/aktivieren und bash in cmd eingeben. Das ist es.

enter image description here (Das Bild ist von https://blogs.windows.com/windowsexperience/2016/04/06/announcing-windows-10-insider-preview-build-14316/)

Dann laufen diese (Python bereits installiert ist):

sudo apt-get install python-pip python-dev 
sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.8.0-cp27-none-linux_x86_64.whl 

Glückliche tensorflowing in Windows!

+0

Hat diese Route Vorteile von der GPU-Unterstützung unter Windows? Ich würde wirklich gerne Windows mit TensorFlow verwenden, aber nur wenn die GPU auf – WearyWanderer

+1

@WearyWanderer geht. Auf diese Weise scheint es, dass GPU noch nicht unterstützt wird. Ich bin sicher, MS wird das beheben. –

3

erste Unterstützung für den Aufbau von TensorFlow auf Microsoft Windows auf 2016.10.05 hinzugefügt wurde begehen d0d975f8c3330b5402263b2356b038bc8af919a2:

Diese PR enthält eine erste Version der Unterstützung für den Aufbau von TensorFlow (nur CPU) auf Windows CMake mit . Es enthält Dokumentation für Gebäude mit CMake unter Windows, plattformspezifischen Code für Implementierung von Kernfunktionen unter Windows, und CMake Regeln für den Aufbau des C++ Beispieltrainer-Programm und ein PIP-Paket (nur Python 3.5) . Die CMake-Regeln unterstützen die Erstellung von TensorFlow mit Visual Studio 2015.

Windows-Unterstützung ist eine Arbeit in Arbeit, und wir freuen uns auf Ihr Feedback und Beiträge.

Für vollständige Informationen über die Merkmale derzeit unterstützten und Anweisungen , wie TensorFlow unter Windows finden Sie in der Datei tensorflow/contrib/cmake/README.md zu bauen.

Since 2016-10-20, GPU is supported.

1

TensorFlow ist jetzt offiziell unter Windows verfügbar!

TensorFlow erstellt und läuft jetzt unter Microsoft Windows (getestet unter Windows 10, Windows 7 und Windows Server 2016). Unterstützte Sprachen sind Python (über ein Pip-Paket) und C++. CUDA 8.0 und cuDNN 5.1 werden für GPU-Beschleunigung unterstützt. Zu den bekannten Einschränkungen gehören: Es ist derzeit nicht möglich, eine benutzerdefinierte op-Bibliothek zu laden ( ). Die GCS- und HDFS-Datei Systeme werden derzeit nicht unterstützt. Folgende ops sind nicht derzeit umgesetzt: DepthwiseConv2dNative, DepthwiseConv2dNativeBackpropFilter, DepthwiseConv2dNativeBackpropInput, dequantisieren, Digamma, Erf, Erfc, IGamma, Igammac, Lgamma, Polygamma, QuantizeAndDequantize, QuantizedAvgPool, QuantizedBatchNomWithGlobalNormalization, QuantizedBiasAdd, QuantizedConcat, QuantizedConv2D, QuantizedMatmul, QuantizedMaxPool, QuantizeDownAndShrinkRange, QuantizedRelu, QuantizedRelu6, QuantizedReshape, QuantizeV2, RequantizationRange und Requantize.

Verwandte Themen