Может ли нейронная сеть изучить шаблон мультиплексора? - PullRequest
4 голосов
/ 18 марта 2012

Допустим, у вас есть 3 входа: A, B, C.Может ли искусственная нейронная сеть (не обязательно с прямой связью) изучить этот паттерн?

if C > k
   output is A
else
   output is B

Существуют ли типы шторных сетей, которые могут или которые хорошо подходят для этого типа проблемы?

Ответы [ 2 ]

2 голосов
/ 18 марта 2012

Да, это сравнительно простой способ изучения нейронной сети с прямой связью.

Вам понадобится как минимум 3 слоя, я думаю, при условии сигмоидальных функций:

  • 1-й слой может тестироватьC> k (и, возможно, также масштабировать A и B вниз в линейный диапазон сигмоидальной функции)
  • 2-й уровень может вычислять A / 0 и 0 / B условно на 1-м уровне
  • 3-й(выходной) слой может выполнить взвешенную сумму, чтобы дать A / B (вам может потребоваться сделать этот слой линейным, а не сигмовидным, в зависимости от желаемой шкалы значений)

Сказав это, если выЕсли вы действительно знаете структуру вашей проблемы и какие вычисления вы хотите выполнить, то нейронные сети вряд ли будут наиболее эффективным решением: они лучше в ситуациях, когда вы не очень много знаете о точных вычислениях, необходимых для моделирования функций./ отношения.

1 голос
/ 27 октября 2018

Если входы могут быть только нулями и единицами, то это сеть:

enter image description here

Каждый нейрон имеет функцию шага Хевисайда в качестве функции активации. Нейроны y0 и z имеют смещение = 0,5; нейрон y1 имеет смещение = 1,5. Веса указаны над соответствующими соединениями. Когда s = 0, выходной сигнал z = d0. Когда s = 1, выходной сигнал z = d1.

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

...