- Build from source on Windows
- Setup for Windows
- Install Python and the TensorFlow package dependencies
- Install Bazel
- Install MSYS2
- Install Visual C++ Build Tools 2019
- Install GPU support (optional)
- Download the TensorFlow source code
- Configure the build
- View sample configuration session
- Configuration options
- Build the pip package
- TensorFlow 2.x
- TensorFlow 1.x
- CPU-only
- GPU support
- Bazel build options
- Build the package
- Install the package
- Build using the MSYS shell
- Disable MSYS path conversion
- Set your PATH
- Tested build configurations
- Как установить TensorFlow на Windows?
- 11 ответов
- Предыдущий ответ
- Оригинальный ответ
- Решение
- Установка TensorFlow
- Тестирование TensorFlow
- Ограничения TensorFlow в Windows
Build from source on Windows
Build a TensorFlow pip package from source and install it on Windows.
Setup for Windows
Install the following build tools to configure your Windows development environment.
Install Python and the TensorFlow package dependencies
Install a Python 3.6.x 64-bit release for Windows. Select pip as an optional feature and add it to your %PATH% environmental variable.
Install the TensorFlow pip package dependencies:
The dependencies are listed in the setup.py file under REQUIRED_PACKAGES .
Install Bazel
Install Bazel, the build tool used to compile TensorFlow. For Bazel version, see the tested build configurations for Windows. Configure Bazel to build C++.
Add the location of the Bazel executable to your %PATH% environment variable.
Install MSYS2
Install MSYS2 for the bin tools needed to build TensorFlow. If MSYS2 is installed to C:\msys64 , add C:\msys64\usr\bin to your %PATH% environment variable. Then, using cmd.exe , run:
Install Visual C++ Build Tools 2019
Install the Visual C++ build tools 2019. This comes with Visual Studio 2019 but can be installed separately:
Install GPU support (optional)
See the Windows GPU support guide to install the drivers and additional software required to run TensorFlow on a GPU.
Download the TensorFlow source code
Use Git to clone the TensorFlow repository ( git is installed with MSYS2):
The repo defaults to the master development branch. You can also checkout a release branch to build:
Configure the build
Configure your system build by running the following at the root of your TensorFlow source tree:
This script prompts you for the location of TensorFlow dependencies and asks for additional build configuration options (compiler flags, for example). The following shows a sample run of python ./configure.py (your session may differ):
View sample configuration session
Configuration options
For GPU support, specify the versions of CUDA and cuDNN. If your system has multiple versions of CUDA or cuDNN installed, explicitly set the version instead of relying on the default. ./configure.py creates symbolic links to your system’s CUDA libraries—so if you update your CUDA library paths, this configuration step must be run again before building.
Build the pip package
TensorFlow 2.x
tensorflow:master repo has been updated to build 2.x by default. Install Bazel and use bazel build to create the TensorFlow package.
TensorFlow 1.x
To build the 1.x version of TensorFlow from master, use bazel build —config=v1 to create a TensorFlow 1.x package.
CPU-only
Use bazel to make the TensorFlow package builder with CPU-only support:
GPU support
To make the TensorFlow package builder with GPU support:
Bazel build options
Use this option when building to avoid issue with package creation: tensorflow:issue#22390
Building TensorFlow from source can use a lot of RAM. If your system is memory-constrained, limit Bazel’s RAM usage with: —local_ram_resources=2048 .
If building with GPU support, add —copt=-nvcc_options=disable-warnings to suppress nvcc warning messages.
Build the package
The bazel build command creates an executable named build_pip_package —this is the program that builds the pip package. For example, the following builds a .whl package in the C:/tmp/tensorflow_pkg directory:
Although it is possible to build both CUDA and non-CUDA configs under the same source tree, we recommend running bazel clean when switching between these two configurations in the same source tree.
Install the package
The filename of the generated .whl file depends on the TensorFlow version and your platform. Use pip3 install to install the package, for example:
Build using the MSYS shell
TensorFlow can also be built using the MSYS shell. Make the changes listed below, then follow the previous instructions for the Windows native command line ( cmd.exe ).
Disable MSYS path conversion
MSYS automatically converts arguments that look like Unix paths to Windows paths, and this doesn’t work with bazel . (The label //path/to:bin is considered a Unix absolute path since it starts with a slash.)
Set your PATH
Add the Bazel and Python installation directories to your $PATH environmental variable. If Bazel is installed to C:\tools\bazel.exe , and Python to C:\Python36\python.exe , set your PATH with:
For GPU support, add the CUDA and cuDNN bin directories to your $PATH :
Tested build configurations
Version | Python version | Compiler | Build tools |
---|---|---|---|
tensorflow-2.4.0 | 3.6-3.8 | MSVC 2019 | Bazel 3.1.0 |
tensorflow-2.3.0 | 3.5-3.8 | MSVC 2019 | Bazel 3.1.0 |
tensorflow-2.2.0 | 3.5-3.8 | MSVC 2019 | Bazel 2.0.0 |
tensorflow-2.1.0 | 3.5-3.7 | MSVC 2019 | Bazel 0.27.1-0.29.1 |
tensorflow-2.0.0 | 3.5-3.7 | MSVC 2017 | Bazel 0.26.1 |
tensorflow-1.15.0 | 3.5-3.7 | MSVC 2017 | Bazel 0.26.1 |
tensorflow-1.14.0 | 3.5-3.7 | MSVC 2017 | Bazel 0.24.1-0.25.2 |
tensorflow-1.13.0 | 3.5-3.7 | MSVC 2015 update 3 | Bazel 0.19.0-0.21.0 |
tensorflow-1.12.0 | 3.5-3.6 | MSVC 2015 update 3 | Bazel 0.15.0 |
tensorflow-1.11.0 | 3.5-3.6 | MSVC 2015 update 3 | Bazel 0.15.0 |
tensorflow-1.10.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.9.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.8.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.7.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.6.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.5.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.4.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.3.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.2.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.1.0 | 3.5 | MSVC 2015 update 3 | Cmake v3.6.3 |
tensorflow-1.0.0 | 3.5 | MSVC 2015 update 3 | Cmake v3.6.3 |
Version | Python version | Compiler | Build tools | cuDNN | CUDA |
---|---|---|---|---|---|
tensorflow_gpu-2.4.0 | 3.6-3.8 | MSVC 2019 | Bazel 3.1.0 | 8.0 | 11.0 |
tensorflow_gpu-2.3.0 | 3.5-3.8 | MSVC 2019 | Bazel 3.1.0 | 7.6 | 10.1 |
tensorflow_gpu-2.2.0 | 3.5-3.8 | MSVC 2019 | Bazel 2.0.0 | 7.6 | 10.1 |
tensorflow_gpu-2.1.0 | 3.5-3.7 | MSVC 2019 | Bazel 0.27.1-0.29.1 | 7.6 | 10.1 |
tensorflow_gpu-2.0.0 | 3.5-3.7 | MSVC 2017 | Bazel 0.26.1 | 7.4 | 10 |
tensorflow_gpu-1.15.0 | 3.5-3.7 | MSVC 2017 | Bazel 0.26.1 | 7.4 | 10 |
tensorflow_gpu-1.14.0 | 3.5-3.7 | MSVC 2017 | Bazel 0.24.1-0.25.2 | 7.4 | 10 |
tensorflow_gpu-1.13.0 | 3.5-3.7 | MSVC 2015 update 3 | Bazel 0.19.0-0.21.0 | 7.4 | 10 |
tensorflow_gpu-1.12.0 | 3.5-3.6 | MSVC 2015 update 3 | Bazel 0.15.0 | 7.2 | 9.0 |
tensorflow_gpu-1.11.0 | 3.5-3.6 | MSVC 2015 update 3 | Bazel 0.15.0 | 7 | 9 |
tensorflow_gpu-1.10.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.9.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.8.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.7.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.6.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.5.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.4.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 6 | 8 |
tensorflow_gpu-1.3.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 6 | 8 |
tensorflow_gpu-1.2.0 | 3.5-3.6 | MSVC 2015 update 3 | Cmake v3.6.3 | 5.1 | 8 |
tensorflow_gpu-1.1.0 | 3.5 | MSVC 2015 update 3 | Cmake v3.6.3 | 5.1 | 8 |
tensorflow_gpu-1.0.0 | 3.5 | MSVC 2015 update 3 | Cmake v3.6.3 | 5.1 | 8 |
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Как установить TensorFlow на Windows?
Я начинаю работать с библиотекой TensorFlow для глубокого обучения, https://www.tensorflow.org/.
Я нашел явное руководство по работе над ним на Linux и Mac, но я не нашел, как работать с ним под Windows. Я пробую через сеть, но информации не хватает.
Я использую Visual Studio 2015 для своих проектов, и я пытаюсь скомпилировать библиотеку с Visual Studio Compiler VC14.
Как установить его и использовать в Windows?
Можно ли использовать Bazel для Windows для производства?
11 ответов
Как установить TensorFlow и использовать его под Windows?
Обновлено 8/4/16
В Windows 10 теперь есть Ubuntu Bash среда, AKA Bash в Ubuntu в Windows, доступный как стандартный вариант (в отличие от Обновления предварительного просмотра для разработчиков). (Тег StackOverflow wsl) Этот параметр появился с обновлением Windows 10 годов ( Версия 1607), выпущенная 8/2/2016. Это позволяет использовать apt-get для установки пакетов программного обеспечения, таких как Python и TensorFlow.
Примечание: Bash на Ubuntu в Windows не имеет доступа к графическому процессору, поэтому все опции GPU для установки TensorFlow не будут работать.
Относящиеся инструкции по установке для Bash в Ubuntu на Windows в основном правильны, но необходимы только эти шаги:
Предпосылки
Включить функцию подсистемы Windows для Linux (GUI)
Перезагрузка при появлении запроса
Запустите Bash в Windows
Шаги больше не нужны:
Включить режим разработчика
Включить функцию подсистемы Windows для Linux (командной строки)
Затем установите TensorFlow, используя apt-get
и теперь проверьте TensorFlow
и запустить реальную нейронную сеть
Предыдущий ответ
После ознакомления с предварительным просмотром разработчика Bash в Windows.
См. Игра с TensorFlow в Windows от Scott Hanselman, который использует Bash в Windows 10
Оригинальный ответ
Проблема с Bazel
TensorFlow не создан с средствами автоматизации построения, такими как make, но с встроенным инструментом Google Bazel. Bazel работает только в системах на основе Unix, таких как Linux и OS X.
Поскольку текущее опубликованное/известное средство для создания TensorFlow использует Bazel, а Bazel не работает в Windows, нельзя установить или запустить TensorFlow изначально на Windows.
Из-за своего наследия UNIX перенос Bazel на Windows значителен Работа. Например, Bazel широко использует символические ссылки, которые меняются уровни поддержки в версиях Windows.
В настоящее время мы активно работаем над улучшением поддержки Windows, но он по-прежнему не может быть использован.
Решение
Решения перечислены в порядке сложности и требуемой работы; от примерно часа до может даже не работать.
Docker — это система для создания автономных версий операционной системы Linux, работающих на вашем компьютере. Когда вы устанавливаете и запускаете TensorFlow через Docker, он полностью изолирует установку от уже существующих пакетов на вашем компьютере.
Если у вас есть текущая Mac, работающая под управлением ОС X, то смотрите: Установка для Mac OS X
Загрузите и установите виртуальную машину, например, коммерческую VMware или бесплатную Virtual Box, после чего вы можете установить Linux, а затем установить TensorFlow.
Когда вы перейдете к установке TensorFlow, вы будете использовать Pip- Система управления пакетами Python. Пользователи Visual Studio должны думать о NuGet. Пакеты известны как wheels.
Если вам нужно построить из источника, см. ниже: Установка из источников
Примечание. Если вы планируете использовать виртуальную машину и никогда раньше этого не делали, подумайте об использовании опции Docker, поскольку Docker — это виртуальная машина, ОС и TensorFlow, все упакованные вместе.
Если вы хотите запустить TensorFlow на том же компьютере, на котором установлена Windows, и использовать версию GPU, вам, скорее всего, придется использовать этот параметр как работающий на виртуальной машине, гипервизор 2 типа, не позволит вам получить доступ к графическому процессору.
Если у вас есть удаленный доступ к другому компьютеру, на котором вы можете установить программное обеспечение Linux и TensorFlow и разрешить удаленные подключения, вы можете используйте ваш компьютер Windows, чтобы представить удаленный компьютер как приложение, работающее в Windows.
- Облачный сервис
У меня нет опыта в этом. Если вы знаете, отредактируйте ответ.
Cloud, такие как AWS используются.
Хотите запустить модель как службу в облаке? Containerize with Docker и TensorFlow работают только.
Запуск Docker на AWS обеспечивает высоконадежный, недорогой способ быстро создавать, отправлять и запускать распределенные приложения по шкале. развертывание Docker с использованием AMI с рынка AWS.
- Подождите, пока Bazel будет работать в Windows.
Для Windows есть две функции:
- Построить TensorFlow вручную.
Несколько дней или более в зависимости от уровня вашего навыка. Я отказался от этого; слишком много подпроектов для сборки и файлы для поиска.
Помните, что Bazel используется только для создания TensorFlow. Если вы получаете команды Bazel, и правильный исходный код и библиотеки, вы должны иметь возможность создавать TensorFlow в Windows. Смотрите: Как получить команды, выполненные Bazel.
Пока я еще не исследовал это, вы можете посмотреть непрерывную интеграцию для необходимых файлов и информацию о том, как их построить для тестирование. (Readme) (сайт)
- Построить Bazel на Windows
Несколько дней или более в зависимости от уровня вашего навыка. Я тоже отказался от этого; не удалось найти необходимые исходные файлы, необходимые для Windows.
Существует публичная экспериментальная версия исходного кода Bazel, которая загружается в Windows. Вы можете использовать это, чтобы заставить Bazel работать в Windows и т.д.
Также эти решения требуют использования Cygwin или MinGW, который добавляет еще один уровень сложности.
- Использовать альтернативную систему сборки, такую как Make
Если вы получите это на работу, я бы хотел посмотреть на GitHub.
В настоящее время TensorFlow не существует. Это запрос функции.
- Перекрестное строительство
Если вы получите это на работу, я бы хотел посмотреть на GitHub.
Вы создаете TensorFlow в Linux с помощью Bazel, но измените процесс сборки, чтобы вывести колесо, которое можно установить в Windows. Это потребует подробных знаний о Bazel, чтобы изменить конфигурацию и найти исходный код и библиотеки, которые работают с Windows. Вариант, который я бы предложил только в качестве последнего средства. Возможно, это даже не возможно.
- Запустите новую подсистему Windows для Linux.
Вы будете знать столько, сколько я делаю, прочитав статью, на которую ссылается.
Можно ли использовать Bazel для Windows для производства?
Поскольку это экспериментальное программное обеспечение, которое я бы не использовал на производственной машине.
Помните, что вам нужно только Bazel для создания TensorFlow. Поэтому используйте экспериментальный код на не-производственной машине для создания wheel, затем установите колесо на производственную машину. См.: Установка протокола
В настоящее время у меня есть несколько версий для обучения. Большинство используют рабочую станцию VMWare 7.1 для размещения Ubuntu 14.04 LTS или Ubuntu 15 или Debian. У меня также есть одна двойная загрузка Ubuntu 14.04 LTS на моей машине Windows для доступа к GPU, поскольку машина с VMware не имеет соответствующего графического процессора. Я бы порекомендовал вам предоставить эти компьютеры не менее 8 ГБ памяти либо в виде ОЗУ, либо в ОЗУ, и в пространстве подкачки, поскольку я несколько раз исчерпал память.
Я могу подтвердить, что он работает в подсистеме Windows для Linux! И это также очень просто.
В Ubuntu Bash в Windows 10 сначала обновите индекс пакета:
Затем установите pip для Python 2:
Установка тензорного потока:
Теперь пакет установлен, вы можете запустить образец CNN в наборе MNIST:
Я только что протестировал процессорный пакет.
Извините за раскопки, но этот вопрос довольно популярен, и теперь у него есть другой ответ.
Google официально объявила о добавлении поддержки TensorFlow для Windows (7, 10 и Server 2016): developers.googleblog.com
Модуль Python может быть установлен с помощью pip с помощью одной команды:
И если вам нужна поддержка GPU:
Другая полезная информация включена в примечания к выпуску: https://github.com/tensorflow/tensorflow/releases
UPD: Как @m02ph3u5, упомянутое в комментариях TF для Windows поддерживает только Python 3.5.x Установка TensorFlow в Windows с native pip
Установка TensorFlow
В настоящее время TensorFlow поддерживает только 64-разрядную версию Python 3.5. Поддерживаются как CPU, так и GPU. Вот несколько инструкций по установке, предполагающих, что у вас нет Python 3.5 64-бит:
- Загрузка и установка распространяемого обновления Microsoft Visual С++ 2015 3: https://www.microsoft.com/en-us/download/details.aspx?id=53587 (требуется Python 3.5 и TensorFlow)
- Загрузите и установите Python 3.5 64-bit: https://www.python.org/ftp/python/3.5.2/python-3.5.2-amd64.exe
- Установите pip следующим образом: загрузите https://bootstrap.pypa.io/get-pip.py, затем запустите python get-pip.py
- Установите TensorFlow с помощью pip install tensorflow (версия CPU) или pip install tensorflow-gpu (версия GPU → требуется установка CUDA).
Тестирование TensorFlow
Теперь вы можете запустить что-то вроде следующего, чтобы проверить, работает ли TensorFlow нормально:
TensorFlow поставляется с несколькими моделями, которые расположены в C:\Python35\Lib\site-packages\tensorflow\models\ (при условии, что вы установили python в C:\Python35 ). Например, вы можете запускать консоль:
Ограничения TensorFlow в Windows
Первоначальная поддержка построения TensorFlow в Microsoft Windows была добавлена в 2016-10-05 в commit 2098b9abcf20d2c9694055bbfd6997bc00b73578:
Этот PR содержит начальную версию поддержки для создания TensorFlow (Только процессор) в Windows с использованием CMake. Он включает документацию для построение с помощью CMake на Windows, специфичный для платформы код для реализация основных функций в Windows и правила CMake для построения программу обучения примера С++ и пакет PIP (только для Python 3.5). Правила CMake поддерживают создание TensorFlow с помощью Visual Studio 2015.
Поддержка Windows — это незавершенная работа, и мы приветствуем ваши отзывы и взносы.
Подробнее о поддерживаемых функциях и инструкциях о том, как создать TensorFlow в Windows, см. файл tensorflow/contrib/cmake/README.md .
Поддержка Microsoft Windows была введена в TensorFlow в версии 0.12 RC0 (примечания к выпуску):
TensorFlow теперь строит и запускает в Microsoft Windows (тестируется в Windows 10, Windows 7 и Windows Server 2016). Поддерживаемые языки включают Python (через пакет pip) и С++. CUDA 8.0 и cuDNN 5.1 поддерживаются для ускорения GPU. Известные ограничения включают: В настоящее время невозможно загрузить пользовательскую библиотеку op. Файловые системы GCS и HDFS в настоящее время не поддерживаются. Следующие опсы не в настоящее время: DepthwiseConv2dNative, DepthwiseConv2dNativeBackpropFilter, DepthwiseConv2dNativeBackpropInput, деквантование, дигамма, ERF, ERFC, Igamma, Igammac, Lgamma, полигамму, QuantizeAndDequantize, QuantizedAvgPool, QuantizedBatchNomWithGlobalNormalization, QuantizedBiasAdd, QuantizedConcat, QuantizedConv2D, QuantizedMatmul, QuantizedMaxPool, QuantizeDownAndShrinkRange, QuantizedRelu, QuantizedRelu6, QuantizedReshape, QuantizeV2, RequantizationRange и Requantize.