Должен ли я добавить смещение к искусственной нейронной сети, которая обучается с помощью генетического алгоритма
У меня есть ANN, который контролирует искусственное травоядное животное. Входными данными являются величина и направление ближайшего растения, величина и направление ближайшего спутника, а также здоровье травоядного. Выходными данными являются вектор движения (направление и величина). Нужно ли использовать уклон, если он обучается генетическим алгоритмом?
2 ответа
Смещение используется, чтобы сдвинуть границу решения нейронной сети от начала координат. Для простого персептрона, выполняющего простую линейную классификацию, это равносильно перемещению линии, разделяющей два класса. (Подумайте о C в простой линейной регрессии.
Генетические алгоритмы - это лишь один из многих способов поиска оптимальных весов. Неважно, если у вас есть предвзятость или нет, потому что предвзятость является еще одним весом для него!
Поэтому используйте предвзятость, это может ускорить обучение и позволяет сети изучать закономерности, которые она может не изучить иначе!
Отредактируйте, чтобы ответить на ваш конкретный вопрос: нет, необязательно использовать предвзятость как таковую, сеть может работать без нее, но, поскольку это так просто внедрить и улучшить вашу сеть, используйте ее!
Вы должны использовать смещение, смещение не только позволяет решать проблемы, которые не являются линейно разделимыми; но это также позволяет тренировать псевдопороговые значения, которые являются взаимосвязями между нейроном смещения и другими нейронами. В целом, это скорее поможет вашим попыткам, чем помешает им.