Вы когда-нибудь хотели создать тензорный поток из исходных файлов, чтобы получить большую прибыль от вашего оборудования? Тогда это ваш гид.

Что это нужно

Для начала необходимо скачать следующие программы:

  1. Python с pip (https://www.python.org/downloads/).
  2. MSYS2 (https://www.msys2.org/).
  3. Visual C ++ Build Tools 2015 (https://visualstudio.microsoft.com/es/downloads мы загрузим версию сообщества Visual Studio, где мы сможем найти инструменты сборки C ++ ).
  4. Базель (https://www.bazel.build/).
  5. CUDA Toolkit и библиотеки cuDNN в случае использования графического процессора, совместимого с CUDA (https://developer.nvidia.com/cuda-gpus).

После загрузки необходимых программ необходимо следовать приведенным ниже инструкциям.

Предыдущие конфигурации

Сначала мы добавим каталоги Python и pip в системную переменную среды Path после их установки. Каталог Python по умолчанию - C: \ Program Files \ Python, а для pip - C: \ Program Files \ Python \ Scripts.

После установки MSYS2 необходимо добавить в переменную Path ее корневой путь (по умолчанию C: \ msys64) и папку bin (C: \ msys64 \ usr \ bin). Затем выполните pacman -S git patch unzip на консоли (cmd, powershell, bash и т. Д.), Чтобы установить необходимые зависимости.

Для инструментов сборки Visual C ++ в меню установки Visual Studio отметьте опцию установки инструментов сборки Visual C ++, а затем отметьте Windows 10 SDK и набор инструментов VC ++ 2015 для настольных ПК (только те, которые необходимы) в правой части меню.

В случае с Bazel необходимо переименовать загруженный файл из репозитория git (https://github.com/bazelbuild/bazel/releases, откуда мы скачиваем bazel- ‹ версия ›-windows-x86_64.exe) в bazel.exe. После этого также необходимо добавить переменную BAZEL_SH в системные переменные нашей среды со значением c: \ msys64 \ usr \ bin \ bash.exe. Также необходима переменная BAZEL_VS со значением Microsoft Visual Studio home (по умолчанию C: \ Program Files (x86) \ Microsoft Visual Studio 14.0).

Хотя установка CUDA проста, установка cuDNN может быть немного сложной. Сначала установите CUDA, затем загрузите cuDNN с https://developer.nvidia.com/cudnn и разархивируйте его. Затем скопируйте следующие файлы:

  1. \ cuda \ bin \ cudnn64_7.dll в C: \ Program Files \ NVIDIA GPU Computing Toolkit \ CUDA \ v9.0 \ bin
  2. \ cuda \ include \ cudnn.h в C: \ Program Files \ NVIDIA GPU Computing Toolkit \ CUDA \ v9.0 \ include
  3. \ cuda \ lib \ x64 \ cudnn.lib в C: \ Program Files \ NVIDIA GPU Computing Toolkit \ CUDA \ v9.0 \ lib \ x64

Затем необходимо создать переменную среды CUDA_PATH со значением каталога, в котором установлен CUDA (обычно C: \ Program Files \ NVIDIA GPU Computing Toolkit \ CUDA \ v9.0).

Наконец, необходимо добавить переменную с именем JAVA_HOME со значением папки java (обычно C: \ Program Files \ Java \ jre1.8.0_13).

Необходимые пакеты Python

Кроме того, перед установкой tenorflow необходимо установить следующие пакеты python:

  1. Шесть библиотек python, numpy и wheel. (pip3 установить шесть колес с цифровыми клавишами)
  2. Следующие части библиотеки keras: keras_applications и keras_preprocessing.
    (pip3 install keras_applications == 1.0.5 - no-deps
    pip3 install keras_preprocessing == 1.0. 3 - без депс)

Здание Tensorflow

Следующим шагом будет загрузка tensorflow из git (git clone https://github.com/tensorflow/tensorflow.gi t), войдите в клонированную папку и выполните python ./ configure.py в командной консоли (снова любой из следующих: bash, cmd, powershell, MSYS2 и т. д.).

Базель заказывает пошагово

  1. Введите местоположение Python. Если он находится в переменных системной среды, он обнаружит его по умолчанию.
  2. Далее конфигуратор запросит путь к библиотеке Python. Если расположение Python настроено в переменных системной среды, оно будет обнаружено по умолчанию.
  3. Поддержка ROCm. Эти инструкции используются графическими процессорами AMD. Если он у вас есть, активируйте его. Если нет, пропустите.
  4. Поддержка CUDA. Это для графических процессоров Nvidia. Пропустите это, если у вас нет графического процессора Nvidia с CUDA.
  5. Если мы выбрали установку поддержки CUDA, то в приглашении будет запрашиваться папка, в которой установлены библиотеки cuDNN.
  6. В ответ на запрос о поддержке AVX (AVX и AVX2 - это набор инструкций, используемых современными процессорами, начиная с микроархитектуры Haswell), используйте инструкцию / arch: AVX или / arch: AVX2 или n (в зависимости от микроархитектуры вашего процессора).
  7. Последний вопрос касается переопределения eigen strong inline для некоторой компиляции C ++, чтобы сократить время компиляции. Я спросил да. (Информация о библиотеке Eigen C ++: https://bitbucket.org/eigen/eigen/src).

На этом часть Blaze закончена. Теперь пришло время скомпилировать библиотеки тензорного потока.

Компиляция пакета

Это команда для построения тензорного потока ЦП:

сборка bazel - config = opt // tensorflow / tools / pip_package: build_pip_package

Для версии с графическим процессором:

bazel build - config = opt - config = cuda // tensorflow / tools / pip_package: build_pip_package

Учтите, что процесс занимает несколько часов.

После завершения мы можем приступить к установке пакета в нашей среде Python.

Наконец, установка tensorflow

Сначала необходимо сгенерировать файл .whl, а затем использовать его через pip:

  1. bazel-bin / tensorflow / tools / pip_package / build_pip_package C: / tmp / tensorflow_pkg
  2. pip3 install C: /tmp/tensorflow_pkg/tensorflow-version-cp36-cp36m-win_amd64.whl

И все, мы обязательно заметим ускорение темпов создания наших моделей.

Если вы нашли этот пост интересным, мы всегда нанимаем и заинтересованы во встрече со всеми типами инженеров, независимо от ваших навыков или инструментов, которые вы используете изо дня в день. Ваш интеллект, креативность, энергия и энтузиазм гораздо важнее для нас, чем ваш опыт работы с нашим стеком.

Посетите нашу страницу вакансий здесь - https://worldsensing.wpengine.com/engineering/

Источники