Архитектура нейронной сети

Я читал газету, и авторы описали свою сеть следующим образом:

"Для обучения соответствующей глубокой сети используется полностью подключенная сеть с одним скрытым слоем. Сеть имеет девять двоичных входных узлов. Скрытый слой содержит один сигмовидный узел, а в выходном слое есть одна внутренняя функция произведения. Таким образом, Сеть имеет 10 переменных."

Сеть используется для прогнозирования непрерывного числа (y). Моя проблема в том, что я не понимаю структуру сети после сигмовидного узла. Что делает выходной слой? Для чего используется внутренний продукт?

1 ответ

Решение

Обычно функции предварительной активации на нейрон представляют собой комбинацию внутреннего продукта (или точечного продукта при умножении вектора на вектор) и одного дополнения для введения смещения. Один нейрон может быть описан как

z = b + w1*x1 + x2*x2 + ... + xn*xn
  = b + w'*x
h = activation(z)

где b аддитивный термин (смещение нейрона), и каждый h является выходом одного слоя и соответствует входу следующего слоя. В случае "выходного слоя", это то, что y = h, Слой также может состоять из нескольких нейронов или - как в вашем примере - только из отдельных нейронов.

В описанном случае кажется, что смещение не используется. Я понимаю это следующим образом:

Для каждого входного нейрона x1 в x9, используется один вес, здесь ничего особенного. Поскольку имеется девять входов, это составляет 9 весов, что приводит к чему-то вроде:

hidden_out = sigmoid(w1*x1 + w2*x2 + ... + w9*x9)

Чтобы подключить скрытый слой к выходному сигналу, применяется то же правило: входное значение выходного слоя взвешивается, а затем суммируется по всем входным данным. Поскольку имеется только один входной сигнал, только один вес должен быть "суммирован", так что

output = w10*hidden_out

Имейте в виду, что функция сигмоида сжимает свой входной сигнал в выходной диапазон 0..1, поэтому умножение его на вес перемасштабирует его до требуемого выходного диапазона.

Другие вопросы по тегам