Случайные веса, задаваемые нейронной сети, часто сразу ограничивают часть пространства поиска, которая будет доступна во время обучения.Это особенно верно, когда скорость обучения мала.
Однако в случае XOR (с использованием топологии 3-3-1) не должно быть локальных минимумов.
Моя рекомендация заключается в том, чтопоскольку сеть настолько мала, что вы должны печатать веса ребер, когда она кажется застрявшей в локальных минимумах.Вы должны быть в состоянии быстро оценить, являются ли веса правильными и насколько далеки эти значения от создания идеальной сети.
Один трюк, который имел большое значение для меня, - это вместо обновлениявеса сразу после каждого фрагмента обучающих данных должны были объединить ошибки и обновить веса в конце эпохи.Это предотвратило раннее колебание моей сети, если первая половина моих входных данных принадлежала одному и тому же классификационному интервалу.
Что подводит меня к следующему пункту: вы уверены, что у вас есть равномерно распределенное количество обучающих примеров??Если вы предоставляете нейронную сеть с 900 положительными результатами классификации, но только с 100 отрицательными результатами классификации, иногда сети кажется, что проще сказать, что все находится в пределах группы классификации, потому что в этом случае вероятность ошибки составляет 10%.Многие алгоритмы обучения чрезвычайно хороши в поиске подобных вещей.
Наконец, функция активации должна иметь мало-мальски разное значение, независимо от того, достигает ли она локальных минимумов.Функция активации служит прежде всего как способ проецирования области действительных значений на гораздо меньший известный диапазон;(0,1) для сигмоида и (-1,1) для гиперболической функции активации тангенса.Вы можете думать об этом как о способе обеспечения равенства во всех ваших изученных функциях в данном нейронном слое (иначе масштабирование объектов).Поскольку входная область заранее не известна, она не так проста, как обычное масштабирование объектов для линейной регрессии, и, следовательно, должны использоваться функции активации, но в противном случае она компенсируется при вычислении ошибок во время обратного распространения.