Программные системы для выполнения аппроксимации — КиберПедия 

Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...

История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...

Программные системы для выполнения аппроксимации

2017-06-25 649
Программные системы для выполнения аппроксимации 0.00 из 5.00 0 оценок
Заказать работу

Программные системы для выполнения задач аппроксимации могут быть реализованы несколькими различными способами:

1. Составление самостоятельного приложения, для работы которого требуется только компьютер с установленным программным обеспечением.

2. Исполнение программы в виде надстройки к одной из популярных программ персональной системе управления базами данных.

3. Выполнение программы в виде сценария.

4. Написание модулей на встроенных языках систем для выполнения математических расчетов (Mathematica, MathLab и т. д.).

5. Составление моделей в системах анализа данных (PolyAnalist, NeuroShell2 и т. д.).

Программные средства рассматриваются в разрезе выполнения задач аппроксимации и прогнозирования, даже если они являются более функциональными.

Большая часть наиболее популярных программных пакетов, например GAUSS (AptechSystems), Maple (Maplesoft), MathCad (MathSoft), Mathematica (WolframResearch), Mathlab (MathWorks), Statistica (StatSoft), предоставляют возможности для выполнения стандартного регрессионного анализа и позволяют использовать собственные модули (или модули сторонних разработчиков) для выполнения более сложных задач аппроксимации и прогнозирования, основанных на методах НС, РА и МГУА.

Для программного пакета Mathlab для реализации задач аппроксимации и прогнозирования предназначены следующие модули:

– NeuralNetworkToolbox (построение нейросетевых моделей);

– StatisticsToolbox (построение регрессионных моделей).

В других упомянутых программных системах также реализованы модули аналогичной функциональности [11].

Нейросетевая зависимость

В течение последних лет наблюдается взрыв интереса к нейронным сетям, которые успешно применяются в самых различных областях – бизнесе, медицине, технике, геологии, физике. НС вошли в практику везде, где нужно решать задачи прогнозирования, классификации или автоматизации. Такой успех определяется несколькими причинами:

1. Богатыми возможностями, НС – мощный метод моделирования, позволяющий воспроизводить чрезвычайно сложные зависимости. Нейросети нелинейны по своей природе.

2. Простотой в использовании, ведь НС учатся на примерах. Пользователь НС подбирает представительные данные, а затем запускает алгоритм обучения, который автоматически воспринимает структуру данных. От пользователя, конечно, требуется какой-то набор эвристических знаний о том, как следует отбирать и подготавливать данные, выбирать нужную архитектуру сети и интерпретировать результаты, однако уровень знаний, необходимый для успешного применения НС, гораздо скромнее, чем, например, при использовании традиционных методов статистики.

Основные понятия

НС – это система, состоящая из многих простых вычислительных элементов, работающих параллельно, функция которых определяется структурой сети, силой взаимосвязанных связей, а вычисления производятся в самих элементах или узлах. НС – это набор нейронов, определенным образом связанных между собой. Работу искусственного нейрона можно описать следующим образом (рисунок 1.5).

 

Рисунок 1.5 – Нейрон

 

Нейрон получает входные сигналы (исходные данные либо выходные сигналы других нейронов нейросети) через несколько входных каналов. Каждый входной сигнал проходит через соединение, имеющее определенную интенсивность (или вес), которая определяет влияние входных значений на уровень активности элемента. Веса могут быть положительными (возбуждающими) или отрицательными (тормозящими).

С каждым нейроном связано определенное пороговое значение. Вычисляется взвешенная сумма входов, из нее вычитается пороговое значение, и в результате получается величина активации нейрона. Сигнал активации преобразуется с помощью функции активации (или передаточной функции). В результате получается выходной сигнал нейрона:

 

s = (x,w) = w0 + , (1)

 

Одной из наиболее распространённых функций является нелинейная функция с насыщением, так называемая сигмоидальная (логистическая) функция:

 

(2)

 

Эту функцию часто называют «сигмоидой». Параметр определяет наклон функции.

При , равном нулю, функция вырождается в пороговую функцию, которая принимает значение 1, если уровень активности положителен, и 0 в противном случае.

 

