Методическое пособие по выполнению лабораторных работ, страница 2
Описание файла
Документ из архива "Методическое пособие по выполнению лабораторных работ", который расположен в категории "". Всё это находится в предмете "нейронные вычислительные сети" из 7 семестр, которые можно найти в файловом архиве РТУ МИРЭА. Не смотря на прямую связь этого архива с РТУ МИРЭА, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "нейронные вычислительные сети" в общих файлах.
Онлайн просмотр документа "Методическое пособие по выполнению лабораторных работ"
Текст 2 страницы из документа "Методическое пособие по выполнению лабораторных работ"
После подготовки набора представительских выборок (обучающих пар) и обучения, следует протестировать получившуюся нейронную сеть (проверить качество ее обучения). Тестирование проводится на оставшихся трех четырехпозиционных двоичных кодах табл. 2, которые не вошли в набор представительских выборок, использованный при обучении.
ЛАБОРАТОРНАЯ РАБОТА № 3.
РАСПОЗНАВАНИЕ СИМВОЛОВ
Цель – разработать и исследовать нейронную сеть обратного распространения, предназначенную для распознавания образов.
Задание
-
Построить и обучить нейронную сеть, которая могла бы решать задачу распознавания символов.
-
Произвести тестирование нейронной сети при добавлении шума.
Описание работы
На качество решения поставленной задачи в сильной степени влияют ограничения, которые накладываются производителями на демонстрационные версии своих программных продуктов. Так, в демо-версии программного продукта TRAJAN количество нейронов в слое не может превышать 9, поэтому при распознавании символов будем оперировать матрицей 3 × 3.
Определение структуры нейронной сети
Представим в виде матрицы 3 × 3 четыре латинские буквы X, Y, L, I и обучим нейронную сеть распознавать их матричное представление (см. табл. 3).
Таблица 3. Матричное представление для букв Х, Y, I и L
X | Y | I | L | ||||||||
1 | 0 | 1 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 0 |
0 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 1 | 0 | 0 |
1 | 0 | 1 | 0 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 1 |
В соответствии с табл. 3 входной сигнал для нейронной сети может быть представлен в виде развернутого растра – вектора длинной 9. Например, для буквы X это:
101010101
Теперь определимся с выходами нейронной сети. Очевидно, что для распознавания образов нейронная сеть должна иметь возможность формировать столько выходных сигналов, сколько образов она должна уметь распознавать.
В нашем случае таких образов четыре, поэтому возможны два варианта представления выходных данных нейронной сети:
-
выходной слой с двумя нейронами (выходами), т.е. каждому символу ставится в соответствие двухпозиционный двоичный код;
-
выходной слой с четырьмя нейронами (выходами), т.е. каждому символу свой выход.
Предлагается выбрать любой вариант.
Обучение нейронной сети
Набор обучающих пар, используемых для обучения нейронной сети, составляется с учетом того, какой вариант формирования выходного слоя выбран в предыдущем разделе. Если выбран вариант с двумя выходами – каждой букве ставится в соответствие двухпозиционный двоичный код, то выходной слой выглядит следующим образом:
Х – 00 Y – 01 I – 10 L – 11
Если выбран вариант с четырьмя выходами, то выходной слой такой:
Х – 0001 Y – 0010 I – 0100 L – 1000
После того, как набор представительских выборок (обучающих пар) создан, необходимо обучить нейронную сеть и проверить, насколько корректно она решает поставленную задачу.
Проверка работы нейронной сети
После качественного обучения нейронной сети, следует внести в исходные данные некоторый шум (хотя это сделать непросто, так как в матрицу 3 × 3 очень трудно добавлять шум).
Например, вместо растра буквы I –
010010010
попробуйте подать
010110010
и посмотреть: удастся ли нейронной сети распознать символ, несмотря на внесенные в данные шум.
ЛАБОРАТОРНАЯ РАБОТА № 4.
ИСКУССТВЕННЫЙ НОС
Цель – разработать и исследовать нейронную сеть обратного распространения для искусственного носа, предназначенного для химического анализа воздушной среды .
Задание
-
Исследовать и проанализировать имеющиеся экспериментальные данные (табл. 4), и определить количество вводов и выводов, требуемых для полносвязанной нейронной сети обратного распространения.
-
Создать и обучить нейронную сеть, которая будет способна указывать наличие определенных примесей в воздухе при анализе показаний химических датчиков.
-
Обучить нейронную сеть, расшив количество представительских выборок (обучающих пар), применяемых для обучения нейронной сети (табл. 5).
-
Определить оптимальную структуру нейронной сети с точки зрения минимизации среднеквадратической ошибки обучения.
-
Обучить нейронную сеть, изменив параметры алгоритма обратного распространения.
-
Для пп. 1–3 построить графические зависимости среднеквадратической ошибки обучения от количества нейронов, используемых в скрытых слоях, и от количества итераций, используемых для обучения.
-
Сравнить результаты обучения в пп. 1–3.
-
Ответить на вопросы лабораторной работы.
Определение количества вводов и выводов нейронной сети
Сформируйте представительские выборки (обучающие пары) для проведения обучения.
Для этого используйте следующие рекомендации.
1. Количество входов нейронной сети должно соответствовать количеству химических датчиков (рис. 1).
2. Существует два основных метода кодировки выхода нейронной сети. Первый – это использование бинарного вектора: для каждой примеси только один единственный выход принимает значение 1. В этом случае количество выходов равно количеству примесей, определяемых системой. В другом случае все номинальные добавки пронумерованы и их числа перенесены в бинарную систему. В данной работе используйте первый метод.
3. Исходные данные:
-
начальные экспериментальные данные, в виде показаний химических сенсоров, представлены в табл. 4;
-
рекомендуемое число входов сети 11;
-
рекомендуемое число выходов 6;
-
рекомендуемое начальное число нейронов скрытого (внутреннего) слоя 4.
4. Вторичные экспериментальные данные, в виде показаний химических сенсоров, представлены в табл. 5: набор представительских выборок
включает шесть обучающих пар, которые, естественно, подготовлены в формате первой обучающей пары (табл. 4).
Р ис. 1. Топология нейронной сети прототипа искусственного носа
Таблица 4. Первичная обучающая пара
Исследуемый вектор, составленный по показаниям сенсоров и формирующий вход нейронной сети | Выходы нейронной сети |
{1; 0,05; 0,1; 0,3; 0,07; 0,08; 0,2; 0,05; 0,2; 0,6; 0,8} | {0, 0, 0, 0, 0, 1} |
Таблица 5. Набор вторичных обучающих пар
Исследуемые векторы, составленные по показаниям сенсоров и формирующие вход нейронной сети | Выходной вектор нейронной сети |
{1; 0,05; 0,1; 0,3; 0,07; 0,08; 0,2; 0,05; 0,2; 0,6; 0,8} | «Нет» |
{0,8; 0,4; 0,7; 0,6; 0,1; 0,5; 1,0; 0,75; 0,5; 0,7; 0,8} | Ацетон |
{0,9; 0,2; 0,4; 0,5; 0,1; 0,7; 0,6; 0,5; 0,5; 0,7; 0,8} | Аммиак |
{0,85; 0,7; 0,8; 0,65; 0,1; 0,4; 1,0; 0,7; 0,4; 0,6; 0,7} | Изопропанол |
{0,9; 0,3; 0,3; 0,4; 0,04; 0,1; 0,5; 0,3; 0,2; 0,7; 0,8} | Белый «штрих» |
{0,95; 0,18; 0,21; 0,3; 0,05; 0,1; 0,3; 0,2; 0,2; 0,5; 0,7} | Уксус |
Определение топологии нейронной сети
Практические исследования показывают, что одного внутреннего (скрытого) слоя достаточно.
Обучение нейронной сети
Следует проводить при помощи алгоритма обратного распространения. Используйте нейросетевой симулятор TRAJAN или любой другой доступный программный продукт для моделирования нейронных сетей, который поддерживает данный алгоритм обучения.
Как результат, получите надежную и быстродействующую нейронную сеть искусственного носа, применяемого для контроля атмосферы в воздушной среде промышленных, офисных и домашних помещениях и в других задачах.
Вопросы для проверки
-
Назовите основное свойство многослойных нейронных сетей прямого распространения.
-
Какие существуют модификации алгоритма обратного распространения?
-
Назовите распространенные направления применения искусственного носа.
ЛАБОРАТОРНАЯ РАБОТА № 5.
ПРОГНОЗИРОВАНИЕ
Цель – разработать и исследовать нейронную сеть обратного распространения, предназначенную для прогнозирования временных серий, а также для анализа качества генератора случайных чисел.
Задание
-
Создать и обучить нейронную сеть, предназначенную для анализа временных серий заданной размерности и отражающую структуру данных серий.
-
Осуществить прогноз значений будущих элементов временных серий.
Исследуемые временные серии
Объектом исследования являются временные серии, полученные с помощью генератора случайных чисел, формирующего равномерно распределенные числовые значения.
За основу рекомендуется взять сто элементов (чисел) временной серии, значения которых лежат в диапазоне от 0 до 99. Данные временные серии следует взять из табл. 5.
Выясним, есть ли какая-либо закономерность в появлении элементов данных временных серий и тем самым определим качество генератора случайных чисел, который по идее должен обладать свойством некоррелированности значений числовых последовательностей.
Таблица 5. Числа в диапазоне от 0 до 100, полученные с использованием генератора случайных чисел Турбо-паскаль
Номера чисел | Числа, полученные с использованием функции Random(100) Турбо-паскаль | |||||||||
1 – 10 | 0 | 3 | 86 | 20 | 27 | 67 | 31 | 16 | 37 | 42 |
11 – 20 | 8 | 47 | 7 | 84 | 5 | 29 | 91 | 36 | 77 | 32 |
21 – 30 | 69 | 84 | 71 | 30 | 16 | 32 | 46 | 24 | 82 | 27 |
31 – 40 | 48 | 14 | 87 | 28 | 77 | 97 | 49 | 88 | 82 | 2 |
41 – 50 | 14 | 14 | 50 | 2 | 59 | 0 | 77 | 65 | 77 | 70 |
51 – 60 | 55 | 20 | 68 | 59 | 95 | 64 | 99 | 24 | 67 | 29 |
61 – 70 | 8 | 77 | 49 | 88 | 50 | 57 | 95 | 68 | 33 | 0 |
71 – 80 | 70 | 98 | 77 | 74 | 19 | 14 | 91 | 78 | 58 | 86 |
81 – 90 | 68 | 28 | 9 | 62 | 28 | 87 | 16 | 27 | 54 | 96 |
91 – 100 | 17 | 15 | 26 | 17 | 57 | 49 | 28 | 15 | 60 | 73 |
Определение начальной структуры нейронной сети
Чтобы синтезировать оптимальную структуру, необходимо подготовить и обучить несколько нейронных сетей и проверить качество выполнения требуемых операций. Ниже приведем основные этапы синтеза такой структуры.
-
В качестве нейронной сети предлагается воспользоваться сетью типа многослойный персептрон.
-
Количество входов соответствует количеству выбираемых элементов из временных серий (в нашем случае – N).
-
Число нейронов во внутренних (скрытых) слоях и число таких слоев зависит от сложности задачи анализа или прогнозирования временных серий.
-
Выходной слой нейронной сети следует составить из одного нейрона, значение которого будет соответствовать прогнозируемому элементу временных серий.
Обучение нейронной сети