主要内容

coder.deeplearningconfig

创建深度学习代码生成配置对象

描述

例子

Deeplearningcfg.= Coder.DeePlearningConfig(targetLibrary =targetlib.创建一个包含特定于库的参数的深度学习配置对象Codegen.用于为深神经网络生成代码。将此深度学习配置对象分配给DeeplearningConfig使用的代码配置对象的属性Coder.config.。将代码配置对象传递给Codegen.使用使用的功能-Config.选项。

例子

全部收缩

设置代码配置参数并为此生成C ++代码resnet-50.系列网络。生成的代码使用英特尔®MKL-DNN深度学习图书馆。

创建一个入口点函数resnet_predict.这是用来的Coder.LoadDeePlearningnetwork.装载的功能resnet50(深度学习工具箱)系列网络目的。

功能OUT = RESNET_PREDICT(IN)执着的yeNet;如果isempty(mynet)mynet = coder.loaddeeplearningnetwork('resnet50''myresnet');结尾出局=预测(Mynet,In);

持久对象避免在后续调用函数中重建和重新加载网络对象来调用预测输入上的方法。

预制的输入层resnet-50.网络接受大小的图像224x224x3。从图形文件读取输入图像并将其调整为大小224x224,使用以下代码行:

在= imread('peppers.png');In = Imresize(在[224,224]中);

创建一个Coder.config.MEX代码生成的配置对象并将目标语言设置为C ++。在配置对象上,设置DeeplearningConfigtargetlib.作为'mkldnn'。使用-Config.选项Codegen.函数传递此代码配置对象。这Codegen.功能必须确定matlab的大小,类和复杂性®功能输入。使用- args.选项要将输入的大小指定为入门点函数。

cfg = coder.config('mex');cfg.targetlang =.'c ++';cfg.deeplearningconfig = coder.deeplearningconfig('mkldnn');Codegen.-  args.{ONE(224,224,3,'单')}-Config.CFG.resnet_predict.;

Codegen.命令将所有生成的文件放在中Codegen.文件夹。它包含入口点函数的C ++代码resnet_predict.cpp.,包含Contruted神经网络(CNN),重量和偏置文件的C ++类定义的标题和源文件。

输入参数

全部收缩

用于深度学习代码的目标库,指定为此表中的值之一。

价值 描述
'没有任何'

用于生成不使用任何第三方库的代码。

'arm-compute'

生成使用手臂的代码®计算库。

'mkldnn'

用于生成使用Intel Math Kernel库进行深度神经网络(Intel MKL-DNN)的代码。

'cudnn'

用于生成使用CUDA的代码®深神经网络库(CUDNN)。

此选项需要GPU编码器™。

'tensorrt'

用于生成利用NVIDIA的代码®Tensorrt - 高性能深度学习推理优化器和运行时库。

此选项需要GPU编码器。

输出参数

全部收缩

配置对象基于输入参数中指定的目标库。此对象包含在代码生成期间使用的库特定参数。

目标库 深度学习配置对象
'没有任何' 创造一个Deeplearningconfigbase.配置对象。
'arm-compute' 创造一个armneonconfig配置对象。
'mkldnn' 创造一个mkldnnconfig配置对象。
'cudnn' 创造一个CUDNNCONFIG.配置对象。
'tensorrt' 创造一个tensorrtconfig配置对象。

在R2018B中介绍