MATLAB нейронные сети - PullRequest
       18

MATLAB нейронные сети

0 голосов
/ 11 мая 2011

Я использую простой набор входных и выходных данных XOR для обучения нейронной сети, прежде чем пытаться что-то сложнее, но по какой-то причине это не сработает.

Может кто-нибудь, пожалуйста, объясните, что я делаюнеправильно пожалуйста?Это мой код:

    %user specified values
hidden_neurons = 3;
epochs = 10000;

t_input = [1 1; 1 0; 0 1; 0 0];
t_output = [1; 0; 0; 1];
te_input = [1 1; 1 0; 0 1; 0 0];

net = newff(t_input, t_output, 1);
net = init(net);
net = train(net, t_input, t_output);
net.trainParam.show = 50;
net.trainParam.lr = 0.25;
net.trainParam.epochs = epochs;
net.trainParam.goal = 1e-5;
net = train(net, t_input, t_output);
out = sim(net, te_input);

Это мое сообщение об ошибке:

???Ошибка при использовании ==> network.train на 145 Цели имеют неверный размер для сети.Матрица должна иметь 2 столбца.

Ошибка в ==> smallNN в 11 net = train (net, t_input, t_output);

1 Ответ

1 голос
/ 13 мая 2011

Вы должны иметь свои образцы в столбцах, а не в строках (как это делают все программы NN в мире), поэтому измените строки создания наборов данных в:

t_input = [1 1; 1 0; 0 1; 0 0]';
t_output = [1; 0; 0; 1]';
te_input = [1 1; 1 0; 0 1; 0 0]';

Теперь это работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...