Загрузите предварительно обученные сети для генерации кода

Можно сгенерировать код для предварительно обученной сверточной нейронной сети (CNN). Чтобы предоставить сеть генератору кода, загрузите SeriesNetwork или сетевой объект DAGNetwork от обученной сети.

Загрузите сеть при помощи coder.loadDeepLearningNetwork

Можно загрузить сетевой объект от любой сети, которая поддержана для генерации кода при помощи coder.loadDeepLearningNetwork. Можно задать сеть как MAT-файл. Например:

net = coder.loadDeepLearningNetwork('alexnet.mat')
Можно также задать сеть путем обеспечения имени функции, которая возвращает предварительно обученный SeriesNetwork или сетевой объект DAGNetwork. Например, они Глубоко Изучение функций Toolbox™ возвращают предварительно обученный сетевой объект:

Глубокое Изучение функций Тулбокса в предыдущем списке требует, чтобы вы установили пакет поддержки для функции. Смотрите Предварительно обученные Сверточные Нейронные сети (Глубоко Изучение Тулбокса).

Следующий код загружает сетевой объект путем вызывания функции alexnet.

net = coder.loadDeepLearningNetwork('alexnet')

Загрузите сеть непосредственно от сетевой функции

Если вы устанавливаете пакет поддержки для Глубокого Изучения функции Тулбокса, такой как alexnet, можно загрузить сетевой объект непосредственно от функции. Например:

net = alexnet

Предоставьте сетевой объект генератору кода

Если вы генерируете код при помощи codegen или приложение, загружаете сетевой объект в вашей функции точки входа. Например:

function out = alexnet_predict(in) %#codegen

% A persistent object mynet is used to load the series network object.
% At the first call to this function, the persistent object is constructed and
% set up. When the function is called subsequent times, the same object is reused 
% to call predict on inputs, avoiding reconstructing and reloading the
% network object.

persistent mynet;

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

% pass in input   
out = predict(mynet,in); 

Если вы генерируете код при помощи cnncodegen, загружаете сетевой объект в рабочей области MATLAB®. Затем передайте объект cnncodegen. Например:

net = alexnet;
cnncodegen(net,'targetlib','arm-compute');

Похожие темы

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