Предпосылки для глубокого обучения для MATLAB Coder

Продукты Mathworks

Чтобы использовать MATLAB® Coder™, чтобы сгенерировать код для нейронных сетей для глубокого обучения, необходимо также установить:

  • Deep Learning Toolbox™

  • Интерфейс MATLAB Coder для библиотек глубокого обучения

Стороннее аппаратное и программное обеспечение

Можно использовать MATLAB Coder, чтобы сгенерировать Код С++ для нейронных сетей для глубокого обучения, которые вы развертываете на процессорах ARM® или Intel®. Сгенерированный код использует в своих интересах библиотеки глубокого обучения, оптимизированные для целевого центрального процессора. Аппаратные и программные требования зависят от целевой платформы.

Примечание

Пути к необходимым библиотекам программного обеспечения не должны содержать пробелы или специальные символы, такие как круглые скобки. На операционных системах Windows® позволены специальные символы и пробелы, только если 8,3 имен файлов включены. Для получения дополнительной информации о 8,3 именах файлов обратитесь к документации по Windows.

 Центральные процессоры IntelЦЕНТРАЛЬНЫЕ ПРОЦЕССОРЫ ARM
Требования к аппаратным средствам

Процессор Intel с поддержкой Intel Усовершенствованные Векторные Расширения 2 (Intel AVX2) инструкции.

Процессоры ARM Cortex-A, которые поддерживают расширение NEON.

Библиотеки программного обеспечения

Intel Math Kernel Library для Глубоких нейронных сетей, v0.14 (Intel MKL-DNN).

Не пользуйтесь предварительно созданной библиотекой, потому что некоторые необходимые файлы отсутствуют. Вместо этого создайте библиотеку из исходного кода. См. инструкции для создания библиотеки по GitHub®.

После того, как вы создаете библиотеку MKL-DNN, копируете требуемые файлы с папки, где вы загрузили и создали источник к папке установки MKL-DNN. Установите переменную окружения INTEL_MKLDNN на эту папку установки MKL-DNN. Смотрите Переменные окружения.

  1. Скопируйте файлы библиотеки в mkl_dnn_installation_folder/lib.

    Если вы основываетесь на Windows, копируете эти файлы:

    • libiomp5md.lib

    • libiomp5md.dll

    • mklml.lib

    • mklml.dll

    • mkldnn.lib

    • mkldnn.dll

    Если вы основываетесь на Linux, копируете эти файлы:

    • libiomp5.so

    • libmkldnn.so

    • libmkldnn.so.0

    • libmkldnn.so.0.14.0

    • libmklml_intel.so

  2. Скопируйте эти заголовочные файлы в mkl_dnn_installation_folder/include:

    • mkldnn.h

    • ​mkldnn.hpp

    • mkldnn_debug.h

    • mkldnn_types.h

ARM Вычисляет Библиотеку для компьютерного зрения и машинного обучения, v18.03 или v18.05. Задайте номер версии в объекте настройки coder.ARMNEONConfig или в аргументе пары "имя-значение" targetparams команды cnncodegen. Номер версии по умолчанию является v18.05.

Если вы указываете, что версия ARM Вычисляет Библиотеку, которая является позже, чем v18.05, генератор кода производит код для v18.05. На цели ARM сгенерированный код может создать с более поздней версией библиотеки.

Не пользуйтесь предварительно созданной библиотекой, потому что это может быть несовместимо с компилятором на оборудовании ARM. Вместо этого создайте библиотеку из исходного кода. Создайте библиотеку или по вашей хост-машине или по непосредственно по целевому компьютеру. См. инструкции для создания библиотеки по GitHub.

Поддержка операционной системы

Windows и Linux® только.

Windows и Linux только.

Компилятор C++

MATLAB Coder определяет местоположение и использует поддерживаемый установленный компилятор. Для списка поддерживаемых компиляторов см. Поддерживаемые и Совместимые Компиляторы на веб-сайте MathWorks®.

Можно использовать mex -setup, чтобы изменить компилятор по умолчанию. См. Компилятор Значения по умолчанию Изменения (MATLAB).

Компилятор C++ должен поддержать C++ 11.

На Windows генерация кода для нейронных сетей для глубокого обучения при помощи команды codegen требует Microsoft® Visual Studio® 2015 или позже.

Другой

Библиотека Компьютерного зрения С открытым исходным кодом (OpenCV), v3.1.0 требуется для некоторых примеров глубокого обучения.

Примечание: примеры требуют отдельных библиотек, таких как opencv_core.lib и opencv_video.lib. Библиотека OpenCV, которая поставляется с Computer Vision Toolbox™, не имеет необходимых библиотек, и инсталлятор OpenCV не устанавливает их. Поэтому необходимо загрузить источник OpenCV и создать библиотеки.

Для получения дополнительной информации обратитесь к документации OpenCV.

Переменные окружения

MATLAB Coder использует переменные окружения, чтобы определить местоположение библиотек, требуемых сгенерировать код для нейронных сетей для глубокого обучения.

ПлатформаИмя переменнойОписание
Windows INTEL_MKLDNN

Путь к корневой папке установки библиотеки Intel MKL-DNN.

Например:

C:\Program Files\mkl-dnn

ARM_COMPUTELIB

Путь к корневой папке ARM Вычисляет установку Библиотеки на целевом компьютере ARM.

Например:

/usr/local/arm_compute

Установите ARM_COMPUTELIB на целевом компьютере ARM. Если вы генерируете код при помощи cnncodegen, также устанавливаете ARM_COMPUTELIB на хосте - компьютере, который вы используете для генерации кода.

OPENCV_DIR

Путь к папке сборки OpenCV. Установите OpenCV для примеров глубокого обучения то использование OpenCV.

Например:

C:\Program Files\opencv\build

PATH

Путь к папке библиотеки Intel MKL-DNN.

Например:

C:\Program Files\mkl-dnn\lib

Путь к динамически подключаемым библиотекам (DLL) OpenCV. Установите OpenCV для примеров глубокого обучения то использование OpenCV.

Например:

C:\Program Files\opencv\build\x64\vc15\bin

Linux LD_LIBRARY_PATH

Путь к папке библиотеки Intel MKL-DNN.

Например:

/usr/local/mkl-dnn/lib/

Путь к папке ARM Compute Library на целевом компьютере.

Например:

/usr/local/arm_compute/lib/

Установите LD_LIBRARY_PATH на целевом компьютере ARM.

INTEL_MKLDNN

Путь к корневой папке установки библиотеки Intel MKL-DNN.

Например:

/usr/local/mkl-dnn/

ARM_COMPUTELIB

Путь к корневой папке ARM Вычисляет установку Библиотеки на целевом компьютере ARM.

Например:

/usr/local/arm_compute/

Установите ARM_COMPUTELIB на целевом компьютере ARM. Если вы генерируете код при помощи cnncodegen, также устанавливаете ARM_COMPUTELIB на хосте - компьютере, который вы используете для генерации кода.

Примечание

Чтобы создать и запустить примеры, которые используют OpenCV, необходимо установить библиотеки OpenCV по хосту - компьютеру или требуемой плате. Для установок OpenCV на Linux убедитесь, что путь к файлам библиотеки и путь к заголовочным файлам находятся на системном пути. По умолчанию библиотека и заголовочные файлы установлены в стандартном месте, таком как /usr/local/lib/ и /usr/local/include/opencv, соответственно.

Для установок OpenCV на Windows, набор OPENCV_DIR и переменные окружения PATH, как описано в предыдущей таблице.

Похожие темы