Материал: Лабораторна робота №9

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

У випадку декількох нейронів ці співвідношення узагальнюються наступним чином:

Тоді правило настройки (навчання) персептрона можна записати в наступній формі:

Описані співвідношення покладені в основу алгоритму настройки параметрів персептрона, який реалізований в Neural Network Toolbox у вигляді функції learnp. Кожного разу при виконанні функції learnp відбуватиметься перенастроювання параметрів персептрона, і, якщо рішення існує, то процес навчання персептрона сходиться за кінцеве число ітерацій. Якщо зсув не використовується, то функція learnp шукає рішення, змінюючи тільки вектор вагів w. Це приводить до знаходження розділяючої лінії, перпендикулярної вектору w, яка належним чином розділяє вектори входу.

Розглянемо простий приклад персептрона з єдиним нейроном і двоелементним вектором входу

Визначимо зсув b рівним 0, а вектор вагів w рівним [1 –0.8]

Повчальну множину задамо таким чином:

Моделюючи персептрон, розрахуємо вихід і помилку на першому кроці настройки:

a = sim(net,p),e = t-a a =

0

e =

1

Використовуючи функцію настройки параметрів learnp, знайдемо необхідну зміну вагів:

Тоді новий вектор вагів прийме вигляд

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

6

Порядок виконання роботи

Завдання 1

Побудувати графіки функцій активації в заданих діапазонах значень відповідно до варіанту(таблиця), використовуючи функцію plot.

Номер

Діапазони значень

Ім'я функції

варіанту

входу

 

1

-3...+3

hardlim

2

-1...+1

hardlims

3

- 4 . +4

purelin

4

-2...+2

poslin

5

-8...+8

satlin

6

-9...+9

satlins

7

-7...+7

radbas

8

-5...+5

tribas

9

-3...+3

logsig

10

-6...+6

tansig

11

-8…+8

poslin

12

-7…+7

hardlims

13

-2…+2

purelin

14

-4…+4

radbas

15

-9…+9

tansig

16

-1…+1

tribas

Завдання 2

1.Для заданого варіанту завдання(таблиця) виконати розрахунок настройки вагів і зсувів персептронной нейронної мережі.

2.Розробити алгоритм створення і моделювання персептронної нейронної мережі.

3.Реалізувати розроблений алгоритм в системі MATLAB.

4.Визначити параметри створеної нейронної мережі(ваги і зсув) і перевірити правильність роботи мережі для послідовності вхідних векторів (не менше 5).

5.Роздрукувати текст програми.

Номер

Один двоелементний вхід; кількість нейронів – 1

Діапазони

 

 

варіанту

Входи персептрона

Цільові виходи

значень входів

 

 

 

 

 

 

 

1

-4...+4

{[-3; 1] [2; -1] [2; 2] [3; -1]}

{1 1 0 0}

2

-3...+3

{[-2; -1] [1; -1] [0; 1] [2; 0]}

{1 0 1 0}

3

-2...+2

{[0; 0] [1; 1] [-1; 1] [-1; 0]}

{0 0 1 1}

4

-4…+4

{[-2; 2] [1; 2] [0; 0] [3; -2]}

{0 1 0 1}

5

-3...+3

{[-1; 1] [-2; -1] [1; -2] [2; 0]}

{1 0 0 1}

6

-2+2

{[0; 0] [-1; 1] [-1; 0] [1; 1]}

{0 1 1 0}

7

-4…+4

{[-2; 1] [1; -2] [3; -1] [2; 2]}

{0 0 0 1}

8

-3...+3

{[-2; 1] [0; 1] [2; -1] [-2; -1]}

{0 0 1 0}

9

-2+2

{[-1; -1] [0; 0] [1; -1] [1; 1]}

{1 1 1 0}

10

-4…+4

{[0; 0] [2; -2] [1; -2] [-2; -1]}

{0 1 0 0}

7