Нейронная сеть - двоичный или дискретный / непрерывный ввод


14

Есть ли веские причины для предпочтения двоичных значений (0/1) дискретным или непрерывным нормализованным значениям, например (1; 3), в качестве входных данных для сети прямой связи для всех входных узлов (с обратным распространением или без него)?

Конечно, я говорю только о входах, которые могут быть преобразованы в любую форму; например, когда у вас есть переменная, которая может принимать несколько значений, либо напрямую подайте их как значение одного входного узла, либо сформируйте двоичный узел для каждого дискретного значения. И предполагается, что диапазон возможных значений будет одинаковым для всех входных узлов. Смотрите фото для примера обеих возможностей.

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

Согласитесь ли вы, что это просто «попробуй и посмотри», или у тебя другое мнение по этому поводу? Возможность первая: прямой ввод возможных значений {1; 3} Возможность вторая: получить каждое входное значение двоичного узла

Ответы:


11

f(wx+b)fx

f(wx+b)wbk

kk


Короче говоря, вы указываете на шкалу переменных: метрических, порядковых и номинальных. Ну, я думаю, что очевидно, что номинальные шкалы не могут быть «рассчитаны» или представлены функцией. Что касается реальных ценностей, то, как и вы, я склонен думать, что реальные ценности могут быть «лучше», чем «классифицированные» реальные ценности из-за более плавных переходов, но я просто не смог найти никаких веских доказательств этого. Похоже, еще один случай "проб и ошибок" для меня.
Цирко

4

Да это так. Представьте, что ваша цель - создать двоичный классификатор. Затем вы моделируете свою проблему как оценку распределения Бернулли, где, учитывая вектор признаков, результат принадлежит одному классу или противоположному. Результатом такой нейронной сети является условная вероятность. Если больше 0,5, вы связываете его с одним классом, в противном случае с другим.

E=y(x)t(1y(x))1t
y(x)tt{0,1}

Я понимаю, что нормализованный вход должен быть предпочтительным по сравнению с переменными диапазонами входных значений, поскольку это больше похоже на двоичные выходы, которые должна генерировать сеть. Но в моем вопросе я хотел обратиться к нормализованным дискретным значениям определенного диапазона, то есть, если входные данные могли быть в пределах диапазона, то все узлы должны иметь одинаковый диапазон, то есть быть нормализованными. В таком случае, будет ли это все еще будет preferrable использовать бинарные узлы для каждого дискретного значения? (Я теперь отредактировал вопрос, чтобы удовлетворить это предварительное условие)
cirko

1

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.