主要内容

金宝app支持的网络、层、板、工具

金宝app支持的预训练网络

深度学习HDL工具箱™支持系列卷积神经网络(cnn或C金宝apponvNets)的代码生成。您可以为任何经过训练的CNN生成代码,这些CNN的计算层支持代码生成。金宝app有关完整列表,请参见金宝app支持层.您可以使用表中列出的预训练网络之一为目标Intel生成代码®或Xilinx®FPGA板。

网络 网络描述 类型 单一数据类型(包含装运比特流) INT8数据类型(带装运比特流) 应用领域
ZCU102 ZC706 Arria10 SoC ZCU102 ZC706 Arria10 SoC 分类
AlexNet

AlexNet卷积神经网络。

系列网络 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 分类
LogoNet

Logo识别网络(LogoNet)是MATLAB开发的®开发标识识别网络。有关更多信息,请参见标志识别网络

系列网络 是的 是的 是的 是的 是的 是的 分类
DigitsNet

数字分类网络。看到创建简单的深度学习网络分类

系列网络 是的 是的 是的 是的 是的 是的 分类
车道检测

LaneNet卷积神经网络。有关更多信息,请参见采用迁移学习网络进行车道检测

系列网络 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 分类
VGG-16

VGG-16卷积神经网络。预训练的vg -16模型请参见vgg16

系列网络 不。网络超过PL DDR内存大小 不。网络容量超过FC模块内存容量。 是的 是的 不。网络容量超过FC模块内存容量。 是的 分类
VGG-19

VGG-19卷积神经网络。预训练的VGG-19模型请参见vgg19

系列网络 不。网络超过PL DDR内存大小 不。网络容量超过FC模块内存容量。 是的 是的 不。网络容量超过FC模块内存容量。 是的 分类
Darknet-19

Darknet-19卷积神经网络。关于预训练的darknet-19模型,请参见darknet19

系列网络 是的 是的 是的 是的 是的 是的 分类
雷达的分类 卷积神经网络,使用微多普勒特征来识别和分类物体。有关更多信息,请参见基于FPGA的自行车和行人分类 系列网络 是的 是的 是的 是的 是的 是的 分类和软件定义无线电(SDR)
缺陷检测snet_defnet snet_defnet是一个自定义的AlexNet网络,用于识别和分类缺陷。有关更多信息,请参见缺陷检测 系列网络 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 分类
缺陷检测snet_blemdetnet snet_blemdetnet是一种自定义卷积神经网络,用于识别和分类缺陷。有关更多信息,请参见缺陷检测 系列网络 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 分类
DarkNet-53 Darknet-53卷积神经网络。关于预训练的DarkNet-53模型,请参见darknet53 基于有向无环图(DAG)网络 是的 是的 是的 是的 是的 没有 分类
ResNet-18 ResNet-18卷积神经网络。预训练的ResNet-18模型请参见resnet18 基于有向无环图(DAG)网络 是的 是的 是的 是的 是的 是的 分类
ResNet-50 ResNet-50卷积神经网络。关于预训练的ResNet-50模型,请参见resnet50 基于有向无环图(DAG)网络 不。网络超过PL DDR内存大小。 不。网络超过PL DDR内存大小。 是的 是的 是的 是的 分类
基于resnet的YOLO v2 你只看一次(YOLO)是一个对象检测器,它从卷积神经网络解码预测,并在对象周围生成边界框。有关更多信息,请参见基于YOLO v2 FPGA的DAG网络车辆检测 基于有向无环图(DAG)网络 是的 是的 是的 是的 是的 是的 对象检测
MobileNetV2 MobileNet-v2卷积神经网络。有关预训练的MobileNet-v2模型,请参见mobilenetv2 基于有向无环图(DAG)网络 是的 是的 是的 是的 是的 是的 分类
GoogLeNet GoogLeNet卷积神经网络。有关预训练的GoogLeNet模型,请参见googlenet 基于有向无环图(DAG)网络 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 不。要使用比特流,请启用LRNBlockGeneration属性的比特流的处理器配置,并重新生成比特流。 分类
PoseNet 人体姿态估计网络。 基于有向无环图(DAG)网络 是的。 是的 是的 是的 是的 是的 分割
U-Net 用于语义图像分割的U-Net卷积神经网络。 基于有向无环图(DAG)网络 不。PL DDR内存过大。 不。PL DDR内存过大。 不。PL DDR内存过大。 不。PL DDR内存过大。 不。PL DDR内存过大。 是的 分割
基于squeezenet的YOLO v3 you-only-look-once (YOLO) v3目标检测器是一个多尺度目标检测网络,它使用特征提取网络和多个检测头在多个尺度上进行预测。 dlnetwork对象 是的 是的 没有 没有 没有 没有 对象检测
Sequence-to-sequence分类 利用长短期记忆(LSTM)网络对序列数据的每个时间步进行分类。看到使用深度学习HDL工具箱在fpga上运行序列到序列的分类 长短期记忆(LSTM)网络 是的 是的 没有 没有 没有 没有 序列数据分类
时间序列预测 利用长短期记忆(LSTM)网络预测时间序列数据。看到使用深度学习HDL工具箱™在FPGA上运行序列预测 长短期记忆(LSTM)网络 是的 是的 没有 没有 没有 没有 预测时间序列数据
逐字生成文本 通过使用长短期记忆(LSTM)网络逐字生成文本。看到通过使用深度学习HDL工具箱在fpga上逐字生成文本 长短期记忆(LSTM)网络 是的 是的 没有 没有 没有 没有 序列数据预测

