кодер. DeepLearningConfig

Создайте глубоко изучение объектов настройки генерации кода

Синтаксис

deepLearningCfg = coder.DeepLearningConfig(targetlib)

Описание

пример

deepLearningCfg = coder.DeepLearningConfig(targetlib) создает глубокий объект настройки изучения, содержащий специфичные для библиотеки параметры что использование codegen, чтобы сгенерировать код для глубоких нейронных сетей. Присвойте этот глубокий объект настройки изучения свойству DeepLearningConfig объекта настройки кода, созданного при помощи coder.CodeConfig. Передайте объект настройки кода функции codegen при помощи опции -config.

Примеры

свернуть все

Установите параметры конфигурации кода и сгенерируйте Код С++ для сети серии AlexNet. Сгенерированный код использует Intel® MKL-DNN, глубоко изучая библиотеки.

Создайте функцию точки входа alexneteg, который использует функцию coder.loadDeepLearningNetwork, чтобы загрузить объект alexnet SeriesNetwork.

function out = alexneteg(in)

persistent mynet;
if isempty(mynet)
    mynet = coder.loadDeepLearningNetwork('alexnet', 'myalexnet');
end

out = predict(mynet,in);

Постоянный объект старается не восстанавливать и перезагружать сетевой объект во время последующих вызовов функции, чтобы вызвать метод predict на входной параметр

Входной уровень предварительно обученной сети AlexNet принимает изображения размера 227x227x3. Чтобы считать входное изображение из графического файла и изменить размер его к 227x227, используйте следующие строки кода:

in = imread('peppers.png');
in = imresize(in,[227,227]);

Создайте объект настройки coder.config для генерации кода MEX и установите выходной язык на C++. На объекте настройки, набор DeepLearningConfig с targetlib как 'mkldnn'. Используйте опцию -config функции codegen, чтобы передать этот объект настройки кода. Функция codegen должна определить размер, класс и сложность входных параметров функции MATLAB®. Используйте опцию -args, чтобы задать размер входного параметра к функции точки входа.

cfg = coder.config('mex');
cfg.TargetLang = 'C++';
cfg.DeepLearningConfig = coder.DeepLearningConfig('mkldnn'); 
codegen -args {ones(227,227,3,'single')} -config cfg alexneteg

Команда codegen помещает все сгенерированные файлы в папку codegen. Это содержит Код С++ для функции точки входа alexneteg.cpp, заголовок и исходные файлы, содержащие определения класса C++ для замысловатой нейронной сети (CNN), веса и файлов смещения.

Входные параметры

свернуть все

Выходные аргументы

свернуть все

Настройка, основанная на объектах на целевой библиотеке, задана во входном параметре. Этот объект содержит специфичные для библиотеки параметры, которые используются во время генерации кода.

Целевая библиотекаГлубоко изучение объекта настройки
'mkldnn'Создает объект настройки MklDNNConfig.
'cudnn'Создает объект настройки CuDNNConfig.
'tensorrt'Создает объект настройки TensorRTConfig.

Представленный в R2018b

Была ли эта тема полезной?