Один из способов определения надобности использования смещений на входах нейронов заключается в том, что входа каждого нейрона в сети задаются в N-мерном пространстве, а сам нейрон располагается в одной плоскости по отношению к его выходу, в случае положительной реакции, и в другой в случае отрицательной. Здесь стоит заметить, что в случае использования в качестве активационных нелинейный сигмоидальные функции, то точно провести выходную плоскость решения уже невозможно, она будет иметь вид некой заполненной области промежуточных решений возле разделяющей плоскости, однако в данном контексте это не столь важно.
Значения весовых коэффициентов определяется в случае нахождения их плоскости в пространстве входов нейрона. Без использования смещения эта разделительная плоскость сильно ограничена по сравнению с обычной (со смещением) пространством входов нейрона. Для некоторых задач это не является большой проблемой, но в большинстве случаев это ограничение может сильно помешать процессу обучения сети, то есть настройке синапсов. Если у вас большое количество входов у нейронов, которые образуют некоторое ограниченное пространство, то без смещения это пространство будет очень сильно ограничено и не попадет в область решений.
Активационные функции нужны для введения в нейронную сеть нелинейности. Без нелинейности скрытые слоя в сети не смогут давать полезного эффекта, перед просто линейными персептронами (которые не имеют скрытых слоев, только входной и выходной). Основной проблемой в данном контексте является то, что комбинация линейных функций даст на выходе опять линейную функцию. Однако именно нелинейность делает многослойные персептроны столь мощными Любые задачи, которые ставятся перед НС, могут быть решены с помощью нелинейных функций, однако их наличие сильно усложняет алгоритмы обучения, ухудшая быстродействие сети в целом. Наиболее часто в качестве нелинейных активационных функций используются сигмоидальные (например, гиперболический тангенс или радиальная сигмоида) и функции Гаусса. |