Добавляет ли brain.js свой собственный слой случайности поверх моих данных по обучению нейронной сети? - PullRequest
0 голосов
/ 01 октября 2018

Учитывая следующий код

var net = new brain.NeuralNetwork();

var data = [
    { input: { source: 1 }, output: { result: 0 } },
    { input: { source: 2 }, output: { result: 1 } },
    { input: { source: 3 }, output: { result: 0 } },
    { input: { source: 4 }, output: { result: 1 } },
    { input: { source: 5 }, output: { result: 0 } },
    //{ input: { source: 6 }, output: { result: 1 } },
    { input: { source: 7 }, output: { result: 0 } },
    { input: { source: 8 }, output: { result: 1 } },
    { input: { source: 9 }, output: { result: 0 } },
    { input: { source: 10 }, output: { result: 1 } },
];

net.train(data);
var output = net.run({ source: 6 });  

alert(output.result);

Почему повторные обновления страницы вызывают колебания результата?

(я получаю значения в диапазоне от 0,43 до> 0,51)

Я бы предположил, что в любом конкретном прогоне пустая нейронная сеть, обученная с теми же данными и затем задававшая один и тот же вопрос, должна дать тот же ответ?

Похоже, это не так.

Может кто-нибудь объяснить, почему это не так?

или альтернативно (и более вероятно)

Что я делаюне так?

Спасибо

...