深度学习的先决条件MATLAB编码器
MathWorkss manbetx 845
使用MATLAB®编码器™为深入学习网络生成代码,您还必须安装:
深度学习工具箱™
为深入学习MATLAB编码器接口
生成的代码,不使用第三方库
您可以使用MATLAB编码器生成通用的C或c++代码深入学习网络。这样的C或c++代码不依赖于任何第三方库。有关更多信息,请参见生成通用的C / c++代码深入学习网络。
MATLAB编码器定位和使用一个支持安装编译器。万博1manbetx编译器支持的列表,请参阅万博1manbetx万博1manbetx支持和兼容的编译器在MathWorks®的网站。
您可以使用墨西哥人设置
改变默认的编译器。看到改变默认的编译器。
c++编译器必须支持c++ 11。万博1manbetx
在Windows上®,生成通用的C或c++不使用任何第三方库的代码,使用微软®Visual Studio®或MinGW®编译器。
生成的代码使用第三方库
您可以使用MATLAB编码器为深入学习网络生成c++代码部署到英特尔®或手臂®处理器。生成的代码利用深度学习库优化为目标CPU。硬件和软件需求依赖于目标平台。
请注意
所需的软件的路径库不能包含空格或特殊字符,如括号。在Windows操作系统中,允许特殊字符和空格只有8.3文件名被启用。8.3文件名称的更多信息,请参阅Windows文档。
硬件和软件需求
英特尔cpu | 手臂Cortex-A cpu | 手臂Cortex-M cpu | |
---|---|---|---|
硬件需求 | 英特尔处理器支持英特尔高级向量扩展2(英特万博1manbetx尔 |
手臂Cortex-A处理器支持万博1manbetx |
手臂Cortex-M处理器。 |
软件库 | 英特尔数学内核库深层神经网络(MKL-DNN) v1.4。看到https://01.org/onednn 不使用预构建图书馆因为一些必需的文件丢失。相反,从源代码构建图书馆。看到指令用于构建图书馆GitHub上®。 对构建的更多信息,看到这篇文章MATLAB的答案™://www.tianjin-qmedu.com/matlabcentral/answers/447387-matlab-coder-how-do-i-build-the-intel-mkl-dnn-library-for-deep-learning-c-code-generation-and-dep 使用注意:
|
臂计算为计算机视觉和机器学习库,版本19.05和20.02.1。看到https://developer.arm.com/ip-s manbetx 845products/processors/machine-learning/compute-library 指定的版本号 不使用预构建的图书馆,因为它可能与手臂上的编译器不兼容的硬件。相反,从源代码构建图书馆。构建图书馆在你的主机或直接在目标硬件。看到指令用于构建图书馆20.02.1版本在GitHub上。 该文件夹包含库文件等 对构建的更多信息,看到这篇文章MATLAB的答案://www.tianjin-qmedu.com/matlabcentral/answers/455590-matlab-coder-how-do-i-build-the-arm-compute-library-for-deep-learning-c-code-generation-and-deplo 生成部署代码执行推理计算在ARM处理器8位整数,您必须使用手臂20.02.1计算库版本。 |
CMSIS-NN 5.7.0库版本。看到https://developer.arm.com/tools-and-software/embedded/cmsis 构建图书馆在你的主机使用构建步骤中提供: |
操作系统支持万博1manbetx | Windows、Linux®,macOS。 |
Windows和Linux。 |
Windows和Linux。 |
万博1manbetx支持编译器 | MATLAB编码器定位和使用一个支持安装编译器。万博1manbetx编译器支持的列表,请参阅万博1manbetx万博1manbetx支持和兼容的编译器在MathWorks网站上。 您可以使用 c++编译器必须支持c++ 11。万博1manbetx 在Windows上,来生成代码使用英特尔MKL-DNN库使用 请注意 在Windows上,生成墨西哥人使用英特尔MKL-DNN库函数,MinGW编译器不支持。万博1manbetx |
||
其他 | 开源的计算机视觉库(OpenCV),需要v3.1.0手臂Cortex-A基础深度学习的例子。 注意:示例需要单独的库等 有关更多信息,请参阅OpenCV文档。 |
环境变量
MATLAB编码器使用环境变量来定位所需的库来生成代码深入学习网络。
平台 | 变量名 | 描述 |
---|---|---|
窗户 | INTEL_MKLDNN |
英特尔MKL-DNN库的根文件夹路径安装。 例如:
|
ARM_COMPUTELIB |
路径的根文件夹臂计算库安装在手臂的目标硬件。 例如:
集 |
|
CMSISNN_PATH |
路径的根文件夹CMSIS-NN库安装在手臂的目标硬件。 例如:
集 |
|
路径 |
路径英特尔MKL-DNN库文件夹。 例如:
|
|
Linux | LD_LIBRARY_PATH |
路径英特尔MKL-DNN库文件夹。 例如:
|
路径臂计算库文件夹在目标硬件。 例如:
集 |
||
INTEL_MKLDNN |
英特尔MKL-DNN库的根文件夹路径安装。 例如:
|
|
ARM_COMPUTELIB |
路径的根文件夹臂计算库安装在手臂的目标硬件。 例如:
集 |
|
CMSISNN_PATH |
路径的根文件夹CMSIS-NN库安装在手臂的目标硬件。 例如:
集 |
|
macOS | INTEL_MKLDNN |
英特尔MKL-DNN库的根文件夹路径安装。 例如:
|
UNIX®操作系统基于ARM Cortex-A目标 | OPENCV_DIR |
路径构建OpenCV的文件夹。安装使用OpenCV的深度学习OpenCV的例子。 例如:
|
请注意
为树莓π生成代码®使用MATLAB为万博1manbetx覆盆子π硬件支持包经常,你必须设置环境变量。说明,请参阅//www.tianjin-qmedu.com/matlabcentral/answers/455591-matlab-coder-how-do-i-setup-the-environment-variables-on-arm-targets-to-point-to-the-arm-compute-li
请注意
使用OpenCV的构建和运行示例,您必须安装在目标板上的OpenCV库。对于OpenCV安装在Linux上,确保库文件的路径和头文件的路径在系统路径。默认情况下,库和头文件安装在标准的位置等/usr/local/lib/
和/usr/local/include/opencv
,分别。
对于OpenCV安装在目标板上,设置OPENCV_DIR
和路径
环境变量所描述的在前面的桌子上。
请注意
你可以提高生成的代码的性能对于英特尔CPU-s通过设置环境变量,控制OpenMP线程绑定的物理处理单元。例如,在Linux平台上,设置KMP_AFFINITY
环境变量来散射
。使用英特尔CPU-s为其他平台,您可以设置类似的环境变量来提高生成的代码的性能。