MATLAB 7.12 R2011a Neural Network Toolbox - Включает ли значение net.numLayers входной слой? - PullRequest
1 голос
/ 14 марта 2012

Я создаю нейронную сеть, используя MATLAB (версия указана в заголовке).

После прочтения документации и исследований в Интернете я все еще не понимаю, включает ли net.numLayers входной слой.

Другими словами, если я хочу создать 3-слойную нейронную сеть следующим образом:

Входной слой - Скрытый слой - Выходной слой

я должен указать

net.numLayers = 3 или net.numLayers = 2 ?

Я запутался, потому что есть команда net.inputs {i} .range , где i указывает index на входном слое. Позвольте напомнить вам, что 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" определенно будет ссылаться на скрытый слой.

Если бы кто-то мог уточнить это, это было бы очень полезно.

Я с нетерпением жду, чтобы прочитать некоторые ответы. Спасибо.

1 Ответ

0 голосов
/ 14 марта 2012

Нет, он не включает входной слой.

Вот трюк, после того как вы создали свою сеть (скажем, net = feedforwardnet (10), где 10 - это размер ваших входных слоев),Вы можете набрать view (net), чтобы получить визуальное представление о сети enter image description here

...