. (3)

Рисунок 1.6 - Функция активации «сигмоида»

Как правило, передаточные функции всех нейронов в сети фиксированы, а веса являются параметрами сети и могут изменяться. Если сеть предполагается для чего-то использовать, то у нее должны быть входы (принимающие значения интересующих нас переменных из внешнего мира) и выходы (прогнозы или управляющие сигналы). Кроме этого в сети может быть еще много промежуточных (скрытых) нейронов, выполняющих внутренние функции. Входные, скрытые и выходные нейроны должны быть связаны между собой.

Наиболее распространенными являются многослойные сети, в которых нейроны объединены в слои. Слой – это совокупность нейронов, на которые в каждый такт времени параллельно поступает информация от других нейронов сети. После того, как определено число слоев и число элементов в каждом из них, нужно найти значения для весов и порогов сети, которые минимизировали бы ошибку прогноза, выдаваемого сетью. Именно для этого служат алгоритмы обучения. С использованием собранных исторических данных веса и пороговые значения автоматически корректируются с целью минимизации этой ошибки.

По сути, этот процесс представляет собой подгонку модели, которая реализуется сетью, к имеющимся обучающим данным. Ошибка для конкретной конфигурации сети определяется путем прогона через сеть всех имеющихся наблюдений и сравнения реально выдаваемых выходных значений с желаемыми (целевыми) значениями. Все такие разности суммируются в функцию ошибок, значение которой и есть ошибка сети. В качестве функции ошибок чаще всего берется сумма квадратов ошибок:

 

(4)

 

где d – желаемый выход сети,

у – реальный выход сети.

В качестве примера простейшей НС приведём трёхнейронный персептрон, нейроны которого имеют активационную функцию в виде единичной пороговой. На n входов поступают некие сигналы, проходящие по синапсам на 3 нейрона, образующие единственный слой этой НС и выдающие три выходных сигнала:

 

. (5)

Рисунок 1.7 - Однослойный персептрон

 

Таким образом, процесс, происходящий в НС, может быть записан в матричной форме:

 

Y = F(XW), (6)

 

где X и Y - соответственно, входной и выходной сигнальные векторы,

F(V) - активационная функция, применяемая поэлементно к компонентам вектора V.

 

Рисунок 1.8 – Многослойный персептрон

 

Многослойный персептрон содержит чередующиеся слои нейронов и связей. Основная часть вычислений проводится на слоях связей. Поэтому обычно количество слоев персептрона считают по слоям связей. Иногда учитывают только внутренние слои персептрона. Так изображенный на рисунке двухслойный персептрон может также называться трехслойным, если считать число слоев нейронов, или содержащим один скрытый слой.

Общая формула, связывающая выходы нейронной сети с ее входами выглядит следующим образом.

 

. (7)

Другой класс нейронных сетей, называемый нейронными сетями с радиально-базисными функциями (РБФ) (рисунок 1.9).

Сети РБФ имеют ряд преимуществ перед рассмотренными многослойными сетями. Они моделируют произвольную нелинейную функцию с помощью всего одного промежуточного слоя, тем самым избавляя разработчика от необходимости решать вопрос о числе слоев. Только нейроны скрытого слоя имеют нелинейную активационную функцию.

Рисунок 1.9 – Нейронные сети с радиальными базисными функциями

 

Параметры линейной комбинации в выходном слое можно полностью оптимизировать с помощью хорошо известных методов линейной оптимизации, которые работают быстро и не испытывают трудностей с локальными минимумами, так мешающими при обучении с использованием алгоритма обратного распространения ошибки. Синаптические веса связей входного и скрытого слоев равны единице. Сеть РБФ обучается очень быстро – на порядок быстрее, чем с использованием алгоритма ОР.

Недостатки сетей РБФ: данные сети обладают плохими экстраполирующими свойствами и получаются весьма громоздкими при большой размерности вектора входов.

Общий вид радиально-базисной функции:

 

, (8)

 

где х - вектор входных сигналов,

σ – ширина окна функции,

φ(у) – убывающая функция [12].


Поделиться с друзьями:

Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...

Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...

Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.015 с.