Почему у нас -1 и +1 в качестве двоичных входов вместо 0 и 1
Я пытаюсь начать работу с нейронной сетью и реализовать логические функции, такие как AND/OR. Вместо использования 0 и 1 в качестве двоичных входов, они используют -1 и +1. Есть ли причина, по которой мы не можем использовать (0, 1)? Как пример: http://www.youtube.com/watch?v=Ih5Mr93E-2c
2 ответа
В большинстве случаев нет разницы. Просто используйте активацию логистической функции вместо tanh
, В некоторых специальных формах, например, модели Изинга, она может нетривиально изменить пространство параметров.
Если вы действительно имеете в виду входные данные, нет никаких ограничений на использование {-1,1}
, Вы можете так же легко использовать {0,1}
или любая другая пара действительных чисел (например, {6,42}
), чтобы определить ваши истинные / ложные входные значения.
Что может сбить вас с толку в графиках, так это то, что {-1,1}
используются в качестве выходов нейронов. Причина этого, как заявил @Memming, кроется в функции активации, используемой для нейрона. Если tanh
используется для функции активации, выход нейрона будет в диапазоне (-1,1), тогда как если вы используете логистическую функцию, ее выход будет в диапазоне (0,1). Любой из них будет работать для многослойного персептрона - вам просто нужно соответственно определить целевое значение (ожидаемый результат).