Круглов В.В., Борисов В.В. - Искусственные нейронные сети (ИНС) Теория и практика (778918), страница 26
Текст из файла (страница 26)
° Генератор осходного кода — О (отсуглствует). ° Налечие макроязыка — О (отсутствует). 4) Нейропакет йеигоЗ)геП 2 фирмы кЧагд Зув1вптв Огоцр йеигоЗ)тей 2 является одной из трех программ, входящих в состав пакета Т)те А) Тгйоду и представляет собой универсальный нейропакет для моделирования нескольких наиболее известных нейронных парадигм многослойных сетей, сетей Кохонена и т. д НеигоЗпей 2 сильно проигрывает по сравнению с НецгоЗоць йопз и йеига10/огкв. Он имеет много мелких недостатков, существенно замедляющих подготовку и работу в среде нейропакета, Кроме недостаточно продуманного интерфейса нейропакет НецгоЗпе!! имеет и усложненную систему визуализации данных. Из-за отсутствия единого интегрального контроля данных в процессе обучения или работы нейронной сети часто приходится переключаться из одного режима в другой, что неудобно в использовании.
Для йецгоЗ)тек характерна жесткая последовательность действий при работе с нейронной сетью. Это удобно для начинающих пользователей Однако, для того, чтобы внести небольшое изменение приходится выполнять заново всю последовательность действий. НеигоЗПей предоставляет хорошие средства обмена данными с другими приложениями.
Он обеспечивает обмен данными, представленными в текстовом бинарном виде, а также в наиболее популярных финансовых форматах Ма(аЗ(осй и Осик)спев. Нейропакет имеет генератор исходного кода на языках ч1зиа! С и Чвиа! Ваз)с. Оценка нейропакета ° Простота использования- 10. НеигоЗпей прост в использовании за счет жесткой последовательности действий по созданию и обучению нейронной сети. ° Простота формцрования обучающей выборке — 8. Обучающая выборка формируется достаточно просто, но изза непродуманности интерфейса приходится выполнять слишком много лишних действий. Балл снят за отсутствие встроенных кон.
вертеров популярных форматов данных (в частности, ВМР) и еще балл — за непродуманность интерфейса. ° Наглядность представления информацои — б. 158 Отображать и контролировать можно многие параметры, однако, невозможно контролировать все их одновременно. Три балла сняты за использование псевдографического интерфейса ° Воэможносгпь соэданоя собственных нейронных структур — 5. Создание собственных нейронных структур сводится к возможности изменения числа слоев и количество нейронов в слоях. ° Воэможность ислользованоя собственных критериев обучения — О (отсутствует).
° Воэможность использования собственных алгоритмов обучения — О (отсутствует). ° Обмен информацией между нейропакетом и олерацоонной системой — б. Обмен информацией реализован достаточно хорошо. Нейропакет имеет несколько встроенных конверторов для чтения данные в текстовом и бинарном форматах, а также в популярных форматах представления финансовых данных. Встроенный генератор кода позволяет получать исходные тексты программ на языках С и Ваз1с. Два балла сняты за отсутствие технологии Огад-апдОгор и 01 Е. ° Открытость архитектуры — 2 Не позволяет подключать внешние программные модули. ° Генералюр исходного кода — 10 Имеет встроенный генератор исходного кода на языках С и Ваз1с. ° Наличие макроязыка — О !отсутствует). б) Нейропакет Вга!пМайег Рго фирмы Са))гоги)а Зс!епбйс Зогтигаге Вга)пМахег Рго является простым нейропакетом для моделирования многослойных нейронных сетей, обучаемых с помощью алгоритма обратного распространения ошибки.
Основным его достоинством является большое число параметров настройки алгоритма обучения. В остальном Вга1пМахег Рго уступает НеигоЗо1ибопз и Неига1ЧЧогхв, особенно, в наглядности представляемой информации и простоты интерфейса. Оценка нейропакета ° Простота испольэованоя — б. Хотя Вга1пМахег Рго представляет собой достаточно простой нейропакет, однако, использовать его несколько сложнее, чем ЙеигоЗо1и!юпв и Неига)ЧЧогкв.
Сложности использования Вга1пМахег Рго связаны с неудобством интерфейса, а также с наличием 159 большого количества модулей, не интегрированных в единую оболочку. Три балла сняты за использование псевдографического интерфейса, и еще один — за отсутствие интегральной оболочки, ° Простота формирования обучающеи выборки — 7. Этап формирования обучающей выборки достаточно прост К сожалению, нейропакет поддерживает только текстовый формат представления данных и не позволяет использовать внешние конверторы данных. Балл снят за отсутствие встроенных конверторов популярных форматов данных, и еще два — эа невозможность подключения внешних конверторов. ° Наглядность представления информации — 4.
Примитивные возможности отображения различной информации о состоянии нейронной сети. Шесть баллов сняты за непродуманность системы визуализации и отсутствие даже псевдографического интерфейса. ° Реализация стандартных нейронных парадигм и алгоритмов обучения — б. Реализована только одна нейронная парадигма — многослойная нейронная сеть и только один алгоритм ее обучения — метод обратного распространения ошибки.
Лишний балл добавлен за большое количество параметров настройки алгоритма обучения. ° Возможность создания собственных нейронных сгпруктур — 5. С помощью модуля йебМахег имеется возможность создания собственных многослойных нейронных сетей. При этом можно только задавать количество слоев, количество нейронов в слоях и функции активации нейронов. По заданным параметрам нейропакет генерирует полносвязную нейронную сеть прямого распространения, структуру которой изменить невозможно ° Возможность использования собственных критериев обучения — й (отсутствует). Используется только средняя квадратичная ошибка. ° Возможность использования собственных алгоритмов обучения — 4. Реализован только алгоритм обратного распространения ошибки, который можно настроить путем изменения параметров скорости и точности обучения.
По сравнению с Ргосезз Адызог один балл добавлен за большее количество настраиваемых параметров алгоритма обучения. ° Обмен информацией между нейропакетом и операционнои системой- 5. 160 Обмен данными реализуется только через буфер обмена или внешние файлы, записанные в текстовом виде. ° Открытость аркигпвктуры — О (отсутствует). Не имеет средств для подключения внешних модулей.
° Генератор исходного кода — О (отсутствует). ° Наличие макроязыка — О (отсутствует). Суммарная оценка 1) йеигоЗо)иг)опз — 104; 2) й)еигаРИогкз Рго1еззюпа! !)Г Р!из с модулем 00ИΠ— 87; 3) Ргосезз Аду!зог-43; 4) й)еигоЗпе)! 2 — 57; 5) Вга~пМахег Рго 37. Приведенные основные характеристики универсальных зарубежных нейропакетов и их сравнение с точки зрения простоты использования и спектра предоставляемых услуг для моделирования искусственных нейронных сетей дают возможность из большого количества существующих нейропакетов выбрать наиболее пригодный для практической работы.
Суммарная оценка дает представление о нейропакете в целом. Глава 6 ПРОГРАММЫ МОДЕЛИРОВАНИЯ ИСКУССТВЕННЫХ НЕЙРОННЫХ СЕТЕЙ Помня золотое методическое правило «от простого — к сложномуь, рассмотрение нейропакетов начнем с простых и доступных для пользователя 6.1. Нейропакет йгеига110 6.1.1. Общая характеристика Бесплатная версия пакета доступна через сеть Интернет по адресу п((р (Гаатт.зкп1е) пеггзкп1е( пе(Гтт)пЗГпеига1-рге.йгп).
Разработан пакет в 1992 г (в Зоц1пегп Зс~епа(1с СС, Зои1б А1пса) под УУ)пбоигз Основной исполняемый файл — З(ц9.ехе. Пакет реализует одну нейросетевую парадигму — двухслойную сеть прямого распространения с одним алгоритмом обучения (обратного распространения ошибки) Активационная функция нейронов скрытого слоя — сигмоид, выходных нейронов — линейная 6.1.2. Создание, обучение и работа нейронной сети Данные для обучения должны быть подготовлены в виде файла текстового формата с расширением по умолчанию "г(а1 (вообще, допускаются любые расширения). Процедура работы с пакетом такова.
1) Обучающая выборка подготавливается в виде, аналогичном отображаемому табл. 4 1, но не в виде таблицы, а в виде колонок цифр, например, исходные данные для обучения нейронной сети решению задачи реализации функции «Исключающее ИЛИ» будут иметь вид. 162 № 1 оооо 1 оаоо о оооо с оооо а ооаа о оооа 1 оооо с оасо 1 сосо О ОООО 1 ОООО 1 ОООО Первые две строки — дпя комментариев, первый и второй столбцы отображают значения первой (к,) и второй(ха) входных переменных, третий столбец — значения выходной переменной (у), разделитепями являются пробелы ипи табуляции Выборка сохраняется в виде текстового файла (с рекомендуемым расширением *.с(а(), например, хог с(а( 2) Подготавпивается пустой текстовый файл протокола (с расширением по умолчанию *!о9), например, хог.(о9.
3) Запускается программа З)иу.ехе, после чего на экране появляется контрольная панель программы (рис б 1), а также меню с опциями Гйе, Рагапте1егв, Оа(а, Тга!и, гкап Рис о г Контрольная панель программы Жор ехе Дпя создания нейронной сети выбирается опция меню Р)!е. В выпадающем подменю (содержащем опции йемг, Ореп, Заме, Заче ав) выбирается пункт р)ечч (Новая), после чего появляется окно конструирования сети (рис.
5.2), где необходимо указать 163 ° число входных нейронов (МигпЬег о! пецгопэ ~п ~при! )ауег) равное числу входных переменных, в нашем примере — 2, ° число нейронов в выходном слое (1(игпЬег ог пецгопэ ~п ои!ри! )ауег), равное числу выходных переменных — 1, ° число нейронов в скрытом слое (Мигпоег о1 пергола !п Ь!г! с)еп )ауег), выбираемое в соответствии с рекомендациями, приведенными в гл 1 (формулы (1 5)-(1 8)) — 2 Иывьег Ы иыиапв нк панк Ьуни Ни ь ы виве вг гГоуи Нниаег оГ иеигопв ив НиЫеи Гиков гниы Рис 5 2 Окно конструирования конфигурации нейронной сети Задав данные значения подтверждаем это нажатием кнопки ОК, после чего опять появится вид контрольной панели рис 51 4) Теперь необходимо открыть подготовленные файлы с обучающей выборкой и протоколом Сделать это можно или с помощью опций меню Оата, !прог ййе (для файла обучающей выборки) и Оата, Оц1рцу Г11е (для файла протокола), или с помощью кнопок панели Оака Р!1е, Орел и ).од Г1)е, Орел И в том, и в другом случае будет появляться окно вида рис 5 3 с файлами данных с расширениями * г)а! и с файлами протокола с расширениями * 1од Гйепиие О«еауогу е Кпннгийа Внеакапев Н Рис 5 3 Окно загрузки файла данных 164 Откроем подготовленные файлы хог г(а( и хог,(оя 5) Параметры процесса обучения задаются либо с помощью опции меню Рагапте(егв, либо с помощью одноименной клавиши в правой нижней части контрольной панели При этом появляется окно диалога вида рис 5 4 Ьианиив ваги Кмвд Миккиим Емок Маммиа ВвкиГиии Рис б 4 Окно установки параметров процесса обучения нейронной сети Параметры процесса обучения следующие коэффициент скорости обучения (.еагп~пя гта(е, импульс (Могпеп(опт), максимально допустимая ошибка (Махппигп Еггог), максимальное число итераций в процессе обучения (об этих параметрах более подробно — в разд 1 4 и в прил 3) На рис 5 4 показаны значения данных параметров, устанавливаемые по умолчанию (параметр Кгпог( в программе не используется) Если нет каких-либо личных соображений, можно согласиться со значениями и подтвердить это нажатием кнопки ОК Окно при этом закроется, а панель приобретет вид рис 5 5 6) При нажатии кнопки Тга!и можно наблюдать процесс обучения изменяются цифры в окошках Оага Соипт (общее количество итераций) и в Сиггеп( Еггог (текущая ошибка) Количество итераций, естественно, все время увеличивается, а текущая ошибка должна изменяться в сторону уменьшения Обучение заканчивается, если текущая ошибка становится меньше заданной или, если общее количество итераций достигает заданного максимального числа (процесс обучения можно принудительно приостановить нажатием кнопки Рамзе, а затем возобновить нажатием появляющейся кнопки (хевипте или вообще прекратить нажатием кнопки Зтор) 165 2 Наива.