Пример простой нейронной сети с одним входом и одним выходом в Matlab - PullRequest
0 голосов
/ 05 ноября 2018

Я пытаюсь научиться использовать нейронные сети в MATLAB, и я начинаю с простого примера, который использует четыре точки данных, которые я разделил на два вектора строк. Один из них - Ввод, а другой - Темп. Входным вектором является вектор от 1 до 4. Затем я запускаю кодирование нейронной сети, которое я нашел на примерах. Теперь я хотел бы, чтобы нейронная сеть предсказала результат выборочного входного вектора, который представляет собой вектор строки [5 6].

clear all
clc
Input = [1,2,3,4];
Temp = [.25,.15,.1,.07];
Smpl = [5,6]
net = newff(minmax(Input),[20,1],{'logsig','purelin','trainlm'})
net.trainparam.epochs = 500;
net.trainparam.goal = 1e-25;
net.trainparam.lr = .01;
net = train(net,Input,Temp)
TempPr = net(Input)
error = TempPr - Temp
TempPrSmpl = net(Smpl)

Вектор строки, TempPr, сгенерированный нейронной сетью, точно совпадает с целевым вектором, Temp. Тем не менее, кажется, что я не могу правильно прогнозировать значения. Например, я пытаюсь предсказать значения температуры для входов 5 и 6, которые, как я ожидаю, будут меньше, чем 0,07. Но вместо этого возвращается код Matlab:

TempPrSmpl =

0.3560    0.3560

Два вопроса: Почему значение, возвращаемое из MATLAB больше, чем .07? Почему из MATLAB не возвращаются два разных значения (одно для 5 и одно для 6)?

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