
- •Учебно-методическое пособие
- •«Аппроксимация функций с помощью нейронных сетей»
- •1 Цель работы
- •2 Краткие теоретические сведения
- •2.1 Свойства и назначение нейронных сетей
- •2.2 Принцип функционирования нейронных сетей
- •2.3 Методы обучения нейронных сетей
- •2.4 Правило обратного распространения
- •3 Экспериментальная часть
- •3.1 Порядок выполнения работы
- •3.2 Порядок работы с Neural Network Wizard
- •3.3 Порядок работы с пакетом statistica Neural Networks
- •4 Контрольные вопросы
- •Содержание
- •1 Цель работы 1
- •2 Краткие теоретические сведения 1
- •2.1 Свойства и назначение нейронных сетей 1
3 Экспериментальная часть
3.1 Порядок выполнения работы
Лабораторная работа выполняется с использованием программного нейроимитатора (STATISTICA Neural Networks, Neural Network Wizard и т.д.), который указывается преподавателем, в порядке, описанном ниже.
Необходимо:
1
9
Nвар = round(N1 + N2 / 5 + 1),
где N1 и N2 – соответственно последняя и предпоследняя цифры номера зачетки.
-
Вариант
Задание
1
y = 2*sin2x, х [0, 1]
2
3
y1 = 0.5*x2 – 4.8*x + 3.5, y2 = x3 – 12, y3 = x + 3,5
4
x1, x2 [1, 10]
5
y1 = |x1 – x2|, y2 = x1 + x2, y3 = x1*x2; x1, x2 [1, 10]
6
y1 = x1*sin(x2), y2 = x1*cos(x2); x1 [1, 10], x2 [-90, +90]
7
y1 = x1*x2 + x3, y2 = 2*y1; x1, x2, x3 [1, 10]
8
y1 = 1,5*x1 + |x2 – 2*x3|, y2 = x3 – y1; x1, x2, x3 [1, 10]
9
,
; x1, x2 [-10, 10]
10
y1 = 2,3*x1*x2 – 0,5*x12 + 1,8*x2, y2 = y12; x1, x2 [1, 10]
11
Представление двоичного 4-разрядного кода в 10-чном виде
12
Y1 = X1 AND X2, Y2 = X1 OR X2, Y3 = NOT X1
13
Y = X1.X2 + X3.X4
14
15
16
17
y = 2*x1 + 5*x1*x2 + x2; x1, x2 [-5, 5]
18
y = sin x1*sin x2*sin x3 ; x1, x2, x3 [0, ]
19
y = 2*x1*cos x2, x1 [0,1], x2 [0, ]
20
y = x1 + x2 + x3, xi [0, 10]
10
Вариант 11: расшифровка двоичного 4-разрядного кода и представление его в 10-м виде, то есть на вход сети подаются четыре логические переменные, кодирующие двоичное число от 0 до 16, сеть перекодирует его в десятичный вид и выдает в виде выходной переменной у.
Варианты 12 – 16: аппроксимация логических функций нескольких переменных Хi, выходная переменная Y – логическая. Рассматривается вся область определения функции.
2 Подготовить обучающую выборку средствами приложения Microsoft Excel и оформить ее в виде файла *.csv (для задач аппроксимации алгебраических функций).
Примечание: Чтобы создать набор случайных чисел, воспользуйтесь функцией: =СЛЧИС()*100. В соседнем столбце рассчитайте значение заданной функции. Сохраните файл, выбрав расширение .CSV.
3 Провести обучение нескольких нейронных сетей c помощью программного нейроимитатора. Рассматриваются пять вариантов сети: Linear (линейная) с функцией активации «линейная» (для STATISTICA Neural Networks); MLP (для всех вариантов нейроимитатора) с количеством нейронов в скрытом слое, равном 1, 3, 5, 7 и функцией активации «сигмоидная» (Logistic). Обучение каждой сети вести, например, в 100 шагов. Обучение вести по алгоритму обратного распространения.
4 Проверить качество каждой обученной сети, для чего рассчитать несколько значений выходной переменной по заданной функции и по нейронной сети, затем на графике показать близость каждой обученной модели к исходной.
5 Рассчитать вручную одно выходное значение нейронной сети (для MLP сети с 5-ю нейронами в скрытом слое). Сравнить со значением, рассчитанным с помощью нейроимитатора.
Примечание. Используйте Microsoft Excel.
6* Получить сеть с помощью средств автоматического создания сети. Определить параметры лучшей (по критерию минимальности среднеквадратичной ошибки обучения) сети.
7 Результаты оформить в виде отчета. В отчете представить:
- цель работы,
- задание,
- обучающую выборку,
- параметры каждой обученной сети: количества нейронов во входном, скрытом и выходном слоях и т.д.,
- графики, построенные для заданной функции и обученных моделей (для вариантов 11 – 16 приводятся таблицы значений функций),
-
11
- вывод о точности аппроксимации.
*Примечание - Пункт 6 выполняется при работе с пакетом STATISTICA Neural Networks.