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

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

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

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

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

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

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

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

Выполнил:

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

к.т.н. доцент

Цель работы: ознакомление с пакетом Neural Networks Toolbox и его графическим интерфейсом в программной среде MatLab.

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

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

MatLab (Matrix Laboratory) – программная среда, используемая для решения задач технических вычислений в различных прикладных науках. В состав MatLab входят различные ToolBox’ы – программные пакеты, в которых содержатся различные функции необходимые для моделирования процессов и объектов, к примеру – “Control System” позволяет моделировать системы управления, “Fuzzy Logic” – аппарат нечётких множеств, “Aerospace Toolbox” включает в себя модели атмосферы, гравитации, магнитных полей и др.

На настоящий момент MatLab включает в себя более 80 ToolBox’ов и программных пакетов различных прикладных наук.

Для моделирования работы искусственных нейронных сетей (ИНС) используется Neural Network ToolBox, добавляющий функции создания ИНС, их обучения, тренировки, визуализации, обработки данных и результатов и т.д.

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

После запуска MatLab, пользователь видит перед собой консоль ввода команд – поле, в котором могут быть объявлены переменные различных типов, проводятся вычисления, вызываются функции различных ToolBox’ов и запускаются файлы скриптов (M-файлы):

Рис. 1.1. Командная строка программной среды MatLab

Вызов графического интерфейса NNTool осуществляется с помощью ввода команды nntool в командной строке и нажатием клавиши Enter:

Рис. 1.2. Графический интерфейс пользователя - NNTool

Окно Neural Network/Data Manager включает в себя следующие области и кнопки (рис. 1.2.):

Input Data – последовательность входов;

Target data последовательность целей;

Input Daley States начальные условия линии задержки входов;

Networks список нейронных сетей;

Output Data последовательность выходов;

Error Data последовательности ошибок сети;

Layer Delay States начальные условия линии задержки слоя;

Help – кнопка вызова окна справки;

New ->

New Data – кнопка вызова окна формирования данных (рис. 1.3.);

New Network – кнопка вызова окна создания новой нейронной сети (рис. 1.4.);

Import – кнопка вызова окна импорта или загрузки данных;

Export – кнопка вызова окна экспорта или загрузки данных в файл.

Рис. 1.3. Окно формирования данных

Рис. 1.4. Окно создания новой нейронной сети

Кнопки View, Delete становятся активными только после создания и активизации данных, относящихся к последовательностям входа, цели, выхода или ошибок сети. Кнопка View позволяет просмотреть, а кнопка Delete удалить активизированные данные.

Кнопки View, Delete, Initialize, Simulate, Train, Adapt становятся активными после создания и активации самой нейронной сети. Они позволяют просмотреть, удалить, инициализировать, промоделировать, обучить или адаптировать нейронную сеть.

При создании нейронной сети, необходимо выполнить следующие операции:

  1. сформировать последовательность входов и целей (кнопка New Data) либо загрузить их из рабочей области системы MatLab или из файла (кнопка Import);

  2. создать новую нейронную сеть (кнопка New Network) либо загрузить ее из рабочей области систем MatLab или из файла (кнопка Import);

  3. выбрать тип нейронной сети и нажать кнопку Train, чтобы открыть окно для задания параметров процедуры обучения;

  4. открыть окно Network для просмотра, обучения, моделирования и адаптации сети.

Задача: используя графически интерфейс пользователя NNTool, создать нейронную сеть для вычисления функции

Зададим векторы с помощью кнопки New Data (рис. 1.5.):

I – вектор входных данных (y и x):

[-1 -0.7 -0.5 -0.3 0 0.1 0.4 0.6 0.9 1; -0.9 -0.8 -0.6 -0.2 0 0.1 0.4 0.5 0.7 1],

T – вектор целей (z):

[-0.8 -1.11 -0.95 -0.31 0 -0.1 -0.64 -0.64 -0.59 -1]

Рис. 1.5. Векторы заданы

Рис. 1.6. Создание нейронной сети

Рис. 1.7. Окно настройки диапазонов и инициализация весов.

Рис. 1.8. Подтверждение диапазонов.

Рис. 1.9. Инициализация весов.

Рис. 1.10. Настройка обучения сети.

Рис. 1.11. Обучение сети.

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

Рис. 1.12. Результат обучения сети.

Увеличим последовательность на 4 (1.13), повторим цикл обучения и сравним результаты (1.14).

Рис. 1.13. Увеличенная последовательность.

Рис. 1.14. Результаты с увеличенной последовательностью.

Как видно из результатов общая точность сети повысилась.

Вывод: во время выполнения данной лабораторной работы я ознакомился с Neural Networks Toolbox и его графическим интерфейсом в программной среде MatLab

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