How to create a layer using Neural Network like the C3 Layer of LeNet?

1 次查看(过去 30 天)
the C3 Layer of LeNet-5,is not a fully connect convolutional layer. every filter of this layer only take 4~5 feature map as a input from the previous layer. how could I build this kind of layer on Matlab? Using the Neural Network ToolBox or other function?

回答(1 个)

Carl
Carl 2017-7-25
Hi Lingjun. Using the Neural Network Toolbox, you can create a convolutional neural net, and specify the number of filters to apply at each convolutional layer. The number of filters is analogous to the number of output channels, or feature maps. The following page has a good explanation of how this fits into the overall conv net structure:
https://www.mathworks.com/help/nnet/ug/layers-of-a-convolutional-neural-network.html
And here is the documentation for the convolution2dLayer function that you can use to specify the convolutional layer and the feature maps:
https://www.mathworks.com/help/nnet/ref/convolution2dlayer.html
  3 个评论
Carl
Carl 2017-7-26
Thank you for the follow up, I seem to have misunderstood your original question. As of MATLAB R2017a, this feature is not supported. See the documentation here on the 'NumChannels' property:
https://www.mathworks.com/help/nnet/ref/convolution2dlayer.html#input_argument_d0e56199
It states that "this parameter is always equal to the channels of the input to this convolutional layer," meaning that any subsequent layer will be connected to all the channels (feature maps) of the previous layer.
LINGJUN KONG
LINGJUN KONG 2017-7-27
Thanks for your reply. Hope the Matlab Group could let this software more suitable for ML

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Deep Learning Toolbox 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!