解释Alexnet深度学习吗?
6视图(30天)
显示旧的评论
我需要有人来解释我以下问题:
这是我的代码的一部分,我的问题是:
1。coluld请你写一些解释评论只针对以下代码只的一部分(emoveLayers、inputLayer replaceLayer, addLayers connectLayers。
2。我认为这段代码是相同的工作当我们修改AlexNet (deepNetworkDesigner)我说的对吗?或者两种方式之间有什么不同(手动/ deepNetworkDesigner和编码)如下代码?
lgraph = layerGraph (net.Layers);
lgraph = removeLayers (lgraph,“fc8”);%请评论在这里解释? ? ?
lgraph = removeLayers (lgraph,“概率”);
lgraph = removeLayers (lgraph,“输出”);
%创建和添加层
inputLayer = imageInputLayer(图象尺寸1,“名字”net.Layers (1) . name,…%请在这里发表评论
“DataAugmentation”.DataAugmentation net.Layers (1),…
“归一化”,net.Layers (1) .Normalization);
lgraph = replaceLayer (lgraph net.Layers (1) . name, inputLayer);
newConv1_Weights = net.Layers (2) .Weights;
newConv1_Weights =意味着(newConv1_Weights (1:3,:,::), 3);%的意思是内核频道
newConv1 = convolution2dLayer (net.Layers (2) .FilterSize (1) net.Layers (2) .NumFilters,…
“名字”net.Layers (2) . name,…
“NumChannels”inputLayer.InputSize (3),…
“步”.Stride net.Layers (2),…
“DilationFactor”.DilationFactor net.Layers (2),…
“填充”.PaddingSize net.Layers (2),…
“重量”newConv1_Weights,…BiasLearnRateFactor
“偏见”.Bias net.Layers (2),…
“BiasLearnRateFactor”net.Layers (2) .BiasLearnRateFactor);
lgraph = replaceLayer (lgraph net.Layers (2) . name, newConv1);%请评论在这里解释吗?
lgraph = addLayers (lgraph fullyConnectedLayer (numClasses“名字”,“取得”));
lgraph = addLayers (lgraph softmaxLayer (“名字”,“softmax”));%请评论在这里解释吗?
lgraph = addLayers (lgraph classificationLayer (“名字”,“输出”));
lgraph = connectLayers (lgraph,“drop7”,“取得”);%请评论在这里解释? ? ?
lgraph = connectLayers (lgraph,“取得”,“softmax”);
lgraph = connectLayers (lgraph,“softmax”,“输出”);
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
0评论
接受的答案
默罕默德·萨米
2020年9月7日
这段代码是学习为转移。这是当你已经有一个pretrained模型,您希望用于另一个目的。这个过程是在MATLAB的文档中详细解释。
使用深度网络设计师:
Usign手动方法:
自网络训练与不同的类然后你当前的目的,你必须删除最后几层至少从去年完全连接层开始。这是因为最终完全连接层需要有相同的输出大小类的数量在你的数据。
然后您必须创建新层的层移除。新完全连接层的输出尺寸匹配类的数量在你的数据。最后你可以添加这些新层来完成你的网络连接。