文件帮助中心文件
加法层
添加层从多个神经网络层元素中添加输入。
创建它时,请指定图层的输入数。图层的输入具有名称'In1','In2',......,'Inn',在那里N为输入的个数。当通过使用连接或断开层时使用输入名称connectLayers或disconnectLayers.所有输入到加法层必须具有相同的维度。
'In1','In2',......,'Inn'
N
connectLayers
disconnectLayers
层= additionLayer (numInputs)
tillay = nogderlayer(numinputs,'name',name)
例子
层= additionLayer (numInputs)创建一个添加层,添加numInputs输入element-wise。该函数还设置NumInputs财产。
层= additionLayer (numInputs)
层
numInputs
NumInputs
层= additionLayer (numInputs,'名称',名称)还设置了名称财产。要创建包含附加层的网络,必须指定层名。
层= additionLayer (numInputs,'名称',名称)
名称
全部展开
层的输入数,指定为正整数。
输入有名称'In1','In2',......,'Inn',在那里N=NumInputs.例如,如果NumInputs等于3,那么输入就有名称“三机”、“in2”,'In3'.当通过使用连接或断开层时使用输入名称connectLayers或disconnectLayers.
“三机”、“in2”
'In3'
''
图层名称,指定为字符向量或字符串标量。要在图层图中包含此图层,必须指定图层名称。
数据类型:字符|细绳
字符
细绳
InputNames
{'In1','In2',...,'Inn'}
输入名称,指定为{“三机”,“in2”,…,“客栈”},在那里N是图层的输入数。
{“三机”,“in2”,…,“客栈”}
数据类型:细胞
细胞
numoutput.
层输出的数量。这一层只有一个输出。
数据类型:双
双
OutputNames
{'出去'}
输出层的名称。这一层只有一个输出。
全部折叠
使用两个输入和名称创建一个添加层“add_1”.
“add_1”
添加=添加层(2,'名称'那“add_1”)
添加=附加层具有属性:名称:'add_1'numinputs:2输入名称:{'In1'In2'}
创建两个ReLU层,并将它们连接到添加层。加法层将ReLU层的输出相加。
Relu_1 = uruulayer('名称'那'relu_1');relu_2 = reluLayer ('名称'那'relu_2');Lgraph = layerGraph;Lgraph = Addlayers(LGraph,Relu_1);Lgraph = AddLayers(LGraph,Relu_2);Lgraph = Addlayers(LGraph,Add);Lgraph = ConnectLayers(LAPHAGE,'relu_1'那'Add_1 / In1');Lgraph = ConnectLayers(LAPHAGE,'relu_2'那'Add_1 / In2');图(LGROPL)
为深度学习创建一个简单的有向非循环图(DAG)网络。培训网络以分类数字图像。此示例中的简单网络包括:
主要分支,层依次连接。
一种快捷连接包含单个1×1卷积层。快捷连接使参数渐变使得从输出层更容易流到网络的早期层。
将网络的主分支创建为层数组。添加层和多个输入元素明智。指定添加图层的输入数。所有图层必须具有名称,所有名称必须是唯一的。
[imageInputLayer([28 28 1],]),'名称'那'输入')卷积2dlayer(5,16,“填充”那“相同”那'名称'那'conv_1'batchnormalizationlayer('名称'那“BN_1”)剥离('名称'那'relu_1')卷积2dlayer(3,32,“填充”那“相同”那'走吧'2,'名称'那“conv_2”batchnormalizationlayer('名称'那“BN_2”)剥离('名称'那'relu_2')卷积2dlayer(3,32,“填充”那“相同”那'名称'那“conv_3”batchnormalizationlayer('名称'那“BN_3”)剥离('名称'那'relu_3') additionLayer (2'名称'那'添加')普通Pooling2dlayer(2,'走吧'2,'名称'那'avpool') fullyConnectedLayer (10'名称'那“俱乐部”) softmaxLayer ('名称'那'softmax') classificationLayer ('名称'那'ClassOutpul'));
从图层数组中创建一个图层图。layerGraph连接所有图层层数顺序地。绘制图层图。
layerGraph
层数
Lgraph = LayerGraph(层);图绘图(LGROP)
创建1乘1的卷积层,并将其添加到层图中。指定卷积过滤器的数量和步幅,以便激活大小与'relu_3'层。这种安排使添加层能够添加输出'skipconv'和'relu_3'层。要检查图层是否在图形中,请绘制图层图。
'relu_3'
'skipconv'
Skipconv = Convolution2Dlayer(1,32,'走吧'2,'名称'那'skipconv');Lgraph = Addlayers(LAPHAGH,SKIPCONV);图绘图(LGROP)
从中创建快捷方式连接'relu_1'层到了'添加'层。因为您指定了两个作为添加层的输入的数量时,所以该图层有两个名为的输入'in1'和'in2'.的'relu_3'层已经连接到'in1'输入。连接'relu_1'层到了'skipconv'层和'skipconv'层到了'in2'输入的输入'添加'层。加法层现在对输出求和'relu_3'和'skipconv'层。要检查层是否连接正确,绘制层图。
'relu_1'
'添加'
'in1'
'in2'
Lgraph = ConnectLayers(LAPHAGE,'relu_1'那'skipconv');Lgraph = ConnectLayers(LAPHAGE,'skipconv'那“添加/ in2”);图绘制(lgraph);
加载训练和验证数据,其中包含28 × 28的数字灰度图像。
[xtrain,ytrain] = Digittrain4darraydata;[xvalidation,yvalidation] = dimittest4darraydata;
指定培训选项并对网络进行培训。trainNetwork每次使用验证数据验证网络验证频繁迭代。
trainNetwork
验证频繁
选择= trainingOptions (“个”那......'maxepochs',8,......'洗牌'那“every-epoch”那......“ValidationData”{XValidation, YValidation},......“ValidationFrequency”30岁的......“详细”假的,......'plots'那'培训 - 进步');网= trainNetwork (XTrain YTrain、lgraph选项);
显示训练网络的属性。网络是一个Dagnetwork.对象。
Dagnetwork.
净
net =具有属性的Dagnetwork:图层:[16×1 nnet.cnn.layer.layer]连接:[16×2表]输入名称:{'输入'} OutputNames:{'classOutput'}
分类验证图像并计算准确性。网络非常准确。
YPredicted =分类(净,XValidation);精度=平均值(YPredicted == YValidation)
精度= 0.9930
深度扫描层|layerGraph|trainNetwork
深度扫描层
您有这个示例的修改版本。您想打开这个示例与您的编辑吗?
您单击了与此MATLAB命令对应的链接:
在MATLAB命令窗口中输入它来运行命令。Web浏览器不支持MATLAB命令。金宝app
选择一个网站,以便在可用的地方进行翻译的内容,并查看本地活动和优惠。根据您的位置,我们建议您选择:.
你也可以从以下列表中选择一个网站:
选择中国网站(以中文或英文)以获取最佳网站性能。其他MathWorks国家网站未优化您的位置。
与当地办事处联系