文档帮助中心
分析深度学习网络架构
analyzeNetwork(层)
例
analyzeNetwork(层)分析由指定的深度学习网络架构层。该analyzeNetwork功能显示网络架构的交互式可视化,检测到网络中的错误和问题,并提供了关于网络层的详细信息。层信息包括层激活和可学习参数的大小,可学习参数的总数,和复发性层的状态参数的大小。
层
analyzeNetwork
使用网络分析仪来观察和了解网络架构,检查是否已正确定义的架构,并在训练前发现问题。问题:analyzeNetwork检测包括丢失或不连接的层,不正确大小的层的输入,的层输入一个不正确的数,和无效图结构。
全部收缩
加载预训练GoogLeNet卷积神经网络。
净= googlenet
净= DAGNetwork与属性:层:[144×1 nnet.cnn.layer.Layer]连接:[170×2表]
分析网络。analyzeNetwork显示网络架构的交互式情节和关于所述网络层的含表信息。
调查使用阴谋左侧的网络架构。选择在情节的一层。所选择的层中的情节,并在层表中高亮显示。
在表中,查看层信息,诸如层性能,层类型和层激活和可学习参数的大小。层的激活是该层的输出。
在网络中选择一个更深的层。请注意,在更深的层的激活是在通道尺寸(最后一维)在空间维度(前两个维度)更小和更大。采用这种结构使得能够卷积神经网络,逐渐增加,同时减小的空间分辨率提取的图像的数量的特征。
通过点击在层表的右上角的箭头示出了各个层可学习参数的总数,并选择总Learnables。要排序的列值的层表,将鼠标悬停在列标题,然后单击箭头出现。例如,可以确定哪个层由可学习参数的总数排序所述层包含最参数。
analyzeNetwork(净)
创建快捷方式连接的简单卷积网络。创建网络作为层的阵列的主支路和创建从层阵列的层图。layerGraph连接在所有层层顺序。
layerGraph
层= [imageInputLayer([32 32 3],'名称',“输入”)convolution2dLayer(5,16,'填充','相同','名称','conv_1')reluLayer('名称','relu_1')convolution2dLayer(3,16,'填充','相同',“跨越论”,2,'名称','conv_2')reluLayer('名称','relu_2')additionLayer(2,'名称','ADD1')convolution2dLayer(3,16,'填充','相同',“跨越论”,2,'名称','conv_3')reluLayer('名称','relu_3')additionLayer(3,'名称','ADD2')fullyConnectedLayer(10,'名称','FC')classificationLayer('名称',“输出”)];lgraph = layerGraph(层);
创建快捷方式连接。一个快捷方式连接的包含单个1×1的卷积层skipConv。
skipConv
skipConv = convolution2dLayer(1,16,“跨越论”,2,'名称','skipConv');lgraph = addLayers(lgraph,skipConv);lgraph = connectLayers(lgraph,'relu_1','ADD1 /英寸2');lgraph = connectLayers(lgraph,'ADD1','ADD2 /英寸2');
分析网络架构。analyzeNetwork发现网络中的四大误区。
analyzeNetwork(lgraph)
调查并在网络中修复错误。在这个例子中,以下问题导致的错误:
甲SOFTMAX层,其输出类概率,必须先于分类层。要解决在错误产量分类层,分类层之前添加SOFTMAX层。
产量
该skipConv层没有连接到网络的其余部分。它应该是之间的快捷连接的一部分ADD1和ADD2层。要修正这个错误,连接ADD1至skipConv和skipConv至ADD2。
ADD1
ADD2
该ADD2指定层具有三个输入端,但是仅层具有两个输入。修复错误,指定为输入的数量2。
2
全部投入到一个另外层必须具有相同的大小,但ADD1层具有不同大小的两个输入。由于conv_2层具有“跨越论”的2值,该层由下采样的两个因素是前两个维度的激活(空间尺寸)。要调整从输入relu2层,使得它的尺寸与从输入相同relu1,通过设置除去下采样“跨越论”值conv_2层1。
conv_2
“跨越论”
relu2
relu1
应用这些修改从这个例子开始的层结构图,并创建一个新的层图。
层= [imageInputLayer([32 32 3],'名称',“输入”)convolution2dLayer(5,16,'填充','相同','名称','conv_1')reluLayer('名称','relu_1')convolution2dLayer(3,16,'填充','相同',“跨越论”1,'名称','conv_2')reluLayer('名称','relu_2')additionLayer(2,'名称','ADD1')convolution2dLayer(3,16,'填充','相同',“跨越论”,2,'名称','conv_3')reluLayer('名称','relu_3')additionLayer(2,'名称','ADD2')fullyConnectedLayer(10,'名称','FC')softmaxLayer('名称','SOFTMAX');classificationLayer('名称',“输出”)];lgraph = layerGraph(层);skipConv = convolution2dLayer(1,16,“跨越论”,2,'名称','skipConv');lgraph = addLayers(lgraph,skipConv);lgraph = connectLayers(lgraph,'relu_1','ADD1 /英寸2');lgraph = connectLayers(lgraph,'ADD1','skipConv');lgraph = connectLayers(lgraph,'skipConv','ADD2 /英寸2');
分析新架构。新的网络不包含任何错误,并准备进行培训。
LayerGraph
SeriesNetwork
DAGNetwork
网络体系结构,指定为层阵列,LayerGraph宾语,SeriesNetwork对象,或DAGNetwork宾语。
DAGNetwork|深层网络设计师|LayerGraph|SeriesNetwork|assembleNetwork|情节|trainNetwork
assembleNetwork
情节
trainNetwork
这个例子的修改版本的系统上存在。你要打开这个版本呢?
您单击对应于该MATLAB命令的链接:
在MATLAB命令窗口中输入它运行的命令。Web浏览器不支持MATLAB的命令。万博1manbetx
选择一个网站,以获得翻译的内容,其中可看到当地的活动和优惠。根据您的位置,我们建议您选择:。
您还可以选择从下面的列表中的网站:
选择最佳的网站性能的中国网站(在中国或英文)。其他MathWorks的国家网站都没有从您的位置访问进行了优化。
请联系您当地的办事处