exponenta event banner

functionToLayerGraph

Преобразование функции модели глубокого обучения в график слоев

Описание

пример

lgraph = functionToLayerGraph(fun,x) возвращает график слоев, основанный на функции массива глубокого обучения fun. functionToLayerGraph преобразует только те операции, которые находятся в fun которые работают на dlarray объекты среди вводов в x. Включение дополнительных параметров или данных в funсм. раздел Параметризация функций или пример Создание графика слоев из функции.

functionToLayerGraph оценивает fun(x) и отслеживает выполнение для получения эквивалентного графа уровня, насколько это возможно. Шаги в fun(x), что functionToLayerGraph can trace оба основаны на dlarray аргументы и поддерживаются вызовами для dlarray. См. Список функций с поддержкой dlarray. Для неподдерживаемых функций functionToLayerGraph создает PlaceholderLayer.

lgraph = functionToLayerGraph(fun,x,Name,Value) указывает параметры, использующие один или несколько аргументов пары имя-значение в дополнение к входным аргументам в предыдущем синтаксисе.

Примеры

свернуть все

simplemodel функция в конце этого примера создает полностью соединенные выходы, за которыми следует softmax операция. Создание графика слоев из этой функции на основе dlarray данные, создайте входные массивы как dlarray и создайте дескриптор функции для simplemodel функция, включающая данные.

rng default % For reproducibility
dlX1 = dlarray(rand(10),'CB');
dlX2 = dlarray(zeros(10,1),'CB');
fun = @(x)simplemodel(x,dlX1,dlX2);

Звонить functionToLayerGraph использование dlarray для входных данных dlX.

dlX = dlarray(ones(10,1),'CB');
lgraph = functionToLayerGraph(fun,dlX)
lgraph = 
  LayerGraph with properties:

         Layers: [2x1 nnet.cnn.layer.Layer]
    Connections: [1x2 table]
     InputNames: {1x0 cell}
    OutputNames: {1x0 cell}

Анализ полученных слоев в lgraph.

disp(lgraph.Layers)
  2x1 Layer array with layers:

     1   'fc_1'   Fully Connected   10 fully connected layer
     2   'sm_1'   Softmax           softmax
function y = simplemodel(x,w,b)
y = fullyconnect(x,w,b);
y = softmax(y);
end

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

свернуть все

Функция для преобразования, заданная как дескриптор функции.

Пример: @relu

Типы данных: function_handle

Данные для функции, указанные как любой тип данных. Только dlarray данные отслеживаются и преобразуются в график слоев.

Пример: dlarray(zeros(12*50,23))

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string | struct | table | cell | function_handle | categorical | datetime | duration | calendarDuration | fi

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'GenerateLayer','placeholder-layer'

Тип слоя, создаваемого для неподдерживаемых операций в fun, указано как 'custom-layer' или 'placeholder-layer'.

При выполнении операции в fun не соответствует слою в Deep Learning Toolbox™, программное обеспечение генерирует слой для представления этой функциональности. 'GenerateLayer' определяет тип слоя следующим образом.

Пример: 'GenerateLayer','placeholder-layer'

Префикс для создания пользовательских слоев, заданный как вектор-символ.

Этот параметр применяется только в том случае, если 'GenerateLayer' опция - 'custom-layer'. Имя каждого созданного пользовательского слоя начинается с указанного префикса.

Пример: 'CustomLayerPrefix','myGeneratedLayer'

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

свернуть все

График слоев, возвращенный как LayerGraph объект.

Представлен в R2019b