主要内容

预测

类别:dlhdl.Workflow
包裹:dlhdl

在部署的网络上运行推理,并在指定的目标设备上部署神经网络的配置速度

描述

例子

预测(图片预计在图像数据响应IMDS.通过使用您在dlhdl.Workflow类在指定的目标板上部署,并返回结果。

预测(图片名称,价值预计在图像数据响应IMDS.通过深学网您指定使用dlhdl.Workflow类指定目标上板和返回的结果,与由可选的名称 - 值对参数中指定的一个或多个参数的部署。

输入参数

展开全部

输入图像,指定为m-借-ñ-借-K.数字数组。mñK.必须在深学习网络输入的图像层的尺寸相匹配。例如,对于网络LogoNet,调整输入图像的227-通过-227×3阵列。

数据类型:单身的

名称 - 值参数

指定可选的逗号分离对名称,价值论据。姓名是参数名称和价值是对应的值。姓名必须出现引号内。您可以按照任何顺序指定多个名称和值对参数名称1,值1,…,名称,值

例子:

用于返回配置文件结果的标志,用于部署到目标板的深度学习网络。

例子:“个人资料”,“论”

例子

展开全部

  1. 创建一个dlhdl.Workflow对象,该对象将VGG-19作为网络参数,arria10soc_单作为比特流参数,hTarget作为目标参数。

    %保存预训练SeriesNetwork对象SNET = vgg19;%创建目标对象和定义接口到目标板hTarget = dlhdl.Target('英特尔');%使用FPFA位流为SeriesNetwork创建工作流对象hW=dlhdl.Workflow(“网络”,SNET,“比特流”“arria10soc_单人”'目标',hTarget);
  2. 加载输入图像和调整输入图像以匹配VGG-19网络输入的图像层的大小。

    %加载输入图像并根据网络规格调整其大小图像= imread('zebra.jpeg');inputImg = imresize(图像,[224,224]);imshow(inputImg);IMIN =单(inputImg);
  3. 部署dlhdl.Workflow通过使用对象到目标FPGA板部署方法。使用预测方法。

    %部署工作流对象hW.deploy;%预测结果,并可选配置文件中的结果来衡量绩效。[预测,速度]=硬件预测(imIn,'轮廓''在'); [val,idx]=max(预测);snet.Layers(end).ClassNames{idx}

这个例子说明了如何使用预测方法来检索用于从已部署的量化LogoNet网络的输入图像的预测结果。

  1. 创建在当前工作文件夹中一个名为getLogoNetwork.m。输入这些行到文件中:

    作用net=getlogonnetworkdata=getLogoData;net=data.convnet;结尾作用data=getLogoData如果〜ISFILE('LogoNet.mat')URL ='//www.tatmou.com/金宝appsupportfiles/gpucoder/cnn_models/logo_detection/LogoNet.mat';websave('LogoNet.mat',网址);结尾数据=负载('LogoNet.mat');结尾
  2. 创建图像数据存储,并将70%的图像分割为训练数据集,将30%的图像分割为验证数据集。

    CURDIR = PWD;NEWDIR =完整文件(matlabroot,“例子”'deeplearning_shared'“数据”'logos_dataset.zip');的CopyFile(NEWDIR,CURDIR);解压('logos_dataset.zip');imds=图像数据存储('logos_dataset'......“包含子文件夹”,真的,......“标签源”'foldernames');[imdsTrain,imdsValidation] = splitEachLabel(IMDS,0.7%,“随机化”);

  3. 创建一个dlhdl.Workflow对象,该对象将量化LogoNet作为网络参数,zcu102_int8作为比特流,和hTarget作为目标参数。

    量化的网络,你需要下面列出的产品下载188bet金宝搏FPGA.量化工作流先决条件

    %保存预训练SeriesNetwork对象snet=getlogonnetwork;%创建目标对象和定义接口到目标板hTarget = dlhdl.Target(“赛灵思”“接口”“以太网”);%产生量化网络对象dlquantObj = dlquantizer(SNET,“执行环境”'FPGA');dlquantObj.calibrate(imdsTrain);%使用FPFA位流为SeriesNetwork创建工作流对象hW=dlhdl.Workflow(“网络”,dlquantObj,“比特流”“zcu102_int8”'目标',hTarget);
  4. 检索从随机图像logos_dataset

    指数= randperm(numel(imdsValidation.Files),1)= IMIN readimage(imdsValidation,索引)inputImg = imresize(IMIN,[227 227]);
  5. 部署dlhdl.Workflow通过使用对象到目标FPGA板部署方法。通过使用取回的图像预测预测方法。

    %部署工作流对象hW.deploy;%预测结果,并可选配置文件中的结果来衡量绩效。[预测,速度] = hW.predict(单(inputImg),'轮廓''在'); [val,idx]=max(预测);snet.Layers(end).ClassNames{idx}
介绍了在R2020b