coder.DeepLearningCodeConfig - Parameters to configure deep learning code generation that does not depend on

  third-party libraries - MATLAB ([original](https://www.mathworks.com/help/coder/ref/coder.deeplearningcodeconfig.html)) ([raw](?raw))

Main Content

Parameters to configure deep learning code generation that does not depend on third-party libraries

Since R2021a

Description

The coder.DeepLearningCodeConfig object contains the parameters that the codegen function uses to generate generic C or C++ code for deep neural networks.

Creation

Create an DeepLearningCodeConfig configuration object by using thecoder.DeepLearningConfig function with target library set to'none'.

Properties

expand all

LearnablesCompression — Compression type

"none" (default) | "bfloat16"

Compression type, specified as "none" or"bfloat16". To enable learnables compression, use"bfloat16".

TargetLib — Target library name

'none'

Name of target library, specified as a character vector.

Examples

collapse all

Generate Code That Does Not Depends on Third-party Libraries for the ResNet-50 Network

Create an entry-point function resnet50 that uses theimagePretrainedNetwork function to load thedlnetwork object that contains the ResNet-50 network. For more information, see Code Generation for dlarray.

function out = resnet_predict(in)

dlIn = dlarray(in, 'SSCB'); persistent dlnet; if isempty(dlnet) dlnet = imagePretrainedNetwork('resnet50'); end

dlOut = predict(dlnet, dlIn); out = extractdata(dlOut);

Create a coder.config configuration object for MEX code generation.

cfg = coder.config('mex');

Set the target language to C++.

Create a coder.DeepLearningCodeConfig deep learning configuration object. Assign it to the DeepLearningConfig property of thecfg configuration object.

dlcfg = coder.DeepLearningConfig(TargetLibrary = 'none'); cfg.DeepLearningConfig = dlcfg;

Use the -config option of the codegen function to specify the cfg configuration object. The codegen function must determine the size, class, and complexity of MATLAB® function inputs. Use the -args option to specify the size of the input to the entry-point function.

codegen -args {ones(224,224,3,'single')} -config cfg resnet_predict

The codegen command places the generated files in thecodegen folder. This folder contains the C++ code for the entry-point function resnet_predict.cpp, the header, and the source files that contain the C++ class definitions for the neural network, weight, and bias files.

Version History

Introduced in R2021a

expand all

R2023a: Renamed from coder.DeepLearningConfigBase

coder.DeepLearningConfigBase configuration object is now calledcoder.DeepLearningCodeConfig. The behavior remains the same.