Нейронная сеть 0 против -1 - PullRequest
       40

Нейронная сеть 0 против -1

6 голосов
/ 02 февраля 2010

Несколько раз я видел людей, использующих -1 вместо 0 при работе с нейронными сетями для ввода данных. Как это лучше и влияет ли это на какую-либо математику, чтобы реализовать это?

Редактировать: Использование обратной связи и обратной поддержки

Редактировать 2: Я попробовал, но сеть перестала учиться, поэтому я предполагаю, что математику придется где-то менять?

Редактировать 3: Наконец-то нашел ответ. Математика для двоичного кода отличается от биполярного. Смотрите мой ответ ниже.

Ответы [ 3 ]

8 голосов
/ 09 марта 2010

Недавно было обнаружено, что формула сигмоидного и сигмовидного производных должна меняться при использовании биполярного по сравнению с бинарным.

Биполярная сигмоидная функция: f(x) = -1 + 2 / (1 + e^-x)

Биполярное производное сигмоидного: f’(x) = 0.5 * (1 + f(x)) * (1 – f(x) )

0 голосов
/ 03 февраля 2010

Сеть обучается быстро, используя -1/1 входы по сравнению с 0/1. Также, если вы используете входы -1/1, 0 означает «неизвестный вход / шум / не имеет значения». Я бы использовал -1/1 в качестве входного сигнала моей нейронной сети.

0 голосов
/ 02 февраля 2010

Это было долгое время, но, насколько я помню, это не влияет на математику, необходимую для реализации сети (при условии, что вы не работаете с типом сети, который по какой-то причине ограничивает какую-либо частьпроцесса до неотрицательных значений).Одним из преимуществ является то, что он делает большее различие между входами и помогает усилить обучающий сигнал.Аналогично для выходов.

Кто-то, кто сделал это совсем недавно, вероятно, может сказать больше (например, о том, имеет ли значение пересечение 0; я думаю, что это так).И в действительности это зависит от того, какой тип нейронной сети вы используете.Я предполагаю, что вы говорите о backprop или его варианте.

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