主要内容

analyzeNetworkForCodegen

分析深入学习网络的代码生成

自从R2022b

    描述

    结果= analyzeNetworkForCodegen ()分析了深度学习网络对于代码生成和报告网络和层兼容性问题。网络必须SeriesNetwork,DAGNetwork,或dlnetwork对象。默认情况下,函数验证根据一组默认的CPU和GPU深度学习图书馆的目标。

    例子

    ___= analyzeNetworkForCodegen (___,名称,值)分析了深度学习网络对于代码生成通过使用指定的一个或多个的选项名称,值对参数。

    例子

    全部折叠

    这个例子展示了如何检查代码生成的兼容性MobileNet-v2网络使用analyzeNetworkForCodegen函数。

    您可以使用analyzeNetworkForCodegen函数来确定网络和层兼容性问题时,针对不同的CPU和GPU深度学习图书馆的目标。

    下载MobileNet-v2支持包金宝app

    下面的例子使用了pretrained MobileNet-v2可以通过的版本深度学习工具箱™模型MobileNet-v2网络金宝app支持包。

    MobileNet-v2卷积神经网络是53层深。pretrained版本的网络培训超过一百万图像从ImageNet数据库。pretrained网络图像输入的大小224 - 1000 - 224和可以分类图像到对象类别,如键盘,鼠标,铅笔,和许多动物。

    mobilenetv2
    ans = DAGNetwork属性:层:x1 nnet.cnn.layer.Layer[154]连接:[163 x2表]InputNames: {“input_1”} OutputNames: {“ClassificationLayer_Logits”}

    如果深度学习工具箱MobileNet-v2网络模型支持包没有安装,那么函数提供了一个链接到需要在插件浏览器支持包。金宝app安装支持包,单击该链接,然后单金宝app击安装

    分析网络代码生成

    运行analyzeNetworkForCodegen函数mobilenetv2分析,指定目标库。的analyzeNetworkForCodegen功能要求为深入学习MATLAB®编码器™接口为深入学习GPU编码器™接口金宝app支持包。安装所需的支持包,使用附加的探险家。金宝app

    targetLibraries = {“cudnn”,“tensorrt”,“arm-compute-mali”,“arm-compute”,“mkldnn”,“没有”,“cmsis-nn”};S = analyzeNetworkForCodegen (mobilenetv2 TargetLibrary = targetLibraries);
    金宝app支持LayerDiagnostics _____ _________________________________________________________________________________________________________________________________________________________________________________ cudnn“是的”“tensorrt“是的”“arm-compute-mali“是的”“arm-compute“是的”“mkldnn“是的”“没有一个“是的”“cmsis-nn“不”“发现6支持层类型(s)。视图层类型相矛盾的。”

    访问CMSIS-NN目标的分析结果,使用下面的命令。

    disp (S (7))
    TargetLibrary:“cmsis-nn”支持金宝app:0 NetworkDiagnostics: [0 x0表]LayerDiagnostics: [150 x3表]IncompatibleLayerTypes: [6 x1字符串)

    显示层类型不支持CMSIS-NN代码生成。金宝app

    (7).IncompatibleLayerTypes
    ans =6 x1字符串“BatchNormalizationLayer”“AdditionLayer ClippedReLULayer”“Convolution2DLayer”“GlobalAveragePooling2DLayer”“GroupedConvolution2DLayer”

    输入参数

    全部折叠

    网络分析代码生成。网络可以是一个SeriesNetwork,DAGNetwork,或dlnetwork对象为自定义训练循环或自定义修剪循环。

    名称-值参数

    指定可选的双参数作为Name1 = Value1,…,以=家,在那里的名字参数名称和吗价值相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。

    R2021a之前,用逗号来分隔每一个名称和值,并附上的名字在报价。

    例子:resultStruct = analyzeNetworkForCodegen (mobilenetv2 TargetLibrary = [“mkldnn”、“没有”]);

    目标库深度学习代码生成指定为这个表中的值之一。

    价值 描述
    “没有”

    生成不使用任何第三方库的代码。

    “arm-compute”

    生成的代码使用的手臂®计算库。

    “mkldnn”

    生成的代码使用了英特尔®数学内核库深层神经网络(英特尔MKL-DNN)。

    “cmsis-nn”

    常见的单片机软件接口标准——神经网络(CMSIS-NN)图书馆。

    要求MATLAB®编码器™界面深度学习

    “cudnn”

    使用CUDA的生成代码®深层神经网络库(cuDNN)。

    这个选项需要GPU编码器™。

    “tensorrt”

    利用了NVIDIA的生成代码®TensorRT——高性能深度学习推理优化器和运行时库。

    这个选项需要GPU编码器。

    标量布尔值抑制报告显示。默认情况下,在详细模式中显示分析功能。

    输出参数

    全部折叠

    检查的结果代码生成的深层学习网络的兼容性,作为一个返回1——- - - - - -N结构,N检查目标库的数量。

    版本历史

    介绍了R2022b