Можно сгенерировать код для предварительно обученной сверточной нейронной сети (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');