- •Министерство образования и науки Российской Федерации Сибирский федеральный университет «Моделирование систем и процессов»
- •Оглавление
- •Общие сведения
- •Лабораторная работа 1 Проведение полного факторного эксперимента
- •Лабораторная работа 2 Парный регрессионный анализ
- •Лабораторная работа 3 Идентификация математической модели
- •Лабораторная работа 4 Составление динамической модели в оду
- •Лабораторная работа 5 Построение нейросети в Qnet
- •Лабораторная работа 6 «Виртуальный электролизер»
- •Критерии в задачах математической статистики
- •Интерфейс пользователя программы Qnet
- •Интерфейс пользователя программы «Виртуальный электролизер»
Лабораторная работа 5 Построение нейросети в Qnet
Цель работы: ознакомиться с понятиями нейронных сетей, видами функций активации, типами архитектур нейросетей, обучением нейросети; создать сеть, обучить сеть и исследовать обученную сеть с новым набором входов (т.е. один столбец данных обнулен).
Краткие теоретические сведения
Нейронные сети – это класс аналитических методов, построенных на принципах функционирования мозга и позволяющих прогнозировать значения некоторых переменных в новых наблюдениях по данным других наблюдений, после прохождения этапа обучения на имеющихся данных.
Искусственным нейроном (рис. 5.1) называется простой элемент, сначала вычисляющий взвешенную сумму V входных величин xi:
.
Здесь N – размерность пространства входных сигналов.
|
Рис. 5.1. Искусственный нейрон |
Затем полученная сумма сравнивается с пороговой величиной W0, вслед за чем вступает в действие нелинейная функция активации f. Коэффициенты Wi во взвешенной сумме обычно называют синаптическими коэффициентами или весами. Саму же взвешенную сумму V называют потенциалом нейрона i. Выходной сигнал тогда имеет вид f(V).
Величину порогового барьера можно рассматривать как еще один весовой коэффициент при постоянном входном сигнале. В этом случае мы говорим о расширенном входном пространстве: нейрон с N-мерным входом имеет N+1 весовой коэффициент. Если ввести в уравнение пороговую величину W0, то оно перепишется так:
.
В зависимости от способа преобразования сигнала и характера активации возникают различные виды нейронных структур. Существуют детерминированные нейроны, когда активизирующая функция однозначно вычисляет выход по входу, и вероятностные нейроны, состояние которых в момент t есть случайная функция потенциала и состояния в момент (t–1).
В искусственных нейронах могут быть различные функции активации:
- линейная, выходной сигнал нейрона равен его потенциалу;
- пороговая, нейрон выбирает решение из двух вариантов – активен / неактивен;
- многопороговая, выходной сигнал может принимать одно из значений q, определяемых (q–1) порогом внутри предельных значений;
- сигмоидная, рассматриваются два вида сигмоидных функций:
– с
выходными значениями в промежутке
[0,1];
– с
выходными значениями в промежутке
[-1,1].
Коэффициент b определяет крутизну сигмоида. Поскольку сигмоидная функция является гладким отображением (-,) на (-1,1), то крутизну можно учесть через величины весов и порогов, и без ограничения общности можно полагать ее равной единице.
Из точек на плоскости и соединений между ними можно построить множество графических фигур, называемых графами. Если каждую точку представить себе как один нейрон, а соединения между точками – как дендриты и синапсы, то мы получим нейронную сеть. Но не всякое соединение нейронов будет работоспособно или вообще целесообразно. Поэтому на сегодняшний день существует только несколько работающих и реализованных программно архитектур нейросетей.
По архитектуре связей нейросети могут быть сгруппированы в два класса: сети прямого распространения, в которых связи не имеют петель (рис. 5.2), и сети рекуррентного типа, в которых возможны обратные связи (рис. 5.3).
|
|
Рис. 5.2. Сеть прямого распространении |
Рис. 5.3. Рекуррентная сеть |
Сети прямого распространения подразделяются на однослойные перцептроны (сети) и многослойные перцептроны (сети). Рассмотрим устройство простейшей многослойной нейросети. Любая нейронная сеть состоит из входного слоя и выходного слоя. Соответственно подаются независимые и зависимые переменные. Входные данные преобразуются нейронами сети и сравниваются с выходом. Если отклонение больше заданного, то специальным образом изменяются веса связей нейронов между собой и пороговые значения нейронов. Снова происходит процесс вычислений выходного значения и его сравнение с эталоном. Если отклонения меньше заданной погрешности, то процесс обучения прекращается.
Помимо входного и выходного слоев в многослойной сети существуют так называемые скрытые слои. Они представляют собой нейроны, которые не имеют непосредственных входов исходных данных, а связаны только с выходами входного слоя и с входом выходного слоя. Таким образом, скрытые слои дополнительно преобразуют информацию и добавляют нелинейности в модели. Устройство многослойного перцептрона приведено на рис. 5.4.
|
Рис. 5.4. Многослойный перцептрон |
Если однослойная нейросеть очень хорошо справляется с задачами классификации, так как выходной слой нейронов сравнивает полученные от предыдущего слоя значения с порогом и выдает значение либо ноль, то есть меньше порогового значения, либо единицу больше порогового (для случая пороговой внутренней функции нейрона), и не способен решать большинство практических задач, то многослойный перцептрон с сигмоидными решающими функциями способен аппроксимировать любую функциональную зависимость (это было доказано в виде теоремы). Но при этом не известно ни нужное число слоев, ни нужное количество скрытых нейронов, ни необходимое для обучения сети время.
Поведение рекуррентных сетей описывается дифференциальными или разностными уравнениями, как правило, первого порядка. Это гораздо расширяет области применения нейросетей и способы их обучения. Сеть организована так, что каждый нейрон получает входную информацию от других нейронов, возможно, и от самого себя, и от окружающей среды. С их помощью этого типа сетей можно моделировать нелинейные динамические системы.
Среди рекуррентных сетей можно выделить сети Хопфилда и сети Кохонена.
Сеть Хопфилда построена из N нейронов, которые образуют прямоугольную решетку на плоскости.
Нейросеть Хопфилда можно использовать в качестве ассоциативной памяти. Архитектура сети Хопфилда изображена на рис. 5.5.
|
Рис. 5.5. Нейросеть Хопфилда |
Сеть Кохонена еще называют «самоорганизующейся картой признаков». Сеть такого типа рассчитана на самостоятельное обучение во время обучения, сообщать ей правильные ответы необязательно. В процессе обучения на вход сети подаются различные образцы. Сеть улавливает особенности их структуры и разделяет образцы на кластеры, а уже обученная сеть относит каждый вновь поступающий пример к одному из кластеров, руководствуясь некоторым критерием «близости».
Сеть состоит из одного входного и одного выходного слоя. Количество элементов в выходном слое непосредственно определяет, сколько различных кластеров сеть сможет распознать. Каждый из выходных элементов получает на вход весь входной вектор. Как и во всякой нейронной сети, каждой связи приписан некоторый синоптический вес.
Главное отличие и преимущество нейросетей перед классическими средствами прогнозирования и классификации заключается в их способности к обучению.
На этапе обучения происходит вычисление синоптических коэффициентов в процессе решения нейронной сетью задач.
Для обучения нейронной сети требуются обучающие данные. Они должны отвечать свойствам представительности и случайности или последовательности. Все зависит от класса решаемой задачи. Действия, которые при этом происходят, можно назвать контролируемым обучением. Контролируемое обучение нейросети можно рассматривать как решение оптимизационной задачи. Ее целью является минимизация функции ошибок Е на данном множестве примеров путем выбора значений весов W. Достижение минимума называется сходимостью процесса обучения. Обычно в качестве меры погрешности берется средняя квадратичная ошибка (СКО):
,
где М – число примеров в обучающем множестве.
Минимизация величины Е осуществляется с помощью градиентных методов. Изменение весов происходит в направлении, обратном к направлению наибольшей крутизны для функции:
.
Здесь – определяемый пользователем параметр, который называется коэффициентом обучения.
Одним из самых распространенных алгоритмов обучения нейросетей прямого распространения является алгоритм обратного распространения ошибки (Back Propagation, BP).
Это алгоритм градиентного спуска, минимизирующий суммарную квадратичную ошибку:
.
Здесь индекс i пробегает все выходы многослойной сети.
Основная идея ВР состоит в том, чтобы вычислять чувствительность ошибки сети к изменениям весов. Для этого нужно вычислить частные производные от ошибки по весам. Пусть обучающее множество состоит из Р образцов, и входы k-го образца обозначены через {xik}. Вычисление частных производных осуществляется по правилу цепи: вес входа i-го нейрона, идущего от j-го нейрона, пересчитывается по формуле:
где – длина шага в направлении, обратном к градиенту.
Если рассмотреть отдельно k-тый образец, то соответствующее изменение весов равно:
Множитель
вычисляется через аналогичные множители
из последующего слоя, и ошибка, таким
образом, передается в обратном направлении.
Для выходных элементов получим:
Для скрытых элементов множитель определяется так:
где индекс h пробегает номера всех нейронов, на которые воздействует i-ый нейрон.
Алгоритм обратного распространения ошибки представлен на рис. 5.6.
|
Рис. 5.6. Алгоритм обратного распространения ошибки |
Приведем способы обеспечения и ускорения сходимости:
- выбор начальных весов. Цель состоит в том, чтобы найти как можно более хорошее начальное приближение к решению и таким образом сэкономить время обучения и улучшить сходимость. Классический подход к этой проблеме состоит в том, чтобы случайным образом выбрать малые значения для всех весов, чтобы быть уверенным, что ни один из сигмоидных элементов не перенасыщен. Однако это не дает полной гарантии, что такое приближение приведет к глобальному минимуму или уменьшит время сходимости;
- упорядочение данных. Чтобы обучение не двигалось в ложном направлении при обработке задачи классификации или распознавания, но не задачи аппроксимирования временных рядов, данные нужно перемешивать случайным образом. Иначе нейросеть «выучит» последовательность случайно оказавшихся рядом значений как истинное правило, и потом будет делать ошибку;
- импульс. Иногда при изменении весов связей нейронов кроме текущего изменения веса к нему прибавляют вектор смещения с предыдущего шага, взятый с некоторым коэффициентом. В этом случае говорят, что учитывается предыдущий импульс движения;
- управление величиной шага. Величина шага сети это - мера точности обучения сети. Чем он больше, тем более грубым будет следующее уменьшение суммарной ошибки сети. Чем он меньше, тем больше времени сеть будет тратить на обучение и тем более возможно ее попадание в окрестность локального минимума ошибки. Поэтому управление шагом имеет важное значение для улучшения сходимости нейронной сети;
- оптимизация архитектуры сети. Одной из самых больших проблем при использовании нейросетей является невозможность предварительного определения оптимального количества скрытых слоев и нейронов в них. Если нейронов будет слишком мало, то это равносильно потере каких-то нелинейных связей в модели, если нейронов будет много, то это может привести к «переобучению» сети, то есть она просто «выучит» данные, а не распознает их структуру. Поэтому применяется два основных подхода:
1) деструктивный подход: берется сеть заведомо большего размера, чем нужно, и в процессе обучения из нее удаляются связи и даже сами нейроны;
2) конструктивный подход: первоначально берется маленькая сеть, и к ней, в соответствии со структурой и сложностью задачи, добавляются новые элементы;
- масштабирование данных. При рассмотрении решающих функций внутри нейронов указано, что диапазон выходных значений нейрона лежит в интервале (0,1) либо (-1,1). Поэтому для лучшей работы сети следует предварительно масштабировать данные обучающей выборки к интервалу от 0 до 1. Это даст меньшие ошибки при обучении и работе нейросети;
- организация процесса обучения. Из теоремы об отображении практически любой функции с помощью многослойной нейросети следует, что обучаемая нами нейронная сеть в принципе способна сама подстроиться под любые данные с целью минимизации суммарной квадратичной ошибки. Чтобы этого не происходило при обучении нейросетей используют следующий способ проверки сети. Для этого обучающую выборку еще перед началом обучения разбивают случайным образом на две подвыборки: обучающую и тестовую. Обучающую выборку используют собственно для процесса обучения, при этом изменяются веса нейронов. А тестовую используют в процессе обучения для проверки на ней суммарной квадратичной ошибки, но при этом не происходит изменение весов. Если нейросеть показывает улучшение аппроксимации и на обучающей, и на тестовой выборках, то обучение сети происходит в правильном направлении. Иначе может снижаться ошибка на обучающей выборке, но происходить ее увеличение на тестовой. Последнее означает, что сеть «переобучилась» и уже не может быть использована для прогнозирования или классификации. В этом случае немного изменяются веса нейронов, чтобы вывести сеть из окрестности локального минимума ошибки.
Ниже приведен перечень возможных промышленных применений нейронных сетей, на базе которых либо созданы коммерческие продукты, либо реализованы демонстрационные прототипы:
- банки и страховые компании;
- административное обслуживание;
- нефтяная и химическая промышленность;
- военная промышленность и аэронавтика;
- промышленное производство;
- служба безопасности;
- биомедицинская промышленность;
- телевидение и связь.
Функции активации служат для управления силой выходного сигнала для узла (кроме входного слоя, который использует входы непосредственно). Эти функции устанавливают величину выходного сигнала между 0 и 1. Вход в функцию активации – скалярная произведение входных сигналов всего узла и вектора веса узла. «Qnet» дает возможность выбора из двух различных типов передаточных функций: сигмоид и гауссовой.
Рассмотрим четыре вида функции активации, используемых в «Qnet».
Сигмоидная
– передаточная функция, используемая
в «Qnet» по умолчанию, наиболее широко
используемая функция для нейросетей с
обратным распространением. Сигмоидная
функция представлена математическим
отношением
.
Кроме того, она обладает свойством
усиливать слабые сигналы лучше, чем
большие, и предотвращает насыщение от
больших сигналов, так как они соответствуют
областям аргументов, где сигмоид имеет
пологий наклон.
Гауссова передаточная функция может значительно изменять динамику модели нейросети. Сети, основанные на гауссовых функциях активации, имеют тенденцию к более быстрому обучению, чем сигмоидные аналоги, но также и имеют тенденцию, чтобы произвести сети, которые являются склонными к запоминанию и менее годны к употреблению.
Аналоги сигмоидальной и гауссовой функции – гиперболический тангенс и гиперболический секанс. Гиперболический тангенс подобен сигмоидальной кривой, но может проявлять различную динамику изучения в течение обучения. Это может ускорять изучение для некоторых моделей, но это также может привести к меньшей точности, чем у моделей, основанных на сигмоидальных функциях.
Одной из самых больших проблем при использовании нейросетей является невозможность предварительного определения оптимального количества скрытых слоев и нейронов в них. Поэтому применяется два основных подхода:
- деструктивный подход: берется сеть заведомо большего размера, чем нужно, и в процессе обучения из нее удаляются связи и даже сами нейроны;
- конструктивный подход: первоначально берется маленькая сеть, и к ней, в соответствии со структурой и сложностью задачи, добавляются новые элементы.
При обучении нейросетей в «Qnet» используются следующий способ проверки сети. Обучающую выборку еще перед началом обучения разбивают случайным образом на две подвыборки: обучающую и тестовую. Обучающую выборку используют собственно для процесса обучения, при этом изменяются веса нейронов. А тестовую используют в процессе обучения для проверки на ней суммарной квадратичной ошибки, но при этом не происходит изменение весов.
Решение прямой задачи заключается в нахождении выходных величин объекта управления (рис. 5.7) при изменении его входных параметров или управляющих воздействий.
Решение обратной задачи (рис. 5.8) заключается в нахождении управляющих воздействий или входных параметров для получения заданных выходных величин.
|
|
Рис. 5.7. Блок-схема ОУ |
Рис. 5.8. Блок-схема решения обратной задачи |
Методика выполнения работы
Решаем прямую задачу в Qnet.
С целью обучения нейросети в программе Qnet производится формирование базы исходных данных.
Файл с обучающими данными преобразуем в ASCII формат (текстовый файл, столбцы разделены запятыми, разделитель десятичной части точка).
Столбцы с данными располагаем в следующей последовательности: столбцы входных параметров, управляющих воздействий, выходных величин (табл. 5.1).
Таблица 5.1
Часть обучающих данных
x1 |
x2 |
x3 |
x4 |
x5 |
x6 |
x7 |
x8 |
u1 |
u2 |
y |
56 |
51 |
60 |
46 |
51 |
35 |
56 |
37 |
57 |
38 |
86,9 |
60 |
54 |
65 |
50 |
58 |
42 |
62 |
42 |
63 |
43 |
85,5 |
67 |
58 |
68 |
50 |
62 |
44 |
63 |
44 |
64 |
45 |
88,1 |
58 |
53 |
62 |
48 |
53 |
37 |
58 |
39 |
59 |
40 |
86,3 |
37 |
8 |
39 |
7 |
44 |
13 |
47 |
20 |
47 |
20 |
111,6 |
37 |
8 |
39 |
7 |
44 |
13 |
47 |
20 |
47 |
20 |
112,0 |
61 |
42 |
64 |
41 |
67 |
43 |
70 |
44 |
70 |
44 |
112,1 |
62 |
36 |
62 |
34 |
66 |
38 |
67 |
41 |
67 |
41 |
111,0 |
42 |
13 |
44 |
12 |
49 |
18 |
52 |
25 |
52 |
25 |
111,0 |
61 |
42 |
64 |
41 |
67 |
43 |
70 |
44 |
70 |
44 |
114,5 |
66 |
43 |
62 |
36 |
53 |
31 |
60 |
37 |
59 |
37 |
92,5 |
59 |
37 |
51 |
29 |
50 |
25 |
53 |
28 |
52 |
28 |
94,2 |
61 |
40 |
53 |
32 |
52 |
28 |
55 |
31 |
54 |
31 |
94,5 |
62 |
44 |
57 |
34 |
52 |
32 |
56 |
33 |
55 |
33 |
92,3 |
Задаем параметры обучения сети (рис. 5.9).
|
Рис. 5.9. Окно состояния обучения нейросети |
Для исследования обученной нейросети вводим входные параметры и управляющие воздействия, при которых хотим узнать отклик системы.
Обнуляем один столбец входов (табл. 5.2).
Таблица 5.2
Часть исследовательских данных
x1 |
x2 |
x3 |
x4 |
x5 |
x6 |
x7 |
x8 |
u1 |
u2 |
y |
1 |
51 |
60 |
46 |
51 |
35 |
56 |
37 |
57 |
38 |
0 |
2 |
54 |
65 |
50 |
58 |
42 |
62 |
42 |
63 |
43 |
0 |
3 |
58 |
68 |
50 |
62 |
44 |
63 |
44 |
64 |
45 |
0 |
4 |
53 |
62 |
48 |
53 |
37 |
58 |
39 |
59 |
40 |
0 |
5 |
8 |
39 |
7 |
44 |
13 |
47 |
20 |
47 |
20 |
0 |
6 |
8 |
39 |
7 |
44 |
13 |
47 |
20 |
47 |
20 |
0 |
7 |
42 |
64 |
41 |
67 |
43 |
70 |
44 |
70 |
44 |
0 |
8 |
36 |
62 |
34 |
66 |
38 |
67 |
41 |
67 |
41 |
0 |
9 |
13 |
44 |
12 |
49 |
18 |
52 |
25 |
52 |
25 |
0 |
10 |
42 |
64 |
41 |
67 |
43 |
70 |
44 |
70 |
44 |
0 |
11 |
43 |
62 |
36 |
53 |
31 |
60 |
37 |
59 |
37 |
0 |
12 |
37 |
51 |
29 |
50 |
25 |
53 |
28 |
52 |
28 |
0 |
13 |
40 |
53 |
32 |
52 |
28 |
55 |
31 |
54 |
31 |
0 |
14 |
44 |
57 |
34 |
52 |
32 |
56 |
33 |
55 |
33 |
0 |
|
Запускаем режим исследования нейросети (Recall mode). В результате получим информационное окно (рис. 5.10). Из него мы можем посмотреть входы (рис. 5.11) и полученные значения выходов (рис. 5.12) сети и другую информацию. Так же выходные значения можно сохранить в виде таблицы или текстового файла.
|
Рис. 5.10. Информационное окно |
|
Рис. 5.11. Значение 1-го входного параметра |
|
Рис. 5.12. Значение выходной величины |
Решаем обратную задачу в Qnet.
Столбцы с данными располагаем в последовательности, зависящей от того, что необходимо найти.
Например, если наша задача будет заключаться в нахождении управляющих воздействий для получения требуемых выходных величин, то статистические данные (табл. 5.1) для обучения должны располагаться в файле в следующем порядке (слева на право): столбцы входных параметров, выходных величин, управляющих воздействий.
Вводим входные параметры и выходные величины, при которых хотим узнать отклик системы (рис. 5.13).
Обнуляем столбцы управляющих воздействий (табл. 5.3).
Запускаем режим исследования нейросети (Recall mode). В результате появится окно «Исследование обученной сети» (рис. 5.14), с помощью которого мы анализируем отклик обученной сети на интересующий нас набор данных.
|
Рис. 5.13. Окно анализа обучения нейросети |
Таблица 5.1
Часть исследовательских данных
x1 |
x2 |
x3 |
x4 |
x5 |
x6 |
x7 |
x8 |
y |
u1 |
u2 |
56 |
51 |
60 |
46 |
51 |
35 |
56 |
37 |
40 |
0 |
0 |
60 |
54 |
65 |
50 |
58 |
42 |
62 |
42 |
40 |
0 |
0 |
67 |
58 |
68 |
50 |
62 |
44 |
63 |
44 |
40 |
0 |
0 |
58 |
53 |
62 |
48 |
53 |
37 |
58 |
39 |
40 |
0 |
0 |
37 |
8 |
39 |
7 |
44 |
13 |
47 |
20 |
40 |
0 |
0 |
61 |
42 |
64 |
41 |
67 |
43 |
70 |
44 |
40 |
0 |
0 |
62 |
36 |
62 |
34 |
66 |
38 |
67 |
41 |
40 |
0 |
0 |
42 |
13 |
44 |
12 |
49 |
18 |
52 |
25 |
40 |
0 |
0 |
61 |
42 |
64 |
41 |
67 |
43 |
70 |
44 |
40 |
0 |
0 |
66 |
43 |
62 |
36 |
53 |
31 |
60 |
37 |
40 |
0 |
0 |
59 |
37 |
51 |
29 |
50 |
25 |
53 |
28 |
40 |
0 |
0 |
61 |
40 |
53 |
32 |
52 |
28 |
55 |
31 |
40 |
0 |
0 |
62 |
44 |
57 |
34 |
52 |
32 |
56 |
33 |
40 |
0 |
0 |
67 |
44 |
63 |
37 |
54 |
32 |
61 |
38 |
40 |
0 |
0 |
Меню NetGraph позволяет строить графики входные узлы / последовательность образцов (рис. 5.15) (в обратной задаче выходная величина ОУ является входом сети (рис. 5.16), в нашем случае девятым узлом входного слоя), и цель-отклик/последовательность образцов (рис. 5.17, 5.18), т.е. искомые управляющие воздействия и другие графики. Так же выходные значения можно сохранить в виде таблицы (рис. 5.19) или текстового файла (рис. 5.20).
|
Рис. 5.14. Окно исследования обученной сети |
|
Рис. 5.15. Значение 1-го входного параметра |
|
Рис. 5.16. Значения требуемой выходной величины, в обратной задаче являющейся входной |
|
Рис. 5.17. Значения 1-го управляющего воздействия |
|
Рис. 5.18. Значения 2-го управляющего воздействия |
1 0.000000 57.040150 0.000000 40.600475 2 0.000000 63.817848 0.000000 46.425022 3 0.000000 64.846283 0.000000 47.355972 4 0.000000 59.236732 0.000000 42.734882 5 0.000000 49.104942 0.000000 18.842512 6 0.000000 72.271027 0.000000 49.875851 7 0.000000 69.947166 0.000000 45.113506 8 0.000000 54.873634 0.000000 24.485012 9 0.000000 72.271027 0.000000 49.875851 10 0.000000 60.727966 0.000000 38.685101 11 0.000000 52.807316 0.000000 29.853371 12 0.000000 55.238426 0.000000 33.155014 13 0.000000 56.262875 0.000000 35.314507 14 0.000000 61.799984 0.000000 39.849197 15 0.000000 59.668934 0.000000 41.386406 |
Рис. 5.19. Значения искомых управляющих воздействий в табличном виде |
Targets and Network Outputs Network Name: NO NAME 1 => Output Node 1 (target,output) = 0.00000, 57.04015 1 => Output Node 2 (target,output) = 0.00000, 40.60048 2 => Output Node 1 (target,output) = 0.00000, 63.81785 2 => Output Node 2 (target,output) = 0.00000, 46.42502 3 => Output Node 1 (target,output) = 0.00000, 64.84628 3 => Output Node 2 (target,output) = 0.00000, 47.35597 4 => Output Node 1 (target,output) = 0.00000, 59.23673 4 => Output Node 2 (target,output) = 0.00000, 42.73488 5 => Output Node 1 (target,output) = 0.00000, 49.10494 5 => Output Node 2 (target,output) = 0.00000, 18.84251 6 => Output Node 1 (target,output) = 0.00000, 72.27103 6 => Output Node 2 (target,output) = 0.00000, 49.87585 |
Рис. 5.20. Значения искомых управляющих воздействий в текстовом файле |
Порядок выполнения работы
1. Изучить:
- понятия нейронных сетей;
- виды функций активации;
- типы архитектур нейросетей;
- метод обучения нейросети.
2. Создать и настроить нейросеть.
3. Составить исходную матрицу из статистических данных (входные параметры, управляющие воздействия и выходные величины) и, используя исходную матрицу, обучить нейросеть (табл. 5.1).
4. Создать новую матрицу изменив входные (т.е. обнулив один столбец входных данных) или управляющие воздействия (табл. 5.2) и исследовать обученную нейросеть с помощью новой матрицы.
5. Создать новую матрицу, задав требуемые значения выходных величин (табл. 5.3), и исследовать обученную нейросеть с помощью новой матрицы.
6. Оформить результаты работы.
Задания
Контрольные вопросы и задания
1. Что называют нейронной сетью?
2. Приведите примеры функций активации.
3. Какие существуют типы архитектур нейросети?
4. Опишите метод обучения нейросети.
5. Какие функции активации используются в Qnet?
6. Перечислите особенности программы Qnet.
7. Какие параметры задаются при проектировании сети в Qnet?
8. Какие параметры обучения сети можно задавать в Qnet?