金宝app支持层

深度学习HDL工具箱支持这些表中列出的层。金宝app

输入层

层类型硬件(HW)或软件(SW) 描述和限制 INT8兼容

imageInputLayer

西南

图像输入层将2-D图像输入到网络并应用数据规范化。规范化选项中心零位而且zscore可以在硬件上运行,如果编译方法HardwareNormalization参数启用,且输入数据为数据类型。如果HardwareNormalization选项未启用或输入数据类型为int8规范化在软件中运行。不支持使用函数句柄指定的规范化。金宝app看到图像输入层归一化硬件实现.当归一化属性设置为没有一个激活函数不能用于imageInputLayer

是的。在SW中作为单一数据类型运行。

featureInputLayer

西南 特征输入层将特征数据输入网络并进行数据规范化。 没有

sequenceInputLayer

西南 序列输入层向网络输入序列数据。 没有

卷积和全连通层

层类型硬件(HW)或软件(SW) 图层输出格式 描述和限制 INT8兼容

convolution2dLayer

HW 卷积(Conv)

二维卷积层对输入应用滑动卷积滤波器。

当使用该层为网络生成代码时,以下限制适用:

  • 过滤器尺寸必须为1-36。

  • 步幅必须为1-15,且为方形。

  • 填充大小必须在0-8的范围内。

  • 膨胀因子必须为[11 1]。

  • 不支持填充值。金宝app

是的

groupedConvolution2dLayer

HW 卷积(Conv)

二维分组卷积层将输入通道分成组,并应用滑动卷积滤波器。使用分组卷积层进行通道可分离(也称为深度可分离)卷积。

的2-D分组卷积层现在支持代码生成金宝appNumGroups属性设置为“channel-wise”

当使用该层为网络生成代码时,以下限制适用:

  • 过滤器尺寸必须为1-15,且为方形。例如[1 1]或[14 14]。当NumGroups设置为“channel-wise”,过滤器尺寸必须为3-14。

  • 步幅必须为1-15,且为方形。

  • 填充大小必须在0-8的范围内。

  • 膨胀因子必须为[11 1]。

  • NumGroups未设置为“channel-wise”,组数必须为1或2。

  • 的平方根的一个倍数ConvThreadNumber

  • NumGroups未设置为“channel-wise”时,每组过滤器的数量必须是的平方根的倍数ConvThreadNumber

是的

transposedConv2dLayer

HW 卷积(Conv)

转置二维卷积层上采样特征图。

当使用该层为网络生成代码时,以下限制适用:

  • 过滤器大小必须为1-8和方形。

  • 步幅必须为1-36,且为方形。

  • 填充大小必须在0-8的范围内。

  • 不支持填充值。金宝app

是的

fullyConnectedLayer

HW 全连接(FC)

全连接层将输入乘以权重矩阵,然后添加偏置向量。

当使用该层为网络生成代码时,以下限制适用:

是的

激活层

层类型硬件(HW)或软件(SW) 图层输出格式 描述和限制 INT8兼容

reluLayer

HW 层被融合。

ReLU层对输入的每个元素执行阈值操作,其中任何小于零的值都被设置为零。

只有当ReLU层前面有以下任何一金宝app层时,才支持它:

  • 卷积

  • 完全连接

  • 加法器

是的

leakyReluLayer

HW 层被融合。

