文档帮助中心
分析深度学习网络架构
analyzeNetwork(层)
例
analyzeNetwork (层)分析了指定的深度学习网络体系结构层。该analyzeNetwork功能显示网络架构的交互式可视化,检测到网络中的错误和问题,并提供了关于网络层的详细信息。层信息包括层激活和可学习参数的大小,可学习参数的总数,和复发性层的状态参数的大小。
analyzeNetwork (层)
层
analyzeNetwork
使用网络分析仪来观察和了解网络架构,检查是否已正确定义的架构,并在训练前发现问题。问题:analyzeNetwork检测包括丢失或不连接的层,不正确大小的层的输入,的层输入一个不正确的数,和无效图结构。
全部折叠
加载一个预先训练好的GoogLeNet卷积神经网络。
网= googlenet
属性:Layers:[144×1 nnet.cn . Layers .layer]连接:[170×2表]
分析了网络。analyzeNetwork显示网络架构的交互式情节和关于所述网络层的含表信息。
调查使用阴谋左侧的网络架构。选择在情节的一层。所选择的层中的情节,并在层表中高亮显示。
在表中,查看层信息,诸如层性能,层类型和层激活和可学习参数的大小。层的激活是该层的输出。
在网络中选择一个更深的层。请注意,在更深的层的激活是在通道尺寸(最后一维)在空间维度(前两个维度)更小和更大。采用这种结构使得能够卷积神经网络,逐渐增加,同时减小的空间分辨率提取的图像的数量的特征。
通过单击图层表右上角的箭头显示每个图层中可学习参数的总数并进行选择总可学的。若要按列值对层表进行排序,请将鼠标悬停在列标题上并单击出现的箭头。例如,您可以根据可学习参数的总数对各层进行排序,从而确定哪一层包含的参数最多。
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'名称',“俱乐部”) classificationLayer ('名称',“输出”));lgraph = layerGraph(层);
创建快捷方式连接。一个快捷方式连接的包含单个1×1的卷积层skipConv。
skipConv
skipConv = convolution2dLayer(1,16,“跨越论”2,'名称','skipConv');lgraph = addLayers(lgraph,skipConv);lgraph = connectLayers(lgraph,'relu_1',“add1 / in2”);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时,这一层在前两个维度(空间维度)中将对激活的采样降低一个因子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'名称',“俱乐部”)softmaxLayer('名称','SOFTMAX');classificationLayer ('名称',“输出”));lgraph = layerGraph(层);skipConv = convolution2dLayer(1,16,“跨越论”2,'名称','skipConv');lgraph = addLayers(lgraph,skipConv);lgraph = connectLayers(lgraph,'relu_1',“add1 / in2”);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的国家网站都没有从您的位置访问进行了优化。
请联系您当地的办事处