主要内容

工作流类

包裹:dlhdl

配置深度学习神经网络部署工作流

描述

使用工作流程对象来设置将深度学习网络编译和部署到目标FPGA的选项工作流程类用于指定的深度学习网络和FPGA位流。使用对象to:

  • 编写深度学习网络。

  • 估计指定FPGA设备上网络的速度和吞吐量。

  • 编译并将神经网络部署到FPGA上。

  • 预测输入图像的类别。

  • 分析指定网络和FPGA的结果。

创造

hW=dlhdl.Workflow('网络',网络,“比特流”,比特流)使用网络对象和位流创建工作流配置对象,以部署自定义的预训练深度学习网络对象。

hW=dlhdl.Workflow('Ntwork',网络,“比特流”,比特流,名称、值)使用网络对象和位流创建工作流配置对象,以部署自定义的预训练深度学习网络对象,并使用一个或多个名称-值对参数指定的其他选项。

输入参数

全部展开

FPGA位流的名称,指定为字符向量。确保位流名称与数据类型和目标FPGA板匹配。有关提供的位流名称的列表,请参阅在FPGA比特流上使用深度学习.

例子:“比特流”,“arria10soc_single”指定要使用部署经过培训的网络仅有一个的Arria10 SoC板的数据类型。

深度学习网络对象的名称。

例子:“网络”,为已保存的预训练网络创建工作流对象.指明,您可以导入任何现有受支持的预训练网络,或使用转移学习使网络适应您的问题。金宝app请参阅金宝app支持预训练网络.

net=resnet18;hW=dlhdl.Workflow(“网络”“比特流”,“zcu102_single”);

例子:“网络”,dlquantizeObj为量化网络对象创建工作流对象dlquantizeObj.指明dlquantizeObj,您可以导入任何受支持的现有预训练网络,并使用金宝app数字量化器类。有关支持的网络的信息,请参阅金宝app金宝app支持预训练网络.

net=resnet18;dlquantObj=dlquantizer(net,“执行环境”,“FPGA”); dlquantObj.校准(imdsTrain);hW=dlhdl.Workflow(“网络”,dlquantObj,“比特流”,“zcu102_int8”);

性质

全部展开

目标对象指定为目标对象

例子:“目标”,hTarget

hTarget=dlhdl.Target(“英特尔”,“界面”,“JTAG”)hW=dlhdl.Workflow(“网络”,snet,“比特流”,“arria10soc_single”,“目标”, hTarget);

方法

全部展开

例子

使用属性名称值对创建工作流对象

snet=vgg19;hW=dlhdl.Workflow(“网络”snet,“比特流”,“arria10soc_single”,“目标”, hTarget);

使用量化网络对象创建工作流对象

snet=getLogoNetwork;dlquantObj=dlquantizer(snet,“执行环境”,“FPGA”);Image=imageDatastore(“heineken.png”,“标签”,“喜力”);dlquantObj.calibrate(图像);hTarget=dlhdl.Target(“Xilinx”,“界面”,“以太网”);hW = dlhdl。工作流(“网络”,dlquantObj,“比特流”,“zcu102_int8”,“目标”, hTarget);
在R2020b中引入