- •Интеллектуальные информационные системы
- •Введение
- •1. Логика предикатов первого порядка
- •1.1. Основы логики предикатов первого порядка
- •1.2. Основы Пролога
- •Примеры использования дизъюнкции в Прологе
- •1.3. Назначение и основные возможности swi-Prolog
- •Некоторые операции и предикаты swi-Prolog
- •1.4. Лабораторная работа № 1 Представление фактов и правил в Прологе
- •1.5. Лабораторная работа № 2. Рекурсия в Прологе
- •1.6. Лабораторная работа № 3. Обработка списков в Прологе
- •Списки и их составные части
- •2. Онтологии
- •2.1. Онтологии и семантическая паутина
- •2.2. Краткие сведения о спецификациях семантической паутины
- •Стандартные пространства имен
- •Классы rdf/rdfs
- •Свойства rdf/rdfs
- •2.3. Лабораторная работа № 4 Построение онтологической модели в Protégé. Создание классов
- •2.4. Лабораторная работа № 5 Построение онтологической модели в Protégé. Создание экземпляров классов
- •2.5. Лабораторная работа № 6 Выполнение sparql-запросов в Protégé
- •Модификаторы
- •3. Эвристические алгоритмы
- •3.1. Методы поиска решений с использованием графов
- •Сравнительная характеристика методов
- •3.2. Лабораторная работа № 7 Решение оптимизационной задачи с использованием эвристического алгоритма
- •Характеристика дополнительных ограничений скорости и мероприятий по их устранению
- •Варианты заданий на выполнение лабораторной работы
- •4. Нечеткие множества
- •4.1. Основы теории нечетких множеств и нечеткой логики
- •4.2. Лабораторная работа № 8. Решение прикладной задачи с использованием нечетких множеств
- •5. Генетические алгоритмы
- •5.1. Эволюционные вычисления
- •5.2. Лабораторная работа № 9. Решение оптимизационной задачи с использованием генетического алгоритма
- •Исходная популяция
- •Популяция после скрещивания
- •Расчет значений целевой функции
- •Популяция после редукции
- •Варианты заданий
- •6. Искусственные нейронные сети
- •6.1. Распознавание образов
- •6.2. Лабораторная работа № 10. Распознавание образов с использованием искусственной нейронной сети
- •Варианты заданий на выполнение лабораторной работы
- •Заключение
- •Библиографический список
- •Оглавление
- •Интеллектуальные информационные системы
- •6 80021, Г. Хабаровск, ул. Серышева, 47
- •Интеллектуальные информационные системы
6.2. Лабораторная работа № 10. Распознавание образов с использованием искусственной нейронной сети
Цель работы: освоение методов распознавания образов на базе искусственных нейронных сетей.
Рекомендации по выполнению работы
А. Описание задачи
На основе предъявленного образа (графического файла) требуется автоматическое определение цифры, изображенной в файле.
Поэтапно процедура разработки и обучения сети выглядит следующим образом.
Этап 1. Определение характеристик распознаваемых образов:
тип распознаваемых образов – растровый графический файл;
набор измеряемых параметров образов – образ задается совокупностью пикселей, каждый из которых характеризуется интенсивностью красного, зеленого и синего цветов (модель RGB);
классы распознаваемых образов – цифры от 0 до 9 (10 классов).
Этап 2. Изображение, находящееся в файле, можно пропустить через «черно-белый» фильтр, разбить на стандартное количество одинаковых сегментов (например, заданных матрицей 8 × 10) и определить для каждого сегмента преобладающий цвет (черный или белый).
Таким образом, вектор входных величин сети для отдельного распознаваемого образа (файла) будет состоять из одного и того же количества элементов (8 × 10 = 80 элементов), каждый из которых может принимать значения: 1 (цвет сегмента черный) или 0 (цвет сегмента белый).
|
|
|
|||||||
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
||
Рис. 48. Преобразование исходного образа
Количество элементов вектора выходных величин будет соответствовать количеству классов распознаваемых образов. Значения элементов вектора нормализованы и равны 1 (признак принадлежности к классу) или 0 (в противном случае).
Этап 3. Проектирование архитектуры искусственной нейронной сети:
количество слоев – 3;
количество нейронов в слое:
входном – 80;
промежуточном – 40;
выходном – 10;
тип связей между нейронами – прямые;
функция активации – сигмоидальная
.первая производная функции активации –
.
Этап 4. Обучение сети выполняется с помощью алгоритма с обратным распространением ошибки.
Для обучения экспертом приготовлено 20 обучающих образов – по два на каждый класс (цифру), один из которых эталонный (идеальный) и один с незначительной модификацией. Каждый образ характеризуется строго определенными векторами входных и выходных величин. Вектор входных величин соответствует преобразованному обучающему образу (файлу) и состоит из 80 элементов, значения которых 0 или 1 согласно цвету сегмента. Вектор выходных величин соответствует классу, которому принадлежит образ, и состоит из 10 элементов, значения которых равны 1 или 0. Так, для обучающего образа цифры «0» вектор выходных величин – [1, 0, 0, 0, 0, 0, 0, 0, 0, 0].
Перед процедурой обучения весовые коэффициенты всех связей инициализируются малыми случайными значениями в диапазоне [-0.3, 0.3].
При обучении все 20 образов последовательно прогоняются через сеть с корректировкой весовых коэффициентов после прогона каждого образа. Данная процедура повторяется 500 раз (количество эпох – 500). Норма обучения принята равной 0.1.
Этап 5. Тестирование сети выполняется с помощью контрольных образов. Например, если на вход сети был подан образ цифры «2», а на выходе получен вектор [0 0.11 0.76 0.23 0.01 0.05 0 0 0 0.25], то распознавание прошло успешно.
Задание на выполнение работы
Разработать программу «Распознавание образов», отвечающую следующим требованиям.
А. Распознавание образов должно выполняться искусственной нейронной сетью, обучаемой по алгоритму с обратным распространением ошибки. Общие требования к сети и программе:
связи между нейронами – прямые;
количество скрытых слоев – 1;
количество нейронов выходного слоя (классов образов) – не менее 4;
количество обучающих образов – не менее 1 на каждый класс образов;
функция активации – сигмоидальная
;распознаваемые (тестовые) образы – формируются пользователем;
норма обучения и количество эпох обучения – задаются пользователем;
режим обучения или распознавания – задается пользователем.
Примерный интерфейс программы показан на рис. 49.
Рис. 49. Программа «Искусственная нейронная сеть»15
Б. Индивидуальный вариант выбрать согласно табл. 16.
Таблица 16
