Аппроксимация z = y ^ 2 + x ^ 2 с помощью нейронной сети - PullRequest
4 голосов
/ 23 сентября 2010

Как быстро ожидается, что нейронная сеть приблизится к функции z = y ^ 2 + x ^ 2? Похоже, у меня возникают проблемы, когда я делаю входные данные отрицательными, и все веса становятся очень маленькими (* 10 ^ -16! Если использовать 2x40x1) или становятся одинаковыми (например, -0,16 и 0,16, если используются 2x20x1). Я использую 2000 примеров ввода за эпоху.

Однако, похоже, все в порядке, если все входы положительные. Что бы это могло значить?

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

Я использую backprop, нейронную сеть без смещения с 1 скрытым слоем (и все мои входы находятся между -1 и +1 и желаемыми выходами [0, 1]).

Спасибо,

Ответы [ 2 ]

0 голосов
/ 15 июля 2015

Зависит от того, для чего предназначен алгоритм?Если вы хотите только воссоздать график, нет проблем с его переоснащением, и вы должны тренировать его, пока дельта-ошибка не станет минимально возможной (около 0,0001).

Для других целей его не рекомендуется превышать- подберите данные поезда.

для получения дополнительной информации: http://neuralnetworksanddeeplearning.com/chap2.html или https://en.wikipedia.org/wiki/Backpropagation

0 голосов
/ 23 сентября 2010

При положительных входах функция монотонна.Как только вы пересекаете исходную точку, которой больше нет.

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

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