Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Работа с инструментальными средствами GUI
Окно подсказки (Network/Data Manager Help) показано на рис. 2. и описывает правила работы диспетчером Network/Data Manager при создании нейронной сети. При создании нейронной сети, необходимо выполнить следующие операции: 1) сформировать последовательность входов и целей (кнопка New Data) либо загрузить их из рабочей области системы MatLab или из файла (кнопка Import); 2) создать новую нейронную сеть (кнопка New Network) либо загрузить ее из рабочей области систем MatLab или из файла (кнопка Import); 3) выбрать тип нейронной сети и нажать кнопку Train…, чтобы открыть окно для задания параметров процедуры обучения; 4) открыть окно Network для просмотра, инициализации, моделирования, обучения и адаптации сети. Окно формирования данных (Create New Data) показанное на рис. 3, содержит две области редактирования текста для записи имени вводимых данных (область Name) и ввода самих данных (область Value), а также 6 кнопок для указания типа вводимых данных: Inputs (Входы) – последовательность значений входов; Targets (Цели) – последовательность значений целей; Input Delay States (Состояния ЛЗ входа) – начальные условия лини задержки на входе; Layer Delay States (Состояния ЛЗ слоя) – начальные условия лини задержки в слое; Outputs – последовательность значений выходов сети; Errors – разность значений целей и выходов. Окно создания новой нейронной сети (Create New Network) показано на рис. 4 и включает поля для задания параметров создаваемой сети. В зависимости от типа сети количество полей и их названия изменяются. Приведем описания полей. Network Name (Имя сети) – стандартное имя сети, присваиваемое GUI-интерфейсом NNTool; в процессе создания новых сетей порядковый номер будет изменяться автоматически. Network Type (Тип сети) – список сетей, доступных для работы с интерфейсом NNTool. Для удобства этот список повторен в табл. 1. Интерфейс NNTool позволяет создавать нейронные сети только с одной или двумя слоями. Таблица 1. Типы сетей, доступных с интерфейсом NNTool
Примечание: 1) для сетей 2, 3, 7 в данной версии NNTool не обеспечивается просмотр структурных схем; 2) сети 5, 9 допускают введение линий задержек на входе; 3) сети 3 допускают введение линий задержек в слое; 4) сети с двумя слоями имеют последовательную структуру, когда выход первого слоя служит входом второго слоя. Исключение составляют сети 3, которые допускают наличие обратной связи в первом слое и передачу входного сигнала на входы обоих слоев.
Input ranges (Диапазон входа) – допустимые границы входов, которые либо назначаются пользователем, либо определяются автоматически по имени входной последовательности, выбираемой из списка Get from Inp… Training function (Функция обучения) – список обучающих функций. Performance function (Функция качества обучения) – список функций оценки качества обучения. Namber of layers (Количество слоев) – количество слоев нейронной сети. Properties for (Свойства) – список слоев. Namber of neurons (Количество нейронов) – количество нейронов в слое. Transfer function (Функция активации) – функции активации слоя. Окно для импорта и загрузки данных показано на рис. 5. Source (Источники) – поле для выбора источника данных. Это либо рабочая область системы MatLab (кнопка выбора Input from Matlab Workspace), либо файл (кнопка выбора Load from disk file).
Рис. 5. Окно для импорта и загрузки данных
Если выбрана первая кнопка, то в поле Select a Variable можно увидеть все переменные рабочей области, и, выбрав одну из них, например x, можно передать ее в поле Destination (Назначение) как последовательность входа Inputs (Входы). Рис. 6. Окно для экспорта или записи данных в файл
При выборе кнопки Load from disk file активизируется поле MAT-file Name и кнопка Browse, что позволяет начать поиск и загрузку файла из файловой системы. Окно для экспорта или записи данных в файл (Export or Save from Network/Data Manager) показано на рис. 6 и позволяет передавать данные из рабочей области GUI-интерфейса NNTool в рабочую область системы MatLab или записать их в виде файла на диске. Диалоговая панель Network показана на рис. 7. Данная диалоговая панель открывается только в том случае, когда в окне Network/Data Manager выделена созданная сеть и становятся активными кнопки View, Initialize, Simulate, Train, Adapt. Панель имеет 6 закладок: View (Просмотреть) – структура сети; Initialize (Инициализация) – задание начальных весов и смещений; Simulate (Моделирование) – моделирование сети; Рис. 7. Диалоговая панель Network
Train (Обучение) – обучение сети; Adapt (Адаптация) – адаптация и настройка параметров сети; Weights (Веса) – просмотр установленных весов и смещений. Пример 1. Создадим, используя графический интерфейс пользователя, нейронную сеть для выполнения операции y=x2 при задании векторов входа x=[-1 -0.8 -0.5 -0.2 0 0.1 0.3 0.6 0.9 1] и цели y=[1 0.64 0.25 0.4 0 0.01 0.09 0.36 0.81 1]
Откроем с помощью функции nntool основное окно интерфейса, затем сформируем последовательность входов и целей в рабочей области GUI-интерфейса, используя окно Create New Data. С этой целью сначала нажмем кнопку New Data и далее – в поле Name окна Create New Data – введем сначала имя переменной x, затем – в области значений Value – вектор значений [-1 -0.8 -0.5 -0.2 0 0.1 0.3 0.6 0.9 1] и, используя радиокнопку Inputs (в правой части окна), укажем тип переменных (Inputs - Входы). Ввод завершим нажатием радиокнопки Create (Создать). Аналогичную операцию проделаем для вектора y, с указанием (с помощью радиокнопки Targets), что это – вектор целевых данных. Рис. 8. Окно создания нейронной сети
Создадим новую нейронную сеть. Для этого в окне Network/Data Manager нажмем кнопку New Network. В открывшемся окне Create New Network выберем нейронную сеть типа Feed-forward backprop с прямой передачей сигнала и обратным распространением ошибки (см. выше). При создании сети сохраним ей имя, даваемое по умолчанию (network1), диапазон входов определим (в окне Create New Network) с помощью опции Get from input, а количество нейронов (Number of neurons) первого слоя (Layer 1) установим равным двум. Остальные установки при создании сети оставим по умолчанию (рис. 8). Создание сети завершим нажатием кнопки Create. После этого в окне Network/Data Manager, в области Networks появится имя новой созданной сети – network1. Выберем это имя с помощью мышки, что ведет к активации всех кнопок указанного окна. Выполним инициализацию сети, для чего с помощью кнопки Initialize… выберем выкладку Initialize. Это приведет к открытию диалоговой панели, показанной на рис. 9. Для ввода установленных диапазонов и инициализации весов воспользуемся кнопками Set Ranges (Установить диапазоны) Initialize Weights (Инициализировать веса). Если требуется вернуться к прежним диапазонам, то следует выбрать кнопки Revert Ranges (Вернуть диапазоны) и Revert Weights (Вернуть веса), но в условиях примера это не нужно.
|