Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
17
Добавлен:
13.02.2021
Размер:
2.08 Mб
Скачать

МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ

РОССИЙСКОЙ ФЕДЕРАЦИИ

Московский Политехнический Университет (МПУ)

Кафедра «Автоматика и управление»

ЛАБОРАТОРНАЯ РАБОТА №4

по дисциплине

«Технологии нейронных сетей принятия решений»

Выполнил:

Преподаватель:

Цель работы: создание радиальной базисной сети для аппроксимации функций.

Используемое оборудование: MatLab 2016b

Теоретическое введение

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

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

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

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

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

Главной особенностью радиально базисных сетей является наличие слоя нейронов, у которых радиальная базисная функция активации.

Рис.1.1 Радиальная базисная функция.

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

Функцией активации радиальных базисных нейронов является

при n=0 a=exp(-0^2)=1; при n=0,833 a=exp(-0,8332^2)=0,5; при n=-0,833 a=exp(0,8332^2)=0,5.

Рис.1.2. Функция активации радиального базисного нейрона

Для упрощения создания модели радиальной базисной сети в MatLab существуют некоторые функции:

Рис.1.3. Вычисление радиальной базисной функции в MatLab

newrb (Р, Т, goal, spread); % создание радиальной базисной сети

имеет следующие аргументы:

Р – матрица Q входных векторов размерности R на Q;

Т – матрица Q векторов целей S на Q;

goal – средняя квадратичная ошибка, по умолчанию 0,0;

spread – разброс радиальной базисной функции, по умолчанию 1,0.

Задача: создать сеть для аппроксимации функции y=f(x), при наличии значений y на заданном интервале x.

Выполнение

К примеру, существуют значения функции y = f(x), на интервале x.

Рис.1.4. Отображение значений заданной функции y=f(x)

Для наглядного отображения результата работы радиальной базисной сети зафиксируем данный график, командой hold on, чтобы наложить результат аппроксимации прямо на него.

Рис.1.5. Результат аппроксимации с РБНС (e=0.02, sp=1)

Если уменьшить значение среднеквадратической ошибки и величину разброса сети, к примеру,

То получим следующие результаты:

Рис.1.6. Результат аппроксимации с РБНС (e=0.002, sp=0.5)

При повышении значений среднеквадратической ошибки и величину разброса сети:

Рис.1.7. Результат аппроксимации с РБНС (e=0.03, sp=2)

Вывод: во время выполнения данной лабораторной работы мною было освоено создание радиальной базисной сети для аппроксимации функций в среде MathLab.

Соседние файлы в папке lab4