泄漏的ReLU层执行阈值操作,其中任何小于零的输入值乘以一个固定的标量。

漏水的ReLU层只有在前面有以下任何一层时才金宝app会被支持:

  • 卷积

  • 完全连接

  • 加法器

是的

clippedReluLayer

HW 层被融合。

剪切的ReLU层执行阈值操作,其中任何小于零的输入值都被设置为零,任何高于剪切上限的值都被设置为该剪切上限值。

只有当剪切的ReLU层前面有以下任何一层时,才支金宝app持它:

  • 卷积

  • 完全连接

  • 加法器

是的

tanhLayer

HW 从输入继承

双曲正切(tanh)激活层对层输入应用tanh函数。

没有

归一化、删除和裁剪图层

层类型硬件(HW)或软件(SW) 图层输出格式 描述和限制 INT8兼容

batchNormalizationLayer

HW 层被融合。

批处理归一化层将跨小批处理的每个输入通道归一化。

当前面有图像输入层或卷积层时,支持批处理归一层。金宝app

是的

crossChannelNormalizationLayer

HW 卷积(Conv)

信道局部响应(跨信道)归一层执行信道归一化。

WindowChannelSize代码生成必须在3-9的范围内。

是的。在HW中作为单一数据类型运行。

dropoutLayer

推理NoOP 推理NoOP

dropout层在给定的概率内随机地将输入元素设置为零。

是的

resize2dLayer(图像处理工具箱)

HW 从输入继承

2-D调整层通过比例因子调整2-D输入的大小,到指定的高度和宽度,或者到参考输入特征映射的大小。

当使用该层为网络生成代码时,以下限制适用:

  • 方法属性必须设置为最近的

  • GeometricTransformationMode属性必须设置为half-pixel

  • NearestRoundingMode属性必须设置为

  • 输出大小与输入大小之比必须为2 ~ 256之间的整数。

没有

池化和解池化层

层类型硬件(HW)或软件(SW) 图层输出格式 描述和限制 INT8兼容

maxPooling2dLayer

HW 卷积(Conv)

最大池化层通过将层输入划分为矩形池化区域并计算每个区域的最大值来进行下采样。

当使用该层为网络生成代码时,以下限制适用:

  • 池大小必须为1-36。

  • 步幅必须为1-15,且为方形。

  • 填充大小必须在0-2范围内。

HasUnpoolingOutputs是支持金宝app的。当启用此参数时,这些限制适用于该层的代码生成:

  • 池大小必须为2 × 2或3 × 3。

  • 步幅大小必须与过滤器大小相同。

  • 不支持填充大小。金宝app

  • 滤镜大小和步幅大小必须为方形。例如,[2 2]。

是的

不,当HasUnpoolingOutputs启用。

maxUnpooling2dLayer

HW 卷积(Conv)

最大池化层解除最大池化层的输出。

没有

averagePooling2dLayer

HW 卷积(Conv)

平均池化层通过将层输入划分为矩形池化区域并计算每个区域的平均值来进行下采样。

当使用该层为网络生成代码时,以下限制适用:

  • 池大小必须为1-36。

  • 步幅必须为1-15,且为方形。

  • 填充大小必须在0-2范围内。

是的

globalAveragePooling2dLayer

HW 卷积(Conv)

全局平均池化层通过计算输入的高度和宽度维度的平均值来执行下采样。

当使用该层为网络生成代码时,以下限制适用:

  • 当该层在Conv模块中实现时,池的大小必须为1-36和平方。

  • 可以接受最大15 × 15 × n的输入。

是的

结合层

层类型硬件(HW)或软件(SW) 图层输出格式 描述和限制 INT8兼容

additionLayer

HW 从输入继承。

添加层按元素添加来自多个神经网络层的输入。

现在,您可以为该层生成代码int8当该层与Leaky ReLU或Clipped ReLU层结合时,数据类型。

当使用该层为网络生成代码时,以下限制适用:

  • 两个输入层必须具有相同的输出层格式。例如,两层都必须有conv输出格式或fc输出格式。

是的

depthConcatenationLayer

HW 从输入继承。

深度连接层接受具有相同高度和宽度的输入,并沿着第三维(通道维)将它们连接起来。

当使用该层为网络生成代码时,以下限制适用:

  • 输入激活特征号必须是的平方根的倍数ConvThreadNumber

  • 具有conv输出格式的层和具有FC输出格式的层不能连接在一起。

是的

multiplicationLayer

