Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Metod_MEMS.doc
Скачиваний:
3
Добавлен:
23.11.2019
Размер:
5.02 Mб
Скачать

Крок 5. Перевірте всі задані параметри

Рисунок 5.10 - Перевірка заданих параметрів

Крок 6. Запустіть навчання системи

Пуск навчання/зупинка навчання…

Запустіть процес. В таблиці над кнопкою можна спостерігати, як міняється помилка навчання.

Розподіл помилки…

У діаграмі відображається розподіл помилки. Зелені стовпці – помилка на навчальній вибірці, червоні – на тестовій вибірці. Чим правіше стовпець, тим вище значення помилки. Шкала від 0 до 1. Чим вище стовпець, тим більше прикладів із зазначеною помилкою.

Розподіл прикладів у навчальній/тестовій вибірці…

На цих графіках можна відслідковувати наскільки результати, що спрогнозовані нейронною мережею збігаються зі значеннями в навчальній (ліворуч) і тестовій (праворуч) вибірці. Кожен приклад позначено на графіку точкою. Якщо точка попадає на виділену лінію (діагональ), то нейромережа передбачила результат з досить високою точністю. Якщо точка знаходиться вище діагоналі, значить нейромережа недооцінила результат, нижче – переоцінила. Необхідно домагатися, щоб точки розташовувалися якнайближче до діагоналі.

Крок 7. Розрахуйте кінцевий результат

У наборі вхідних параметрів введіть числа і натисніть на кнопку "Розрахунок".  У таблиці «розраховані параметри» висвічується результат. Якщо результати влаштовують, то натисніть на кнопку "Зберегти". Neural Network Wizard зберігає всі параметри і налаштування у файлі з розширенням nnw.

Рисунок 5.11 - Запуск системи

Крок 8. Результат розрахунку знаходиться в файлі з розширенням .Nnw.

[Network]

TeachSpeed=0.1

Miu=0.5

Alpha=1

Epoch=27612

CountLayers=3

(кількість нейронів в шарах)

Layer_0=2

Layer_1=3

Layer_2=1

% (синаптичні ваги)

% W_i_j_k – ваги синапсів (i = номер шару - 2, j – номер нейрону, k – номер синапсу даного нейрона).

W_0_0_0=1.88436421955477

W_0_0_1=1.09436537111843

W_0_0_2=2.2901761847617

W_0_1_0=1.70436421955478

W_0_1_1=0.574365371118406

W_0_1_2=2.23017618476171

W_1_0_0=4.25597733015697

W_1_1_0=3.11238189250291

W_1_2_0=3.91917004197399

WT_0_0=-3.59276885024955

WT_0_1=-1.04124724491013

WT_0_2=3.82886355094158

WT_1_0=-4.77655231133209

 

 Контрольні питання

  1. Що таке нейронна мережа і які її основні властивості?

  2. Яка структура нейрона?

  3. Які функції активації можуть бути використані в нейронних мережах?

  4. Які вимоги пред'являються до функцій активації?

  5. Які функції виконує вхідний шар в багатошаровій мережі?

Лабораторна робота №6

Нейромережеве прогнозування динамічного стану об'єктів керування

Мета: вивчення методики синтезу нейронних мереж орієнтованих на прогнозування сигналів.

Короткі теоретичні відомості

Розглянемо основні принципи застосування штучної нейронної мережі ADALINE в прогнозуванні значень детермінованого процесу . Функціональна схема настроювання ШНМ наведена на рис.6.1.

Рисунок 6.1 – Функціональна схема настроювання ШНМ

За допомогою екстраполяції нульового порядку неперервний сигнал приводиться до дискретної бази . Дискретний сигнал виходу об'єкту керування поступає на лінію затримки так, що на її виході формуються 2 сигнали: y(i-1), y(i-2). Настройка мережі реалізується за допомогою М-функції adapt, яка змінює параметри мережі на кожному кроці з метою мінімізації похибки e[i]= y[i] – a[i]. Якщо ця похибка нульова, то вихід мережі а[i] дорівнює y(i), тобто мережа виконує прогноз належним чином.

Нижче приведений сценарій, який призначений для вирішення завдання прогнозу сигналу на один крок вперед. Вхідний детермінований процес отриманий в результаті проходження ступінчастого сигналу через коливальну ланку.

Оскільки для формування входу застосована динамічна ланка другого порядку, то в мережі ADALINE буде використана ЛЗ з двома блоками.

З метою отримання архіву даних про об'єкт розробимо відповідно до функціональної схеми рис.6.1 структуру моделі рис.6.2.

Рисунок 6.2 – Модель для дослідження системи нейропрогнозу

