2015-07-27 13 views
0

Я относительно новичок в нейронных сетях, поэтому мне было очень интересно, когда я столкнулся с этой тенденцией в своих данных. У меня есть многослойная сеть персептрона, использующая обратное распространение без импульса. Скорость обучения составляет 0,02, а минимальная допустимая погрешность при обучении равна 0,01. Сеть должна была научиться правильно применять операцию xor по двум логическим значениям (их значения равны 1 или 0). Есть предвзятые нейроны, чтобы противостоять тому, что проблема xor не имеет линейной разделимости (не уверен, правильно ли я сформулировал это). Нейроны сети используют передаточную функцию Sigmoid. Мне было интересно, почему график растет в этой тенденции. После рандомизации весов сети и повторного обучения, график всегда отображается так. Почему это? Screenshot of the error graphТенденция об ошибках нейронной сети

+0

Какую тенденцию вы ожидали? –

+0

@AndreaIacono Может быть, убывающий линейный граф или экспоненциальный распад? – Michael

ответ

2

Для меня это выглядит правильно, и, возможно, вы просто неправильно читаете график. На оси х у вас есть итерации. Вы можете считать это осью времени для упрощения. Ваша ось y - это ошибка сети (чем ниже, тем лучше). Так как время прогрессирует во время обучения, ваша сеть дает лучшие результаты (с более низкой ошибкой).

+0

Но почему в середине есть платообразная форма? – Michael

+0

Могло быть много причин. Обучение ANN почти никогда не является линейным, и существует много так называемых «плоских областей», где весы должны меняться на очень большое значение, чтобы повлиять на небольшое изменение ошибки. Многие разные методы обучения и правила обновления веса пытаются справиться с этим по-разному. Вы пытались изменить скорость обучения (обычно называемую альфа или лямбдой) и посмотреть, можете ли вы избавиться от плато? – nitbix

+0

О, ладно, спасибо, это имеет смысл! – Michael

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