1

В настоящее время я пытаюсь создать три слоя нейронные network.When я начал пытаться обучение XOR, это, хотя приходила мне в голову:Нули как Neural Network Input

double NewWeight(double oldWeight){ 
return oldWeight+(MeanSquaredError*input*learningRate); 
} 

Это формула для нового веса согласно http://natureofcode.com/book/chapter-10-neural-networks/

Во-первых, если у меня есть нуль независимо от ошибки, вес останется прежним. Решено ли это с помощью смещения?

Во-вторых, нейронные сети часто имеют более двух входов (например, в XOR). В таком случае вам нужно было бы добавить два входа? Или, может быть, найти среднее значение веса с отдельными входами?

Если вы предлагаете использовать другую новую весовую функцию, пожалуйста, не отправляйте уравнение без объяснения символов, стоящих за ним. Благодаря!

+0

Это сообщение не относится к сообществу. Вы должны рассмотреть сообщество A.I. – 0Tech

ответ

0

Во-первых, смещение ничего не меняет. Обычно смещение реализуется дополнительным входом с константой 1 и весом как смещение. См. https://en.wikipedia.org/wiki/Perceptron#Definitions.

Во-вторых, вы вычисляете весы для каждого края вашей сети. Итак, если у вас есть два входа, вы вычисляете весы для каждого из них.

Я бы сказал, что если у вас есть 0 в качестве входных данных, у вас нет информации. Без информации вы не можете сказать, как изменить вес. Ваша функция абсолютно правильна для обратного распространения.

 Смежные вопросы

  • Нет связанных вопросов^_^