dlhdl.Workflow class

Пакет: dlhdl

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

Описание

Используйте dlhdl.Workflow возразите, чтобы установить опции для компиляции и развертывания вашей нейронной сети для глубокого обучения к целевому FPGA. Вы создаете объект dlhdl.Workflow класс для заданной нейронной сети для глубокого обучения и потока битов FPGA. Используйте объект для:

  • Скомпилируйте нейронную сеть для глубокого обучения.

  • Оцените скорость и пропускную способность вашей сети на заданном устройстве FPGA.

  • Скомпилируйте и разверните нейронную сеть на FPGA.

  • Предскажите класс входных изображений.

  • Профилируйте результаты для заданной сети и FPGA.

Создание

hW = dlhdl.Workflow('Network',Network,'Bitstream',Bitstream) создает объект настройки рабочего процесса с сетевым объектом и потоком битов, чтобы развернуть ваш пользовательский предварительно обученный объект нейронной сети для глубокого обучения.

hW = dlhdl.Workflow('Ntwork',Network,'Bitstream',Bitstream,Name,Value) создает объект настройки рабочего процесса с сетевым объектом и потоком битов, чтобы развернуть ваш пользовательский предварительно обученный объект нейронной сети для глубокого обучения, с дополнительными опциями, заданными одним или несколькими аргументами пары "имя-значение".

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

развернуть все

Имя FPGA передает поток битов в виде вектора символов. Убедитесь, что имя потока битов совпадает с типом данных и платой FPGA, для которой вы предназначаетесь. Для списка обеспеченных имен потока битов смотрите Глубокое обучение Использования на Потоках битов FPGA.

Пример: 'Bitstream', 'arria10soc_single' указывает, что вы хотите развернуть обучивший сеть с single типы данных к плате Arria10 SoC.

Имя объекта нейронной сети для глубокого обучения.

Пример: 'network'.NET создает объект рабочего процесса для сохраненной предварительно обученной сети net. Задавать net, можно импортировать любую из существующих поддерживаемых предварительно обученных сетей или использовать передачу обучения, чтобы адаптировать сеть к проблеме. Смотрите Поддерживаемые Предварительно обученные сети.

net = resnet18;
hW = dlhdl.Workflow('Network',net,'Bitstream','zcu102_single');

Пример: 'network', dlquantizeObj создает объект рабочего процесса для квантованного сетевого объекта dlquantizeObj. Задавать dlquantizeObj, можно импортировать любую из поддерживаемых существующих предварительно обученных сетей и создать объект при помощи dlquantizer класс. Для получения информации о поддерживаемых сетях смотрите Поддерживаемые Предварительно обученные сети.

net = resnet18;
dlquantObj = dlquantizer(net,'ExecutionEnvironment','FPGA');
dlquantObj.calibrate(imdsTrain);
hW = dlhdl.Workflow('Network',dlquantObj,'Bitstream','zcu102_int8');

Свойства

развернуть все

Целевой объект, заданный как dlhdl.Target объект

Пример: 'Target',hTarget

hTarget = dlhdl.Target('Intel','Interface','JTAG')
hW = dlhdl.Workflow('network', snet,'Bitstream','arria10soc_single','Target',hTarget);

Методы

развернуть все

Примеры

Создайте Объект Рабочего процесса при помощи Пар Значения Имени свойства

snet = vgg19;
hW = dlhdl.Workflow('Network',snet,'Bitstream','arria10soc_single', 'Target', hTarget);

Создайте объект рабочего процесса с квантованным сетевым объектом

snet = getLogoNetwork;
dlquantObj = dlquantizer(snet,'ExecutionEnvironment','FPGA');
Image = imageDatastore('heineken.png','Labels','Heineken');
dlquantObj.calibrate(Image);
hTarget = dlhdl.Target('Xilinx','Interface','Ethernet');
hW = dlhdl.Workflow('Network',dlquantObj,'Bitstream','zcu102_int8','Target',hTarget);
Введенный в R2020b