Необходимые условия для глубокого обучения для MATLAB Coder

Продукты Mathworks

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

  • Deep Learning Toolbox™

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

Интерфейс MATLAB Coder для Библиотек Глубокого обучения не поддерживается для MATLAB Online™.

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

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

Можно также использовать MATLAB Coder, чтобы сгенерировать типовой код C or C++ для нейронных сетей для глубокого обучения. Такой код C or C++ не зависит ни от каких сторонних библиотек. Для получения дополнительной информации смотрите, Генерируют Типовой Код C/C++ для Нейронных сетей для глубокого обучения.

Примечание

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

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

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

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

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

Intel Math Kernel Library для Глубоких нейронных сетей (MKL-DNN), v1.4. См. https://01.org/onednn

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

Для получения дополнительной информации о сборке смотрите это сообщение в MATLAB Answers™: https://www.mathworks.com/matlabcentral/answers/447387-matlab-coder-how-do-i-build-the-intel-mkl-dnn-library-for-deep-learning-c-code-generation-and-de p

ARM Вычисляет Библиотеку для компьютерного зрения и машинного обучения, версий 19.05 и 20.02.1. См. https://developer.arm.com/ip-products/processors/machine-learning/compute-library

Задайте номер версии в coder.ARMNEONConfig объект настройки. Номер версии по умолчанию является v20.02.1.

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

Папка, которая содержит файлы библиотеки, такие как libarm_compute.so должен быть назван lib. Если папку называют build, переименуйте папку в lib.

Для получения дополнительной информации о сборке смотрите это сообщение в MATLAB Answers: https://www.mathworks.com/matlabcentral/answers/455590-matlab-coder-how-do-i-build-the-arm-compute-library-for-deep-learning-c-code-generation-and-depl o

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

Windows, Linux®, и macOS.

Windows и Linux только.

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

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

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

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

На Windows, чтобы сгенерировать код, который пользуется библиотекой Intel MKL-DNN при помощи codegen команда, используйте Microsoft® Visual Studio® 2015 или позже.

На Windows, чтобы сгенерировать типовой код C or C++, который не пользуется никакими сторонними библиотеками, Microsoft Visual Studio использования или MinGW® компилятор. Для получения дополнительной информации смотрите, Генерируют Типовой Код C/C++ для Нейронных сетей для глубокого обучения.

Другой

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

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

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

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

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

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

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

Например:

C:\Program Files\mkl-dnn

ARM_COMPUTELIB

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

Например:

/usr/local/arm_compute

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

PATH

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

Например:

C:\Program Files\mkl-dnn\lib

LinuxLD_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.

macOSINTEL_MKLDNN

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

Например:

/usr/local/mkl-dnn

Unix® основанная ОС на целях ARMOPENCV_DIR

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

Например:

/usr/local/opencv/build

Примечание

Чтобы сгенерировать код для Raspberry Pi™ с помощью Пакета поддержки MATLAB для Оборудования Raspberry Pi, необходимо установить переменные окружения нев интерактивном режиме. Для инструкций см. https://www.mathworks.com/matlabcentral/answers/455591-matlab-coder-how-do-i-setup-the-environment-variables-on-arm-targets-to-point-to-the-arm-compute - литий

Примечание

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

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

Похожие темы