HW 从输入继承 乘法层将来自多个神经网络层的输入按元素进行乘法。 没有

序列层

层类型硬件(HW)或软件(SW) 描述和限制 INT8兼容

lstmLayer

HW

LSTM层学习时间序列和序列数据中时间步长之间的长期依赖关系。该层执行加法相互作用,这可以帮助改善训练过程中长序列的梯度流动。

当使用该层为网络生成代码时,以下限制适用:

  • 输入必须是单一数据类型。

  • OutputMode属性必须设置为序列

没有

输出层

层类型硬件(HW)或软件(SW) 描述和限制 INT8兼容

softmaxLayer

SW和HW

softmax层对输入应用一个softmax函数。

如果softmax层在硬件中实现:

  • 输入值必须在-87 ~ 88之间。

  • 不支持Softmax层后面加法器层或深度拼接层。金宝app

  • 该层的输入必须具有1 × n、n × 1、1 × 1 × n、n × 1 × 1和1 × n × 1的格式。

  • 如果深度学习处理器的卷积模块被启用,那么卷积线程数的平方根必须是2的整数次幂。如果不是,则在软件中实现该层。

是的。在SW中作为单一数据类型运行。

classificationLayer

西南

分类层计算具有互斥类的多类分类问题的交叉熵损失。

是的

regressionLayer

西南

回归层计算回归问题的一半均方误差损失。

是的

sigmoidLayer

SW和HW

sigmoid层对输入应用sigmoid函数。

当数据类型为sigmoid层在深度学习处理器配置的自定义模块中实现。当使用此层为网络生成代码时,使用这些限制适用的数据类型:

  • 输入值必须在-87 ~ 88之间。

在SW中作为单一数据类型运行。

是的。当数据类型为int8sigmoid层在深度学习处理器配置的全连接(FC)模块中实现。当使用此层为网络生成代码时,使用int8这些限制适用的数据类型:

  • 输入值必须在-87 ~ 88之间。

  • 不支持Sigmoid层后面加法器层或深度拼接层。金宝app

  • 该层的输入必须具有1 × n、n × 1、1 × 1 × n、n × 1 × 1和1 × n × 1的格式。

  • 如果深度学习处理器的卷积模块被启用,那么卷积线程数的平方根必须是2的整数次幂。如果不是,则在软件中实现该层。

Keras和ONNX图层

层类型硬件(HW)或软件(SW) 图层输出格式 描述和限制 INT8兼容
nnet.keras.layer.FlattenCStyleLayer HW 图层将被融合

将激活平铺成1-D层,假设c风格(行为主)顺序。

一个nnet.keras.layer.FlattenCStyleLayer仅当它金宝app后面跟着一个全连接层时才支持。

是的

nnet.keras.layer.ZeroPadding2dLayer HW 图层将被融合。

零填充层为2-D输入。

一个nnet.keras.layer.ZeroPadding2dLayer仅当它金宝app前面有卷积层或maxpool层时才支持。当后面跟着一个分组卷积层时,支持零填充层。金宝app

是的

自定义图层

层类型硬件(HW)或软件(SW) 图层输出格式 描述和限制 INT8兼容
自定义图层 HW 从输入继承 自定义层,包含或不包含您为问题定义的可学习参数。若要了解如何定义自定义深度学习层,请参见为自定义层创建深度学习处理器配置 没有

金宝app支持董事会

这些板由深度学习HDL工具箱支持:金宝app

  • Xilinx Zynq®-7000年ZC706

  • 英特尔Arria®10 SoC

  • Xilinx Zynq UltraScale+™MPSoC ZCU102

第三方合成工具和版本支持金宝app

深度学习HDL工具箱已经过测试:

  • Xilinx Vivado®设计套件2020.2

  • 英特尔第四的®主要标准20.1.1

图像输入层归一化硬件实现

为图像输入层启用归一化函数的硬件实现,请设置HardwareNormalization的参数编译方法汽车.当HardwareNormalization设置为汽车, compile方法查找加法和乘法层的存在,以便在硬件上实现归一化功能。在硬件上通过以下方式实现规范化:

  • 创建一个新的常量层,该层保存要减去的值。

  • 使用现有的加法和乘法层。要使用的层取决于正在实现的归一化函数。

固定层缓冲内容

该表描述了存储在常量层缓冲区中的值。

归一化函数 常数的数目 固定层缓冲值
zerocenter 1 ——意思是
zscore 2 第一个常数值是的意思是.第二个常数值是1 / StandardDeviation

相关的话题