Я решил создать прямую нейронную сеть без использования каких-либо библиотек. Я довольно плохо знаком с предметом и полностью самообучен.
Моя нейронная сеть использует обратное распространение для установки весов, а функция активации между всеми слоями (input-hidden1-output) является функцией Sigmoid.
Допустим, я пытаюсь решить основную проблему, такую как проблема логических элементов XOr, с моим NN. Всякий раз, когда я использую полный тренировочный набор (все возможные комбинации 1 и 0), мой NN не может установить веса таким образом, чтобы он мог произвести желаемый результат. Казалось бы, это всегда останавливается на середине. (выход составляет ~ 0,5 во всех случаях)
С другой стороны, когда я повторяю только один тип ввода (скажем, 0 и 1), он быстро запоминается.
Есть ли проблема в моей функции стоимости, количестве узлов, скрытых слоев или что? Буду признателен за несколько руководящих слов!