Блок Zero-Order Hold бібліотеки Discrete додатку Simulink дозволяє провести дискретизацію вхідного неперервного сигналу. З метою передачі даних до основної області Command Window пакету Matlab в моделі використані блоки To Workspace (в вікні властивостей якого задають ім'я змінної) та блок Scope з наступними змінами властивостей рис.6.3.

Рисунок 6.3 – Властивості блоку Scope

Запишемо наступний сценарій для вирішення задачі прогнозу сигналу.

% Вибірка з масиву часової функції блоку Scope першого стовпця (дискр. час)

time = time(:,1);

% Формування навчальної множини

p = y_i(1:length(y_i)-1)'; % вхід ШНМ з першого елементу масиву y_i

t = y_i(2:length(y_i))'; % цільовий вихід ШНМ з другого елементу масиву y_i

time = time(1:length(y_i)-1); % вибірка дискретного часу

% Формування нейронної мережі

net = newlin([-1 1],1[1 2]);

% в склад статичної НМ не включають лінії затримки та зворотні зв'язки.

% попередньою командою створюють одношарову НМ з двохелементним

% вектором входу та лінійною функцією активації. З цією метою застосована

% команда newlin яка потребує завдання мінімальне та максимальне значення

% для кожного елементу входу [-1 1] та кількість шарів (в даному випадку 1)

P = num2cell(p);

T = num2cell(t);

% папередні команди перегруповують масиви

% Настройка нейронної мережі

pi = {0 0}; % вивід синаптичних ваг на нульові рівні

net.adaptParam.passes = 5; % завдання кількості циклів навчання

% на даному етапі є можливість завдання швидкості настроювання ваг входу

% net.inputWeights{1,1}.learnParam.lr = 0.2;

% та зсуву net.biases{1,1}.learnParam.lr = 0;

[net,Y,E,Pf,Af] = adapt(net,P,T,pi); % команда виклику процедури настроювання

Y1 = cat(1,Y{:}); % конкатинація (поєднання) елементів Y{:} в вектор-стовбець

% Побудова графіків

figure(1), plot(time,Y1,'b:',time,p,'r-'), grid on

xlabel|('час, с|із|'), ylabel|('Процеси')

title|('Навчання|вчення| нейронної мережі|сіті|')

% Моделювання нейронної мережі

x = sim(net,P);

x1 = cat(1,x{:});

figure(2), plot(time,x1,'b:+', time,p,'r-o'),grid on

legend('вихід', 'вхід')

gensim(net) % виклик Simulink структури НМ

В результаті проведення даного сценарію можуть бути отримані наступні результати рис.6.4.

Рисунок 6.4 – Часові діаграми навчання та роботи НМ

Структурна-схема розробленої мережі наведена на рис.6.5.

Рисунок 6.5 - Структурна-схема розробленої НМ

На наступному кроці копіюється структура НМ в базову модель рис.6.6.

Рисунок 6.6 – Імітаційна модель для перевірки роботи розробленої ШНМ

Результати роботи НМ на інтервалі 30с наведено на рис.6.7.

Рисунок 6.6 – Візуалізація результатів для порівняння роботи ШНМ (1) з виходом об'єкту (2)

За допомогою команд net.IW{1} та net.b{1} є можливість отримати значення синаптичних ваг та відповідних зсувів:

>> net.IW{1}

ans =

0.4034 0.3384

>> net.b{1}

ans =

0.2567

Зміна вищевказаних параметрів проводиться у наступному форматі:

>> net.IW{1}=[значення];

>> net.b{1} = [значення];

У фігурних дужках вказують номера шарів НМ. Так при наявності зв'язку другого шару (три нейрона) з першим (один нейрон) формат запису буде наступним:

>> net.LW{2,1}=[значення1; значення2; значення3];

для третього, вихідного шару з одним нейроном:

>> net.LW{3,2}=[значення1 значення2 значення3];

Варіанти завдань

Необхідно:

1) Отримати завдання згідно варіанту табл. 5.1.

Таблиця 6.1 – Варіанти завдань

# варіанту

Об'єкт

Час дискретизації

Час навчання/умова

1

0,1

10с/

2

0.2

10с/

3

0,1

9с/

4

0,05

10с/

5

0,1

9с/

6

0,1

10с/

7

0,1

8с/

Продовження табл.6.1

# варіанту

Об'єкт

Час дискретизації

Умови прогнозу

8

0,01

10с/

9

0,01

9с/

10

0,05

7с/

11

0,1

8с/

2) Провести параметричний та структурний синтез нейромережевої моделі об'єкту.

3) Перевірити ефективність роботи НМ на структурних моделях.

4) Розрахувати середньоквадратичну похибку роботи НМ.

5) Надати графічну ілюстрацію розробленої мережі з відповідними параметрами синаптичних зв'язків та зсувів.

6) Оформити детальний звіт.

 Контрольні питання

  1. Чи можна навчити нейронну мережу без прихованого шару?

  2. У чому полягає навчання нейронних мереж?

  3. Чому один з алгоритмів навчання отримав назву «Алгоритм зворотного розповсюдження»?

  4. Чим відрізняється навчання з вчителем від навчання без вчителя?

  5. Чому вхідні і вихідні сигнали нейронної мережі повинні бути нормовані, тобто приведені до діапазону [0,1]?

Індивідуальне домашнє завдання №3

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]