
- •Содержание
- •3.2. Многослойный персептрон 34
- •12.1. Обоснование выбора темы и области применения разработки 142
- •12.2. Оценка ожидаемой экономической целесообразности разработки, изготовления и использования проектируемой системы 144
- •12.3. Выводы 151
- •7. Работа с сетью Кохонена. 170
- •Введение
- •Глава 1. Введение в искусственные нейронные сети
- •1.1. Проблемы, решаемые в контексте инс
- •1.2. Краткий исторический обзор
- •1.3. Модель технического нейрона
- •Математическая модель нейрона:
- •1.4. Архитектура нейронной сети
- •1.5. Обучение нейронных сетей
- •1.6. Многослойные сети прямого распространения
- •1.6.1. Многослойный персептрон
- •1.6.3. Нерешенные проблемы
- •1.7. Самоорганизующиеся карты Кохонена
- •1.8. Модели теории адаптивного резонанса
- •1.9. Сеть Хопфилда
- •1.9.1 Ассоциативная память
- •1.9.2. Минимизация энергии
- •Глава 2. Основные функциональные возможности программ моделирования нейронных сетей
- •2.1. Формирование (создание) нейронной сети.
- •2.2. Обучение нейронной сети
- •2.3. Имитация функционирования (тестирование) обученной нейронной сети
- •Глава 3. Персептроны
- •3.1. Однослойный персептрон
- •3.2. Многослойный персептрон
- •3.2.1. Архитектура сети
- •3.2.2. Алгоритм обратного распространения
- •3.2.3. Модификации алгоритма обратного распространения и rprop-алгоритма
- •3.3. Применение многослойных персептронов
- •3.3.1. Решение конкретных задач
- •3.3.2. Естественные координаты
- •3.3.3. Репликативные нейронные сети
- •3.3.4. Практическое использование репликативных нейронных сетей
- •Глава 4. Сети Кохонена
- •4.1. Основной принцип работы сети Кохонена
- •4.2. Сходимость алгоритма самообучения
- •Глава 5. Сети радиальных базисных функций
- •5.1. Архитектура сетей
- •5.2. Интерполяция при помощи центральных функций
- •5.3. Интерполяция с помощью центральных функций и полиномов
- •5.4. Аппроксимация с помощью центральных функций
- •5.5. Вариационное исчисление для решения проблемы аппроксимации с помощью rbf-сетей
- •5.6. Расширение на случай многих функций
- •5.7. Расширение линейной частью
- •5.9. Итеративное дополнительное обучение rbf- и hbf-сетей
- •5.10. Выбор центров и радиусов в rbf-сетях
- •5.10.1. Итеративный алгоритм кластеризации
- •5.10.2. Выбор параметра
- •5.10.3. Расчет выходной весовой матрицы c
- •Глава 6. Нейронные сети и генетические алгоритмы
- •6.1. Эволюция как способ оптимизации.
- •6.2 Генетические алгоритмы
- •6.3. Нейро-генетические способы
- •Глава 7. Система моделирования нейронных сетей Trajan 2.0
- •7.1. Создание сети и обучающей последовательности
- •7.1.1. Создание сети
- •7.1.2. Количество и размерность слоев в сети
- •7.1.3. Создание обучающей последовательности
- •7.1.4. Редактирование набора образцов
- •7.2. Обучение сети
- •7.2.1. Типы сетей
- •7.2.2. Создание обучающей и проверочной последовательностей образов
- •7.2.3. Создание сокращенной обучающей последовательности
- •7.2.4. Визуализация процесса обучения
- •7.2.5. Оптимизация процесса обучения
- •7.2.6. Обучение с перекрестной проверкой
- •7.3. Работа с сетью
- •7.3.1. Возможности сети по работе с образцами
- •7.3.2. Интерпретация классификации
- •7.3.3. Работа с сетью Кохонена.
- •7.4. Генетический алгоритм выбора входных атрибутов
- •7.5. Сохранение результатов работы
- •Глава 8. Экспериментальное исследование эффективности применения нейронных сетей
- •Глава 9. Методика представления, архивирования и обработки обучающей последовательности для алгоритмов обучения нейросетей
- •Глава 10. Возможности использования среды www для дистанционного обучения
- •Глава 11. Создание программ для среды www
- •Глава 12. Технико-экономический анализ и обоснование разработки адаптивного обучающего и контролирующего курсов по нейросетям
- •12.1. Обоснование выбора темы и области применения разработки
- •12.2. Оценка ожидаемой экономической целесообразности разработки, изготовления и использования проектируемой системы
- •12.2.1. Расчет затрат на разрабоку и изготовление предлагаемого курса
- •12.2.2. Расчет экономического эффекта от создания и использования обучающего курса
- •12.3. Выводы
- •Глава 13. Обучение контролирующей системы
- •Глава 14. Дистанционный обучающий и контролирующий курс
- •Содержание обучающего курса
- •Заключение
- •Литература
- •Приложение 1. Лабораторная работа «Кластеризация образов с помощью системы моделирования нейросетей Trajan 2.1»
- •1. Цель работы
- •2. Знания и умения, формируемые данной лабораторной работой
- •3. Постановка задачи
- •4. Принципиальные особенности сетей Кохонена.
- •5. Создание сети Кохонена
- •6. Обучение сети Кохонена
- •7. Работа с сетью Кохонена.
- •8. Задание
- •9. Контрольные вопросы
- •Приложение 2. Вопросы контролирующего курса.
- •Приложение 3. Обучающие последовательности для контролирующей системы
- •Приложение 4. Листинг контролирующей программы.
7.1. Создание сети и обучающей последовательности
7.1.1. Создание сети
Для начала необходимо создать саму нейронную сеть, т.е. ее структуру.
Создать новую ИНС можно в окне Создание ИНС (Network Creation) (см Рис. 2), которое вызывается с помощью команды меню Файл/Создать/Сеть (File/New/Network).
В поле Тип (Type) можно задать тип нейронной сети. Версия Shareware предлагает создание и использование только двух типов нейронных сетей:
многослойный персептрон (Multilayer Perceptron);
сети Кохонена (Kohonen).
В полной профессиональной версии Trajan можно создавать большое количество других типов сетей.
Затем надо указать число слоев в создаваемой сети и количество элементов (нейронов) в каждом слое.
Рис. 2. Окно создания ИНС.
После нажатия кнопки Создать (Create) структура созданной сети отобразится в главном окне Главное (Main), а тип сети будет указан в Строке статуса (Status line), которая находится прямо под панелью инструментов (рис. 3).
Рис. 3. Структура созданной сети.
7.1.2. Количество и размерность слоев в сети
Программа Trajan может поддерживать до 128 слоев, а число элементов ограниченно только оперативной памятью компьютера (более 16 млн.). Однако незарегистрированная версия Unregistered Shareware ограничена всего двадцатью элементами. В большинстве случаев такого количества слоев и элементов бывает достаточно.
В программе Trajan первый слой всегда Входной слой (Input layer), он выполняет функцию представления входных данных в сеть. Входной слой не выполняет вычислений. Последний слой всегда Выходной слой (Output layer), и выходное значение элементов этого слоя считается конечным выходным значением для всей сети. Все остальные слои - это так называемые Скрытые слои (Hidden layers). Каждый элемент в каждом слое соединен с каждым элементом следующего слоя (кроме, конечно, Выходного слоя, где следующего слоя нет). Все типы сетей, поддерживаемые программой Trajan (версией Shareware), являются сетями прямого распространения сигналов, т.е. отсутствуют рекуррентные и обратные связи.
Можно указать количество элементов в каждом слое, используя матрицу диалогового окна Создание сети (Network Creation). Она выглядит как очень маленькая электронная таблица. Можно указать количество элементов в слое, изменив значение ячейки первой строки (units); слой с нулевым количеством элементов игнорируется. Нажмите мышкой (далее кликните) на первой ячейке матрицы, она отобразится белым текстом на черном фоне. Это означает, что выбрана данная ячейка.
Чтобы создать структуру сети необходимо выполнить следующие действия.
Введите число элементов во входном слое и нажмите стрелку вправо управления курсором. Число вводится в первую ячейку, а следующая ячейка становится выбранной, куда вводится значение количества элементов в следующем слое.
Повторите предыдущее действие для ввода количества элементов второго, третьего и т.д. слоев.
В матрице есть еще и вторая строка ширина (width). Эта строка используется только в сети типа Сеть Кохонена (Kohonen network). Выходной слой сети Кохонена лежит в двумерном пространстве (имеет два измерения), программа определяет высоту слоя как отношение общего числа элементов выходного слоя к ширине слоя.
Для любого слоя любого типа сети можно задавать параметр width. Однако принципиальное значение этот параметр имеет только для сети Кохонена. В остальных сетях это только изменит отображение сети на экране.
Как только вы введете значения для всех слоев, просто нажмите кнопку Создать (Create). Это приведет к формированию сети. Она отобразится графически в главном окне программы.