我正在使用MATLAB创建一个神经网络(标题中指定的版本)。
在阅读了互联网上的文档和研究之后,我仍然对net.numLayers是否包含输入层感到困惑。
换句话说,如果我想创建一个3层神经网络,如下所示:
输入图层 - 隐藏图层 - 输出图层
我应该指定
net.numLayers = 3 或 net.numLayers = 2 ?
我很困惑,因为有一个命令 net.inputs {i} .range ,其中 i 指定输入图层上的索引。我可以提醒你, i 如果不存在则为“0”,否则它应该是一个正整数。 (有关详细信息,请参阅文档)
然而,互联网上许多看起来可靠的教程让我想到了:
http://www-cs.ccny.cuny.edu/~csolb/CscI1900/xor.htm http://web.eecs.umich.edu/~someshs/nn/matlab_nn_starter.htm
如果您查看提供的链接,您将意识到他们为XOR功能构建了一个神经网络。我知道MATLAB的版本可能不同,但是大多数命令是相同的,否则在较新版本中,等效功能的语法不同。在这两个教程中,指定的图层数为2(对于隐藏和输出图层),但第二个教程使用net.layers{1}.transferFcn = 'logsig';
,其中“1”肯定会引用隐藏图层。
如果有人能澄清这一点,那将非常有帮助。
我期待着阅读一些答案。谢谢。
答案 0 :(得分:0)
不,它不包括输入层。
创建网络后,这是一个技巧(例如,net = feedforwardnet(10),其中10是输入图层的大小)。您可以键入view(net)以获取网络
的可视化视图