Моделирование нейронных сетей для прогнозирования стоимости недвижимости
Количество нейронов в каждом из слоев может быть любым и не зависит от количества нейронов в других слоях. Число нейронов входного слоя определяется числом входных факторов задачи, выходного слоя – числом выходных факторов. Количество скрытых слоев и число нейронов в них может быть различным; обычно оно подбирается эмпирическим путем так, чтобы сеть обучилась наилучшим образом. Именно наличие с
крытых слоев позволяет выявлять сложные, нелинейные взаимосвязи между входными и выходными факторами. Определение числа промежуточных слоев и числа элементов в них является важным вопросом при конструировании МП.
Модель МП имеет следующие отличительные признаки:
1. Каждый нейрон сети имеет нелинейную функцию активации.
Важно подчеркнуть, что такая нелинейная функция должна быть гладкой (т.е. всюду дифференцируемой). Самой популярной формой функции, удовлетворяющей этому требованию, является сигмоидальная. Примером сигмоидальной функции может служить логистическая функция, задаваемая следующей формулой.
(4.7)
где – параметр наклона сигмоидальной функции. Изменяя этот параметр, можно построить функции с различной крутизной.
Наличие нелинейности играет очень важную роль, так как в противном случае отображение «вход-выход» сети можно свести к однослойному персептрону.
2. Несколько скрытых слоев.
МП содержит один или несколько слоев скрытых нейронов, не являющихся частью входа или выхода сети. Эти нейроны позволяют сети обучаться решению сложных задач, последовательно извлекая наиболее важные признаки из входного образа.
3. Высокая связность.
МП обладает высокой степенью связности, реализуемой посредством синаптических соединений. Изменение уровня связности сети требует изменения множества синаптических соединений или их весовых коэффициентов.
Комбинация всех этих свойств наряду со способностью к обучению на собственном опыте обеспечивает вычислительную мощность многослойного персептрона. Однако эти же качества являются причиной неполноты современных знаний о поведении такого рода сетей: распределенная форма нелинейности и высокая связность сети существенно усложняют теоретический анализ многослойного персептрона.
4.3.2 Обучение МП
Под обучением искусственных нейронных сетей понимается процесс настройки архитектуры сети (структуры связей между нейронами) и весов синаптических связей (влияющих на сигналы коэффициентов) для эффективного решения поставленной задачи. Обычно обучение нейронной сети осуществляется на некоторой выборке. По мере процесса обучения, который происходит по некоторому алгоритму, сеть должна все лучше и лучше (правильнее) реагировать на входные сигналы.
Выделяют три парадигмы обучения: с учителем, без учителя (или самообучение) и смешанная. В первом способе известны правильные ответы к каждому входному примеру, а веса подстраиваются так, чтобы минимизировать ошибку. Обучение без учителя позволяет распределить образцы по категориям за счёт раскрытия внутренней структуры и природы данных. При смешанном обучении комбинируются два вышеизложенных подхода.
Среди множества алгоритмов обучения с учителем наиболее успешным является алгоритм обратного распространения ошибки, который был предложен для обучения многослойной сети в 1986 г. Руммельхартом и Хинтоном. Многочисленные публикации о промышленных применениях многослойных сетей с этим алгоритмом обучения подтвердили его принципиальную работоспособность на практике. Его основная идея заключается в том, что изменение весов синапсов происходит с учетом локального градиента функции ошибки. Разница между реальными и правильными ответами нейронной сети, определяемыми на выходном слое, распространяется в обратном направлении (рисунок 4.8) - навстречу потоку сигналов. В итоге каждый нейрон способен определить вклад каждого своего веса в суммарную ошибку сети. Простейшее правило обучения соответствует методу наискорейшего спуска, то есть изменения синаптических весов пропорционально их вкладу в общую ошибку.
Рисунок 4.8 – Метод обратного распространения ошибки для многослойной полносвязной нейронной сети
При подобном обучении нейронной сети нет уверенности, что она обучилась наилучшим образом, поскольку всегда существует возможность попадания алгоритма в локальный минимум (рисунок 4.9). Для этого используются специальные приемы, позволяющие «выбить» найденное решение из локального экстремума. Если после нескольких таких действий нейронная сеть сходится к тому же решению, то можно сделать вывод о том, что найденное решение, скорее всего, оптимально.
Поправка к весовым коэффициентам:
(4.8)
где w - коэффициент синаптической связи, η - коэффициент скорости обучения сети, Е - функция суммарной ошибки сети.
Рисунок 4.9 – Метод градиентного спуска при минимизации ошибки сети. Попадание в локальный минимум
Основная идея обратного распространения состоит в том, как получить оценку ошибки для нейронов скрытых слоев. Заметим, что известные ошибки, делаемые нейронами выходного слоя, возникают вследствие неизвестных пока ошибок нейронов скрытых слоев. Чем больше значение синаптической связи между нейроном скрытого слоя и выходным нейроном, тем сильнее ошибка первого влияет на ошибку второго. Следовательно, оценку ошибки элементов скрытых слоев можно получить, как взвешенную сумму ошибок последующих слоев. При обучении информация распространяется от низших слоев иерархии к высшим, а оценки ошибок, делаемые сетью - в обратном направлении, что и отражено в названии метода.
Алгоритм обратного распространения ошибки реализует градиентный метод минимизации выпуклого (обычного квадратичного) функционала ошибки в многослойных сетях прямого распространения, использующих модели нейронов с дифференцируемыми функциями активации. Применение сигмоидальных функций активации, являющихся монотонно возрастающими и имеющими отличные от нуля производные на всей области определения, обеспечивает правильное обучение и функционирование сети. Процесс обучения состоит и последовательном предъявлении сети обучающих пар (x(i), y*(i)) где x(i) и y*(i) – вектор входных и желаемых выходных cигналов сети соответственно, изучении реакции на них сети и коррекции в соответствии с реакцией весовых параметров (элементов весовой матрицы).
Перед началом обучения всем весам присваиваются небольшие различные случайные значения (если задать все значения одинаковые, а для правильного функционирования сети потребуются неравные значения, сеть не будет обучаться).
Для реализации алгоритма обратного распространения необходимо:
1. Выбрать из заданного обучающего множества очередную обучающую пару (x(i), y*(i)), и подать на вход сети входной сигнал x(i).
Другие рефераты на тему «Экономико-математическое моделирование»:
Поиск рефератов
Последние рефераты раздела
- Выборочные исследования в эконометрике
- Временные характеристики и функция времени. Графическое представление частотных характеристик
- Автоматизированный априорный анализ статистической совокупности в среде MS Excel
- Биматричные игры. Поиск равновесных ситуаций
- Анализ рядов распределения
- Анализ состояния финансовых рынков на основе методов нелинейной динамики
- Безработица - основные определения и измерение. Потоки, запасы, утечки, инъекции в модели