Обучение нейронных сетей
Перед использованием нейронной сети ее необходимо обучить.
Процесс обучения нейронной сети заключается в подстройке ее внутренних параметров под конкретную задачу.
Алгоритм работы нейронной сети является итеративным, его шаги называются эпохами или циклами.
Эпоха – одна итерация в процессе обучения, включающая предъявление всех примеров из обучающей выборки и, возможно, проверку качества обучения на контрольном множестве.
Процесс обучения осуществляется на обучающей выборке.
Обучающая выборка включает входные значения и соответствующие им выходные значения набора данных. В ходе обучения нейронная сеть находит зависимости выходных полей от входных.
Таким образом, перед обучением нейронной сети следует указать какие входные поля (признаки) необходимо использовать. Первоначально выбор осуществляется эвристически, далее количества входов может быть изменено.
Количество необходимых наблюдений зависит от сложности решаемой задачи. При увеличении количества признаков количество наблюдений возрастает нелинейно. При недостаточном количестве данных рекомендуется использовать линейную модель.
Аналитик должен определить количество слоев в сети и количество нейронов в каждом слое.
Далее необходимо назначить такие значения весов и смещений, которые смогут минимизировать ошибку решения. Веса и смещения автоматически настраиваются таким образом, чтобы минимизировать разность между желаемым и полученным на выходе сигналом, которая называется ошибка обучения.
Ошибка обучения для построенной нейронной сети вычисляется путем сравнения выходных и целевых значений. Из полученных разностей формируется функция ошибок.
Функция ошибок – это целевая функция, требующая минимизации в процессе управляемого обучения нейронной сети.
С помощью функции ошибок можно оценить качество работы нейронной сети во время обучения.
От качества обучения нейронной сети зависит ее способность решать поставленные перед ней задачи.
При обучении нейронных сетей часто возникает серьезная трудность, называемая проблемой переобучения.
Переобучение – это излишне точное соответствие нейронной сети конкретному набору обучающих примеров, при котором сеть теряет способность в обобщению.
Переобучение возникает в случае слишком долгого обучения, недостаточного числа обучающих примеров или переусложненной структуры нейроннойсети.
Переобучение связано с тем, что выбор обучающей выборки является случайным. С первых шагов обучения происходит уменьшение ошибки. На последующих шагах с целью уменьшения ошибки (целевой функции) параметры подстраиваются под особенности обучающей выборки.
Один из вариантов борьбы с переобучением сети – деление обучающей выборки на два непересекающихся множества.
Дата добавления: 2016-04-14; просмотров: 1064;