Програмна інженерія
Поняття експертної системи. Принципи функціонування і навчання персептрона. Функції створення нейронних мереж. Процес синаптичної адаптації. Алгоритм роботи мережі Хопфілда. Сутність прогнозу та прогнозування. Короткі відомості про генетичні алгоритми.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | методичка |
Язык | украинский |
Дата добавления | 17.10.2014 |
Размер файла | 2,3 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
ХЕРСОНСЬКИЙ НАЦІОНАЛЬНИЙ ТЕХНІЧНИЙ УНІВЕРСИТЕТ
КАФЕДРА ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ
МЕТОДИЧНІ РЕКОМЕНДАЦІЇ
до проведення лабораторних робіт
з дисципліни «Програмне забезпечення сучасних інформаційно-комунікаційних технологій»
для студентів IV курсу
напряму підготовки 6.050103 «Програмна інженерія»
факультету кібернетики
Херсон 2014
Методичні рекомендації до проведення лабораторних робіт з дисципліни «Програмне забезпечення сучасних інформаційно-комунікаційних технологій» / к.т.н., доцент О.М. Ляшенко. - Херсон: ХНТУ, 2014 - 46 с.
Затверджено
на засіданні кафедри ІТ
протокол № __ від __.__.__
Зав. кафедри ІТ, проф. д.т.н._______ Ходаков В.Є.
МЕТА ТА ЗАВДАННЯ КУРСУ
Метою курсу «Програмне забезпечення сучасних інформаційно-комунікаційних технологій» є:
1) формування знань, вмінь та навичок, необхідних для роботи з технологіями автоматизованого інтелектуального аналізу даних;
2) знайомство студентів з сучасними тенденціями розробки та застосування інформаційних інтелектуальних систем;
1) ознайомлення з методами побудови нейронних мереж, генетичних алгоритмів;
2) ознайомлення з інструментальним програмним забезпеченням для реалізації нейромережевих та генетичних алгоритмів;
3) ознайомлення з технологіями розробки експертних систем.
У результаті вивчення навчальної дисципліни студент повинен знати:
1) моделі подання знань в інтелектуальних системах;
2) основні типи нейронних мереж і математичні моделі їх функціонування;
3) способи підготовки даних і вирішення прикладних задач з використанням нейромережевих технологій;
4) основні поняття генетичних алгоритмів;
5) основні етапи реалізації генетичних алгоритмів;
6) технологію розробки експертних систем;
7) основні класи інструментальних засобів, які використовуються для розробки експертних систем;
8) методи пошуку рішень в експертних системах;
9) методи інтелектуального аналізу даних (Data Mining);
10) математичний апарат Data Mining;
11) області застосування технологій інтелектуального аналізу даних;
12) основні класи інструментальних засобів, які використовуються для інтелектуального аналізу даних.
У результаті вивчення навчальної дисципліни студент повинен вміти:
1) розв'язувати задачі із застосуванням штучних нейроних мереж і генетичних алгоритмів в різних предметних областях;
2) створювати експертні системи і застосовувати їх для вирішення поставлених завдань.
3) застосовувати методи інтелектуального аналізу даних (Data Mining) при проектуванні інформаційних систем.
Лабораторна робота N 1
алгоритм прогноз синаптичний нейронний
Тема роботи: Багатошаровий персептрон
Мета роботи: Вивчити принципи функціонування і навчання багатошарового персептрона. Побудувати модель багатошарового персептрона за допомогою пакету Neural Networks Toolbox, що входить до складу системи MATLAB.
Теоретичні відомості:
1.1 Принципи функціонування і навчання персептрона
Багатошаровий персептрон складається з безлічі сенсорних елементів (вхідних вузлів або вузлів джерела), які утворюють вхідний шар; одного або декількох прихованих шарів обчислювальних нейронів і одного вихідного шару нейронів. Вхідний сигнал розповсюджується по мережі в прямому напрямі, від шару до шару.
Багатошарові персептрони успішно застосовуються для вирішення різноманітних складних задач. При цьому навчання з вчителем виконується за допомогою такого алгоритму, як алгоритм зворотного розповсюдження помилки.
Багатошарові персептрони мають три відмітні ознаки:
1. Кожен нейрон мережі має нелінійну функцію активації. Найпопулярнішою формою функції, що задовольняє вимозі нелінійності, є сигмоїдальна, визначувана логістичною функцією:
, (1.1)
де - індуковане локальне поле (тобто зважена сума всіх синаптичних входів плюс порогове значення) нейрона ; - вихід нейрона.
2. Мережа містить один або декілька шарів прихованих нейронів, що не є частиною входу або виходу мережі. Ці нейрони дозволяють мережі навчатися рішенню складних задач, послідовно витягуючи найважливіші ознаки з вхідного образу (вектора).
3. Мережа має високий степінь зв'язності, реалізовуваний за допомогою синаптичних з'єднань.
На рис 1.1. показаний архітектурний граф багатошарового персептрона з двома прихованими шарами і одним вихідним шаром. Показана на малюнку мережа є повнозв'язною, що характерне для багатошарового персептрона загального вигляду. Це значить, що кожен нейрон в будь-якому шарі мережі пов'язаний зі всіма нейронами (вузлами) попереднього шару. Сигнал передається по мережі виключно в прямому напрямі, зліва направо, від шару до шару.
Рис 1.1 - Архітектурний граф багатошарового персептрона з двома прихованими шарами
На рис.1.1 показаний фрагмент багатошарового персептрона. Для цього типу мережі виділяють два типи сигналів:
1. Функціональний сигнал. Це вхідний сигнал (стимул), що поступає в мережу і передаваний вперед від нейрона до нейрона по всій мережі. Такий сигнал досягає кінця мережі у вигляді вихідного сигналу.
2. Сигнал помилки. Сигнал помилки бере свій початок на виході мережі і розповсюджується у зворотному напрямі (від шару до шару). Він одержав свою назву завдяки тому, що обчислюється кожним нейроном мережі на основі функції помилки, представленої в тій або іншій формі.
Алгоритм навчання мережі. Для навчання багатошарового персептрона використовується алгоритм зворотного розповсюдження помилки.
Розглянемо докладніше цей алгоритм.
Крок 1. Ініціалізація. Генеруємо синаптичну вагу і порогові значення за допомогою датчика рівномірно розподілених чисел з середнім значенням 0.
Крок 2. Пред'явлення прикладів навчання. У мережу подаються образи з повчальної множини (епохи). Для кожного образу послідовно виконуються прямий і зворотний проходи.
Крок 3. Прямий прохід. Хай приклад навчання представлений парою, де - вихідний вектор, що пред'являється вхідному шару сенсорних вузлів; - бажаний відгук, що надається вихідному шару нейронів для формування сигналу помилки. Обчислюємо індуковані локальні поля і функціональні сигнали мережі, проходячи по ній пошарово в прямому напрямі. Індуковане локальне поле нейрона шару обчислюється по формулі:
, (1.2)
де - вихідний сигнал нейрона, розташованого в попередньому шарі, на ітерації ; - синаптична вага зв'язку нейрона шару з нейроном шару . Для, а - поріг, вживаний до нейрона шаруючи . Якщо використовується сигмоїдальна функція, то вихідний сигнал нейрона шару виражається таким чином:
. (1.3)
Якщо нейрон знаходиться в першому прихованому шарі (тобто ), то
, (1.4)
де - -й елемент вхідного вектора . Якщо нейрон знаходиться у вихідному шарі (тобто, де - глибина мережі), то
. (1.5)
Обчислюємо сигнал помилки:
, (1.6)
де - -й елемент вектора бажаного відгуку .
Крок 4. Обчислюємо локальні градієнти вузлів мережі по наступній формулі:
. (1.7)
Зміна синаптичних вагів шару мережі виконується відповідно до узагальненого дельта-правила:
, (1.8)
де - параметр швидкості навчання; - постійна моменту.
Крок 5. Ітерації. Послідовно виконуємо прямий і зворотний проходи. Пред'являючи мережі всі приклади навчання з епохи, поки не буде досягнутий критерій останову.
1.2 Пакет MATLAB Neural Networks Toolbox
До складу пакету Neural Networks входять більше 160 різних функцій, утворюючи собою своєрідну макромову програмування і дозволяючи користувачу створювати, навчати і використовувати самі різні нейронні мережі. За допомогою команди
>> help nnet
можна одержати перелік вхідних в пакет функцій. Для отримання довідки по будь-якій функції можна використовувати команду
>> help ім'я функції
Є наступні категорії функцій даного пакету:
1. Функції активації (ФА) і їх похідні. ФА, або передавальна функція нейрона, перетворить кожен елемент вектора входу нейрона в елемент вектора виходу.
Всі m-функції даного пакету, що описують функції активації, мають однаковий формат:
Y=<имя функции> (X), де У - матриця векторів виходу, X - матриця векторів входу.
Похідні функцій активації мають наступний формат:
dY_dX=d<имя функции>(X,Y).
2. Функції адаптації і навчання. Ці функції дозволяють встановлювати алгоритм і параметри навчання нейронної мережі заданої конфігурації за бажанням користувача. До групи входять наступні функції:
Adapt - функція адаптації параметрів нейронної мережі.
Trainbfg - функція навчання, реалізовуюча різновид квазіньютонівського алгоритму зворотного розповсюдження помилки.
Trainc - функція навчання нейронної мережі з циклічним представленням входу.
Trainrp - функція, що реалізовує різновид алгоритму зворотного розповсюдження помилки.
Trains - навчання нейронної мережі з послідовним представленням входів.
3. Функції настройки нейронної мережі.
Learncon - функція настройки вагів з введенням «відчуття справедливості».
Learngd - функція корекції вагів і зсувів, реалізовуюча градієнтний алгоритм оптимізації.
4. Функції ініціалізації.
Init - функція ініціалізації нейронної мережі.
Initlay - функція готовності нейронної мережі до ініціалізації.
5. Функції створення нейронних мереж.
Network - функція створення нейронної мережі користувача.
Newp - функція створення персептрона.
Newlin - функція створення шару лінійних нейронів.
1.3 Контрольний приклад
Класифікація за допомогою персептрона. У приведеній нижче програмі - матриця, стовпці якої відповідають 4-м вхідним векторам, - вектор, елементи якого указують на приналежність відповідного вектора нульовому або першому класу.
>>% Завдання вхідних векторів з вказівкою їх приналежності одному з двох класів
>> P=[-0.5 -0.5 +0.3 -0.1; -0.5 +0.5 -0.5 +1.0];
>>T=[1100];
>>plotpv (P,T);
>>% Графічне представлення початкових векторів
>>% Створення персептрона з вказівкою меж змін входів і 1 нейроном
>> My_net=newp([-1 1;-1 1],1);
>>E=1;
>>My_net=init(My_net); % Ініціалізація персептрона
>>% Організація циклу адаптивної настройки персептрона з висновком графіка розділяючої
>>% лінії
>>while (sse(E))
[My_net,Y,E]=adapt(My_net,P,T);
linehandle=plotpc(My_net.IW{1},My_net.b{1});
drawnow;
end;
Перевіримо якість створеного класифікатора. З цією метою подамо на вхід персептрона контрольний вектор p=[0.4; 0.5] і проаналізуємо реакцію мережі.
>>p=[0.4; 0.5]; % завдання контрольного вектора
>>a=sim(My_net,p); % моделювання мережі
>>a
a=
0
>> побудова графіка, що відображає реакцію мережі
>> plotpv(p,a);
>>hold on
>>plotpv (P,T);
>>plotpc(My_net.IW{1}, My_net.b{1});
>>hold off;
1.4 Завдання до виконання лабораторної роботи
Побудувати модель багатошарового персептрона за допомогою пакету Neural Networks Toolbox, що входить до складу системи MATLAB.
Провести класифікацію за допомогою персептрона. Об'єкт класифікації обрати за бажанням.
Контрольні питання:
1. Визначення нейронної мережі?
2. Основні види функцій активації?
3. У чому сенс алгоритму зворотнього поширення похибки?
4. За яким оптимізаційним методом функціонує алгоритм?
5. Переваги алгоритму зворотнього поширення похибки?
Лабораторна робота N 2
Тема роботи: Мережа Кохонена
Мета роботм: Вивчити принципи функціонування мережі Кохонена. Побудувати модель мережі Кохонена за допомогою пакету Neural Networks Toolbox, що входить до складу системи MATLAB.
Теоретичні відомості:
2.1 Принципи функціонування і навчання мережі Кохонена
Мережа Кохонена є сіткою з вузлів, сполучених зв'язками, і призначена для автоматичної кластеризації (класифікації без вчителя). У класичному варіанті розглядаються два варіанти сітки - прямокутна і гексагональная.
Рис.2.1 - Основні варіанти початкового розташування вузлів мережі Кохонена
Мережа Кохонена (Kohonen's Self-Organizing Map - KSOM). KSOM - це карта ознак, що самоорганізується. Основною метою KSOM є поділ вхідної множини даних на кластери (класи).
Топологію KSOM представлено двовимірною сіткою, що складається з вузлів (нейронів), сполучених між собою синаптичними зв'язками (рис. 2.2).
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Рис. 2.2 - Топологія KSOM
Алгоритм формування KSOM починається з ініціалізації синаптичних ваг мережі. Це відбувається за допомогою призначення синаптичним вагам малих значень, сформованих генератором випадкових чисел. Після коректної ініціалізації мережі для формування карти самоорганізації запускаються три основні процеси:
1. Конкуренція. Для кожного вхідного сигналу нейрони мережі обчислюють відносні значення дискримінантної функції. Ця функція є основою конкуренції серед нейронів.
2. Кооперація. Нейрон-переможець, визначає просторове положення топологічної околиці (ТО) нейронів, забезпечуючи тим самим базис для кооперації між цими нейронами.
3. Синаптична адаптація. Цей механізм дає змогу збудженим нейронам збільшувати власні значення дискримінантних функцій стосовно вхідних сигналів за допомогою відповідних корегувань синаптичних ваг. Корегування здійснюються так, щоб відгук нейрона-переможця на подальше застосування аналогічних прикладів посилювався.
Процес конкуренції. Хай - розмірність вхідного простору даних, а вхідний вектор обирається з цього простору випадково і позначається:
. (2.1)
Вектор синаптичних ваг кожного з нейронів мережі має ту ж розмірність, що і вхідний простір даних. Позначимо синаптичну вагу нейрона таким чином:
, ,. (2.2)
де - загальна кількість нейронів мережі.
Для того, щоб обрати найкращий вектор, відповідний вхідному вектору, необхідно порівняти скалярні добутки для і вибрати найбільше значення. При цьому передбачається, що до всіх нейронів застосовується деяке значення насичення. Ця величина дорівнює порогу, узятому із зворотним знаком. Таким чином, обираючи нейрон з найбільшим скалярним добутком, ми в результаті визначаємо місце, яке повинне стати центром ТО збудженого нейрону.
Найкращий критерій відповідності, заснований на максимізації скалярного добутку, математично еквівалентний мінімізації Евклідової відстані між векторами і . Якщо використовувати індекс для ідентифікації того нейрона, який найкраще відповідає вхідному сигналу, то цю величину можна визначити за допомогою такого співвідношення:
, . (2.3)
Згідно (2.3), предметом уваги є величина . Конкретний нейрон, що задовольняє цій умові, називається «переможцем» або найбільш відповідним для цього вхідного вектора .
Процес кооперації. Нейрон-переможець розташований у центрі ТО нейронів, що співробітничають (рис.2.3).
Позначимо символом ТО з центром в нейроні-переможці, яка складається з безлічі нейронів, що кооперуються і типовий представник якої має індекс . Хай - латеральна відстань між нейроном-переможцем і повторно збудженим нейроном .
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Рис. 2.3 - ТО з центром у нейроні-переможці
Тоді можна припустити, що ТО є унімодальною функцією латеральної відстані і задовольняє двом наступним вимогам:
1. ТО є симетричною щодо точки максимуму, яка визначається при . Іншими словами, максимум функції досягається в нейроні-переможці.
2. Амплітуда ТО монотонно зменшується зі збільшенням латеральної відстані, досягаючи нуля при . Це необхідна умова збіжності.
Типовим прикладом, що задовольняє цим вимогам, є функція Гауса:
. (2.4)
Параметр називається ефективною шириною ТО (рис. 2.4). Цей параметр визначає рівень, до якого нейрони з топологічної околиці нейрону-переможця беруть участь у процесі навчання.
Рис. 2.4 - Функція околиці Гауса
Для забезпечення кооперації між сусідніми нейронами необхідно, щоб ТО була залежною від латеральної відстані між нейроном-переможцем і збудженим нейроном , у вихідному просторі, а не від якоїсь міри довжини в початковому вхідному просторі. Саме ця властивість відображена у формулі (2.5). Для двовимірної сітки ця відстань визначається співвідношенням:
, (2.5)
де дискретний вектор визначає позицію збудженого нейрона, а - нейрона-переможця . Обидва ці вимірювання проводяться в дискретному вихідному просторі.
Ще однією унікальною властивістю алгоритму KSOM є те, що розмір ТО з часом зменшується. Ця вимога задовольняється поступовим зменшенням ширини функції ТО . Одним з варіантів залежності величини від дискретного часу є експоненціальне убування, яке описується такою формулою:
, (2.6)
де - початкове значення величини в алгоритмі KSOM; - деяка часова константа. Виходячи з цього, ТО має форму, залежну від часу:
, (2.7)
де визначається за формулою (2.6).
Таким чином, при збільшенні кількості ітерацій ширина експоненціально убуває, а разом з нею відповідно стискається і ТО. Далі функцію називатимемо функцією околиці.
Процес синаптичної адаптації. Останнім процесом формування KSOM є процес синаптичної адаптації. Для того, щоб мережа могла самоорганізовуватися, вектор синаптичних ваг нейрона повинен змінюватися відповідно до вхідного вектора . Питання зводиться до того, якою повинна бути ця зміна. У постулаті навчання Хебба синаптична вага посилюється при одночасному виникненні предсинаптичної та постсинаптичної активностей. Це правило добре підходить до асоціативного навчання. Проте для типу навчання без вчителя, яке розглядається в даній роботі, гіпотеза Хебба в своїй основній формі не може задовольняти вимогам задачі. На це є своя причина: зміни в зв'язках відбуваються тільки в одному напрямі, що приводить усі ваги до точки насичення. Для того, щоб обійти цю проблему, гіпотезу Хебба необхідно змінити, тобто ввести в неї складову забування, де - вектор синаптичних ваг нейрона ; - деяка позитивна скалярна функція відгуку . Єдиною вимогою, що накладається на функцію , є рівність нулю постійної складової розкладання в ряд Тейлора функції , що, у свою чергу, робить необхідним виконання співвідношення:
при . (2.8)
Значущість такої вимоги є очевидною. Маючи таку функцію, зміну вектора ваг нейрона в сітці можна виразити таким чином:
, (2.9)
де - параметр швидкості навчання алгоритму.
Перша складова в правій частині (2.9) є складовою Хебба, а друга - складовою забування. Для того, щоб задовольнялося співвідношення (2.9), необхідно обрати наступну лінійну функцію :
. (2.10)
Вираз (1.10) можна спростити, прийнявши:
. (2.11)
Підставивши (1.10) і (1.11) у (1. 9), одержимо:
. (2.12)
Враховуючи формалізацію дискретного часу, для вектора синаптичних ваг у момент часу , оновлений вектор у момент часу можна визначити так:
. (2.13)
Цей вираз застосовується до всіх нейронів сітки, які лежать у ТО нейрона-переможця . Вираз (2.13) має ефект переміщення вектора синаптичних ваг нейрона-переможця у бік вхідного вектора . При періодичному поданні даних навчання завдяки корегуванню в околиці нейрона-переможця, вектори синаптичних ваг прагнутимуть слідувати за розподілом вхідних векторів. Таким чином, розглянутий алгоритм веде до топологічного впорядковування простору ознак у вхідному просторі, в тому розумінні, що нейрони, кореговані в сітці, прагнутимуть мати однакову синаптичну вагу.
Рівняння (2.13) є формулою обчислення синаптичних ваг карти ознак. Проте на додаток до цього рівняння для вибору функції околиці вимагається враховувати евристику (2.18). Ще одна евристика необхідна для вибору параметра швидкості навчання .
Параметр швидкості навчання згідно (2.11) повинен залежати від часу. Наприклад, можна почати з деякого початкового значення , а потім, з часом, поступово зменшувати його. Цю вимогу можна задовольнити, обравши для параметра інтенсивності навчання наступну експоненціальну функцію:
, (2.14)
де - ще одна часова константа алгоритму KSOM.
Ілюстрацію процесу синаптичної адаптації наведено на рис. 2.5.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Рис. 2.5 - Процес синаптичної адаптації
2.2 Контрольний приклад
Створення і використання мережі Кохонена розглянемо на прикладі кластеризації двовимірних векторів.
>> P=rands(2,1000); % Завдання випадкових двовимірних вхідних векторів
>> plot(P(1,:),P(2,:),'+r'); % Візуальне зображення вхідних векторів
>> net=newsom([0 1; 0 1],[5 6]); % Створення НМ з 5?6=30 нейронами
>>net=train(net,P); %Навчання мережі
>> plotsom(net.iw{1,1}, net.layers{1}.distances); %Виявлення центрів кластерів
% Інформацію о виявлених центрах кластерів мають значення вагів мережі
>>p=[0.5;0.3]; %
>>a=sim(net,p) % Опитування пережі
2.3 Завдання до виконання лабораторної роботи
Побудувати модель мережі Кохонена за допомогою пакету Neural Networks Toolbox, що входить до складу системи MATLAB.
Провести кластеризацію за допомогою мережі Кохонена. Об'єкти кластеризації обрати за бажанням.
Контрольні питання:
1. Топологічна карта мережі Кохонена?
2. Алгоритм роботи мережі Кохонена?
3. Поясніть етапи формування КSOM: конкуренція, кооперація, синаптична адаптація?
4. Назвіть основні переваги КSOM?
Лабораторна робота N 3
Тема роботи: Мережа Хопфілда
Мета роботм: Вивчити архітектуру та принципи функціонування мережі Хопфілда. Побудувати модель мережі Хопфілда за допомогою пакету Neural Networks Toolbox, що входить до складу системи MATLAB.
Теоретичні відомості:
3.1 Принципи функціонування і навчання мережі Хопфілда
Архітектуру мережі Хопфілда наведено на рис. 3.1.
Рис.3.1 - Архітектура мережі Хопфілда
Алгоритм роботи мережі Хопфілда. Позначимо через Xs образ s-го класу, а через xsi - i-ю складову вектора Xs. При цьому алгоритм Хопфілда може бути описаний таким чином:
1. Розрахунок вагів:
(3.1)
де k - число класів образів.
2. Ініціалізація мережі шляхом введення:
oi(0) = xi , 1 ??i ??n , (3.2)
де oi (0) - вихід i-го нейрона в початковий (нульовий) момент часу.
3. Ітераційне правило:
(3.3)
де oi (t) - вихід i-го нейрона в момент часу t.
Співвідношення (3.1), (3.2) представимо у векторній формі:
(3.3)
(3.4)
де X - вхідний вектор, W - симетрична матриця, f - вектор-функція активації або виходу нейронів.
Зважена сума входів j-го нейрона мережі Хопфілда:
(3.5)
Функція активації або виходу має вигляд:
(3.7)
Отже, нехай є деякий образ, який слід запам'ятати в мережі Хопфілда, тоді ваги шуканої мережі можуть бути розраховані, тобто процес навчання виключається. Якщо цей образ характеризується n-мірним вектором X = (x1, ..., xn) T, то ваги з'єднань визначаються за формулами:
(3.8)
В цьому випадку мережа Хопфілда, яка характеризується матрицею W і порогами Ti = 0, i = 1, 2, ..., n, запам'ятовує пред'явлений образ. Для доказу визначимо:
(3.9)
Ваги wij можна помножити на деякий позитивний коефіцієнт (наприклад, 1 / n). Використання такого коефіцієнта особливо доцільно в тих випадках, коли запам'ятовуються образи характеризуються великим числом ознак (наприклад, відеозображення відображається великим числом пікселів).
3.2 Контрольний приклад
Розглянемо мережу Хопфілда, що має два нейрона і два стійких стани, що відображаються векторами [1 -1] і [-1 1]. Уявімо ці вектори:
>> T = [+1 -1; -1 +1];
>> plot(T(1,:),T(2,:),'r*')
>> axis([-1.1 1.1 -1.1 1.1]);
>> title('Hopfield Network State Space');
>> xlabel('a(1)');
>> ylabel('a(2)');
Перевіримо роботу мережі, подавши на вхід вектори, відповідні стійким точкам. Якщо мережа працює правильно, вона повинна видати ці самі вектори (у вигляді матриці Y їх координат) без будь-яких змін.
>> H=newhop(T);
>>[Y,Pf,Af] = sim(H,2,[],T);Y
Y =
1 -1
-1 1
Як видно з результату опитування, мережа працює правильно. Подамо тепер на її вхід довільний вектор.
>> a = {rands(2,1)};
>> [y,Pf,Af] = sim(H,{1 50},{},a);
>> plot(T(1,:),T(2,:),'r*')
>> axis([-1.1 1.1 -1.1 1.1]);
>> record = [cell2mat(a) cell2mat(y)];
>> start = cell2mat(a);
>> hold on
>> plot(start(1,1),start(2,1),'bx',record(1,:),record(2,:))
>> xlabel('a(1)'); ylabel('a(2)');
>> title('Result');
3.3 Завдання до виконання лабораторної роботи
Дослідити процес функціонування мережі Хопфілда, що складається з 4-х нейронів. Визначити «області тяжіння» для образів загальної пам'яті а) (-1, -1, +1, +1) та (+1, +1, -1, -1), б) (-1, +1, +1 , +1) та (+1, +1, -1, -1). Побудувати модель мережі Хопфілда за допомогою пакету Neural Networks Toolbox, що входить до складу системи MATLAB.
Контрольні питання:
1) показати на графіку, в якому інтервалі знаходиться випадковим чином «кинута» точка (двовимірний вектор а);
2) пояснити роботу функції record;
3) пояснити роботу функції axis;
4) представити архітектурний граф мережі Хопфілда, що складається з 4-х нейронів;
5) пояснити алгоритм роботи мережі Хопфілда.
Лабораторна робота N 4
Тема роботи: Нейронна мережа зустрічного розповсюдження.
Мета роботм: Вивчити архітектуру та принципи функціонування мережі зустрічного розповсюдження. Побудувати модель мережі зустрічного розповсюдження за допомогою пакету Neural Networks Toolbox, що входить до складу системи MATLAB.
Теоретичні відомості:
4.1 Принципи функціонування і навчання мережі зустрічного розповсюдження
Роберт Хехт-Нільсен (Robert Hecht-Nielsen) розробив мережу зустрічного розповсюдження (СounterРropagation) як засіб для поєднання неконтрольованого прошарку Кохонена із контрольованим вихідним шаром. Мережа призначена для вирішення складних класифікацій, при мінімізації числа нейронів та часу навчання.
Навчання для мережі СounterРropagation схоже на мережі з квантуванням навчального вектора. Приклад мережі зображений на рис. 4.1. Односкерована мережа CounterPropagation має три прошарки: вхідний шар, самоорганізована карта Кохонена та вихідний прошарок, що використовує правило "дельта" для зміни вхідних ваг з'єднань. Цей шар називають шаром Гросберга.
Рис. 4.1 - Мережа зустрічного поширення без зворотних зв'язків
Перша мережа СounterРropagation складалася з двоскерованого відображення між вхідним і вихідним шарами. Дані надходять на вхідний прошарок для генерації класифікації на вихідному прошарку, вихідний прошарок по черзі приймає додатковий вхідний вектор і генерує вихідну класифікацію на вхідному прошарку мережі. Через такий зустрічно-поширений потік інформації мережа отримала свою назву. Багато розробників використовують односпрямований варіант СounterРropagation, коли існує лише один шлях прямого поширення від вхідного до вихідного прошарку.
У мережі зустрічного поширення об'єднані два алгоритми: самоорганізована карта Кохонена і зірка Гросберга (Grossberg Outstar). Нейронні мережі, об'єднуючі різні нейропарадігмі як будівельні блоки, більш близькі до мозку по архітектурі, ніж однорідні структури. Вважається, що в мозку саме каскадні з'єднання модулів різної спеціалізації дозволяють виконувати необхідні обчислення. Кожен елемент вхідного сигналу подається на всі нейрони прошарку Кохонена. Ваги зв'язків (wmn) утворюють матрицю W. Кожен нейрон прошарку Кохонена з'єднаний з усіма нейронами шару Гросберга. Ваги зв'язків (vnp) утворюють матрицю ваг V.
У процесі навчання мережі зустрічного поширення вхідні вектори асоціюються з відповідними вихідними векторами (двійковими або аналоговими). Після навчання мережа формує вихідні сигнали, що відповідають вхідним сигналам. Узагальнююча здатність мережі дає можливість одержувати правильний вихід, якщо вхідний вектор неповний чи спотворений.
Навчання мережі. В результаті самонавчання прошарок здобуває здатність розділяти несхожі вхідні вектори. Який саме нейрон буде активуватися при пред'явленні конкретного вхідного сигналу, заздалегідь важко передбачити.
При навчанні прошарку Кохонена на вхід подається вхідний вектор і обчислюються його скалярні добутки з векторами ваг всіх нейронів.
Скалярний добуток є мірою подібності між вхідним вектором і вектором ваг. Нейрон з максимальним значенням скалярного добутку "переможцем" і його ваги підсилюються (ваговий вектор наближається до вхідного). wн = wc + r (x-wc) де wн - нове значення ваги, що з'єднує вхідний компонент x з нейроном, wс - попереднє значення ваги, r - коефіцієнт швидкості навчання, яке спочатку звичайно дорівнює 0.7 і може поступово зменшуватися в процесі навчання. Це дозволяє робити великі початкові кроки для швидкого грубого навчання і менші кроки при підході до остаточної величини.
Кожна вага, пов'язана з нейроном-переможцем Кохонена, змінюється пропорційно різниці між його величиною і величиною входу, до якого він приєднаний. Напрямок зміни мінімізує різницю між вагою і відповідним елементом вхідного шару.
Навчальна множина може містити багато подібних між собою вхідних векторів, і мережа повинна бути навченою активувати один нейрон Кохонена для кожного з них. Ваги цього нейрона є усереднення вхідних векторів, що його активують.
Виходи прошарку Кохонена подаються на входи нейронів прошарку Гросберга. Входи нейронів обчислюються як зважена сума виходів прошарку Кохонена. Кожна вага коректується лише в тому випадку, якщо вона з'єднана з нейроном Кохонена, що має ненульовий вихід. Величина корекції ваги пропорційна різниці між вагою і необхідним виходом нейрона Гросберга. Навчання шару Гросберга - це навчання "з вчителем", алгоритм використовує задані бажані виходи.
Функціонування Мережі. У своїй найпростішій формі прошарок Кохонена функціонує за правилом "переможець отримує все". Для даного вхідного вектора один і тільки один нейрон Кохонена видає логічну одиницю, всі інші видають нуль. Шар Гросберга функціонує в схожій манері. Його вихід є зваженою сумою виходів прошарку Кохонена. Якщо прошарок Кохонена функціонує так, що лише один вихід дорівнює одиниці, а інші дорівнюють нулю, то кожен нейрон шару Гросберга видає величину ваги, що зв'язує цей нейрон з єдиним нейроном Кохонена, чий вихід відмінний від нуля.
У повній моделі мережі зустрічного поширення є можливість одержувати вихідні сигнали по вхідним і навпаки. Цим двом діям відповідають пряме і зворотне поширення сигналів.
Області застосування. Розпізнавання образів, відновлення образів (асоціативна пам'ять), стиснення даних (із втратами).
Недоліки. Мережа не дає можливості будувати точні апроксимації (точні відображення). У цьому мережа значно уступає мережам зі зворотним поширенням похибки. До недоліків моделі також варто віднести слабкий теоретичний базис модифікацій мережі зустрічного розповсюдження.
Переваги:
1. Мережа зустрічного поширення проста. Вона дає можливість отримувати статистичні властивості з множини вхідних сигналів. Кохонен довів, що для навченої мережі імовірність того, що випадково обраний вхідний вектор буде найближчим до будь заданого вагового вектора, дорівнює 1 / k, k - число нейронів Кохонена.
2. Мережа швидко навчається. Час навчання в порівнянні зі зворотним поширенням може бути в 100 разів менше.
3. По своїх можливостях будувати відображення мережа зустрічного поширення значно перевершує одношарові перцептрони.
4. Мережа корисна для застосувань, де потрібна швидка початкова апроксимація.
5. Мережа дає можливість будувати функцію і зворотну до неї, що знаходить застосування при вирішенні практичних завдань.
Модифікації. Мережі зустрічного поширення можуть розрізнятися способами визначення початкових значень синаптичних ваг.
1. Для підвищення ефективності навчання застосовується додавання шуму до вхідних векторів.
2. Ще один метод підвищення ефективності навчання - надання кожному нейрону "почуття справедливості". Якщо нейрон стає переможцем частіше, ніж 1 / k (k - число нейронів Кохонена), то йому тимчасово збільшують поріг, даючи тим самим навчатися й іншим нейронам.
3. Крім "методу акредитації", при якому для кожного вхідного вектора активується лише один нейрон Кохонена, може бути використаний "метод інтерполяції", при використанні якого ціла група нейронів Кохонена, що мають найбільші виходи, може передавати свої вихідні сигнали в шар Гросберга. Цей метод підвищує точність відображень, реалізованих мережею.
4.2 Контрольний приклад
Припустимо, поставлена наступна задача класифікації: заданий набр з 10 векторів, представлених у вигляді стовпців матриці:
,
а також заданий вектор-рядок, який вказує приналежність кожного вектора к одному з двох класів - першого або другого:
.
Передбачається, що наведені двумерні вектори являють собою вибірки з деяких генеральних сукупностей векторів двох класів. Потрібно: побудувати автоматично нейромережевий класифікатор таких векторів, використовуючи наведені дані як навчальну вибірку. Сутність роботи класифікатора буде полягати у видачі на його виході інформації, що вказує на приналежність довільного пред'явленого на його вході двовимірного вектора (що належить одній з двох зазначених генеральних сукупностей) того чи іншого класу.
Рішення такого завдання проведемо із застосуванням мережі зустрічного поширення так, як це показано нижче. Відзначимо, що вихід мережі являє собою в даному випадку матрицю з чслом рядків, відповідним числу класів (тут - двом класам, тобто матриця матиме два рядки), і числом стовпців, відповідним числу поданих (контрольних) вхідних векторів
Належність векторів до того чи іншого класу встановлюється по тому, елементи яких рядків відмінні від нуля (є одиницями).
>> P=[-3 -2 -2 0 0 0 0 +2 +2 +3; 0 +1 -1 +2 +1 -1 -2 +1 -1 0];
>> C=[1 1 1 2 2 2 2 1 1 1];
>> T=ind2vec(C); % Преобразування вектора С в матрицю Т з двома строками
% Створення нової мережі зустрічного розповсюдження вимогає 4-х параметрів:
% 1) матриці мінімальних і максимальних значень вхідних елементів,
% 2) числа прихованих нейронів;
% 3) вектора з елементами, що вказують долю кожного з класів,
% 4) величини коефіцієнта навчання
>> net=newlvg(minmax(P),4,[.6 .4],0.1); % Створення мережі
>> net=train(net,P,T); % Навчання мережі
>> Y=sim(net,P) % Тестування мережі
Y=
1 1 1 0 0 0 0 1 1 1
0 0 0 1 1 1 1 0 0 0
Як видно з результати тестування, класифікація елементів навчальної вибірки проведена точно (три првих і три останні вектора віднесені до першого класу решта - до другого).
Як видно з результатів тестування, класифікація елементів навчальної вибірки проведена точно (три првих і три останні вектора віднесені до першого класу решта - до другого)
Перевіримо якість роботи класіфікатора, подавши на його вхід вектор [-1.5; 1], який не належить до навчальної вибірки, але бізкій до вектора [-2; 1], що належить до першого класу. При коректної раоте распознавателя цей вектор також повинен бути віднесений до першого класу.
Реалізація наступного фрагмента:
>> Y=sim(net, [-1.5; 1])
Y=
1
0
показує, що класифікація проведена правильно: одиничним є елемент першого рядка вихідної матріці Y, тобто пред'явлений на вхід мережі вектор віднесено до першого класу.
4.3 Завдання до виконання лабораторної роботи
Побудувати модель мережі зустрічного розповсюдження за допомогою пакету Neural Networks Toolbox, що входить до складу системи MATLAB.
Провести класифікацію за допомогою мережі зустрічного розповсюдження. Об'єкти класифікації обрати за бажанням.
Контрольні питання:
1) архітектура мережі зустрічного розповсюдження;
2) алгоритм навчання мережі зустрічного розповсюдження;
3) область використання мережі зустрічного розповсюдження;
4) недоліки мережі зустрічного розповсюдження;
5) модифікацї мережі зустрічного розповсюдження.
Лабораторна робота N 5
Тема роботи: Узагальнено-регресійна мережа (GRNN)
Мета роботм: Вивчити архітектуру та принципи функціонування мережі GRNN. Побудувати модель мережі GRNN за допомогою пакету Neural Networks Toolbox, що входить до складу системи MATLAB.
Теоретичні відомості:
5.1 Принципи функціонування і навчання мережі GRNN
Нейронні мережі GRNN (Generalized Regression Neural Network) призначені для вирішення задач узагальненої регресії, аналізу часових рядів та апроксимації функцій. Характерною особливістю цих мереж є дуже висока швидкість їх навчання.
Архітектура мережі. Архітектура мережі GRNN показана на рис. 5.1. Вона аналогічна архітектурі радіальної базисної мережі, але відрізняється структурою другого шару, в якому використовується блок normprod для обчислення нормованого скалярного добутку рядка масиву ваг LW21 і вектора входу a1 у відповідності з наступним співвідношенням:
, , .
Рис. 5.1 - Архітектура мережі GRNN
Перший шар - це радіальний базисний шар з числом нейронів, рівним числу елементів Q навчальної множини. В якості початкового наближення для матриці ваг вибирається масив P1; зсув b1 встановлюється рівним вектору-стовпцю з елементами 0,8326 / SPREAD.
Функція dist обчислює відстань між вектором входу і вектором ваги нейрона; вхід функції активації n1 дорівнює поелементно добутку зваженого входу мережі на вектор зміщення; вихід кожного нейрона першого шару a1 є результатом перетворення вектора n1 радіальної базисної функцією radbas.
Якщо вектор ваги нейрона рівний транспонованому вектору входу, то зважений вхід дорівнює 0, а вихід функції активації - 1. Якщо відстань між вектором входу і вектором ваги нейрона дорівнює spread, то вихід функції активації буде дорівнює 0,5.
Другий шар - це лінійний шар з числом нейронів, також рівним R, причому в якості початкового наближення для матриці ваг LW {2,1} вибирається масив T.
Припустимо, що маємо вектор входу pi, близький до одного з векторів входу p з навчальної множини. Цей вхід pi генерує значення виходу шару ai1, близьке до 1. Це призводить до того, що вихід шару 2 буде близький до ti.
Якщо параметр впливу SPREAD малий, то радіальна базисна функція характеризується різким спадом і діапазон вхідних значень, на який реагують нейрони прихованого шару, виявляється досить малим. Із збільшенням параметра SPREAD нахил радіальної базисної функції стає більш гладким, і в цьому випадку вже декілька нейронів реагують на значення вектора входу. Тоді на виході мережі формується вектор, відповідний середньому декількох цільових векторів, відповідних вхідних векторів навчальної множини, близьких до даного вектору входу.
Чим більше значення параметра SPREAD, тим більше число нейронів бере участь у формуванні середнього значення, і в підсумку функція, що генерується мережею, стає більш гладкою.
5.2 Контрольний приклад
Створити мережу GRNN з ім'ям , що реалізовує функціональну залежність між входом і виходом виду на відрізку , використовуючи наступні дані:
, .
Перевірку якості відновлення наведеної залежності здійснити, використовуючи дані контрольної вибірки , яким відповідають значення .
>> // завдання вхідних значень
>>// завдання цільових значень
>> a=newgrnn(x,y,0.01)// створення НМ з відхиленням 0.01
>>Y1=sim(a,[-0.9 -0.7 -0.3 0.4 0.81]) // опитування НМ
>> Y1 =
0.8200 0.6400 0.0400 0.0900 0.8100
Точність апроксимації мережі:
5.3 Завдання до виконання лабораторної роботи
Побудувати модель мережі GRNN за допомогою пакету Neural Networks Toolbox, що входить до складу системи MATLAB.
Функцію обрати за бажанням.
Контрольні питання:
1) архітектура мережі GRNN;
2) алгоритм навчання мережі GRNN;
3) переваги мережі GRNN;
4) недоліки мережі GRNN.
Лабораторна робота N 6
Тема роботи: Прогнозування з використанням нейромережевих моделей.
Мета роботм: Вивчити методи прогнозування з використанням нейромережевих моделей. Побудувати прогнозну нейромережеву модель за допомогою пакету Neural Networks Toolbox, що входить до складу системи MATLAB.
Теоретичні відомості:
6.1 Сутність прогнозу та прогнозування
Розглянемо основні поняття і терміни, що використовуються у сфері прогнозування. Під прогнозуванням звичайно розуміють наукове, тобто засноване на аналізі фактів і доказів, причинно-наслідкових зв'язків, закономірностей визначення ймовірних шляхів та результатів майбутнього розвитку явищ і процесів, оцінку показників, що характеризують ці явища та процеси для більш-менш віддаленого майбутнього. Прогнозування є частиною більш загального поняття передбачення, котре поєднує всі різновиди способів здобування інформації про майбутнє: наукове, що засноване на знанні закономірностей розвитку природи, суспільства, мислення; інтуїтивне - на передчуттях людини; буденне - на так званому життєвому досвіді, прикметах і т. ін.; релігійне пророкування грунтується на вірі в надприродні сили, на марновірствах.
Іноді в літературі зустрічається супровідне поняття "завбачення", котре замінює термін "прогнозування". Однак їх слід розрізняти між собою за ступенем ймовірності оцінок щодо майбутнього. Якщо прогноз - це ймовірне судження про стан якого-небудь об'єкта в майбутньому, то завбачення являє ймовірне судження про його майбутнє. Формула прогнозування - "ймовірно, буде", завбачення - "буде".
На сьогоднішній день у самих різних сферах людської діяльності розроблена значна кількість прогнозів, котрі можуть бути класифіковані на різних підставах: залежно від цілей, завдань, об'єктів прогнозування, 'періоду упередження прогнозу і методів, що використовують для його розробки, і т. ін. Найбільш загальним критерієм типології всіх прогнозів є проблемно-цільовий критерій, що розмежовує прогнози з точки зору мети, заради якої вони розробляються. За даним критерієм розрізняють два типи прогнозів: пошукові (інша назва - дослідні, трендові) та нормативні (програмні, цільові).
Пошукове прогнозування - це визначення можливих станів об'єкта в майбутньому. При такому прогнозуванні здійснюється умовне продовження, перенесення в майбутнє існуючих у минулому і тепер тенденцій розвитку об'єкта з припущенням, що протягом прогнозованого періоду не станеться ніяких подій, котрі могли б різко змінити ці тенденції.
Нормативне прогнозування - це визначення шляхів і строків досягнення можливих станів об'єкта, котрі (стани) відповідають на запитання, яким шляхом можна досягти бажаного стану. Нормативне прогнозування будується на основі заздалегідь заданих норм, ідеалів, цілей.
На практиці, однак, обидва типи вказаних прогнозів у чистому вигляді зустрічаються рідко. Як правило, вони застосовуються в комплексі. Типова схема прогнозування в цьому випадку така: спочатку розвиток суб'єкта прогнозується виходячи із існуючих тенденцій (пошуковий прогноз). Якщо прогноз виявляється несприятливим, здійснюється пошук можливих способів, за допомогою яких вдалось би подолати несприятливий розвиток ситуації. При цьому ставиться мета, наприклад, зниження темпів зростання злочинності або її стабілізація на певному рівні, визначаються більш-менш точні строки та способи досягнення вказаної мети (нормативний прогноз).
До нормативного прогнозування відноситься й оцінка кримінологічних наслідків, проектів законодавчих та відомчих нормативних актів, взагалі будь-яких управлінських рішень, що стосуються правоохоронної сфери. Мінімізація таких наслідків ще на стадії розробки подібних документів, а також завчасна підготовка органів внутрішніх справ до дій в нових умовах, що виникають у зв'язку з їх прийняттям, - актуальна проблема сьогоднішнього дня.
Існують також інші типи прогнозів. Так, за об'єктом дослідження розрізняють природознавчі, науково-технічні та суспільствознавчі (соціально-економічні в широкому значенні цього терміна) прогнози. Своєю чергою природознавчі прогнози підрозділяються на такі види:
1) метеорологічні (погода, повітряні потоки та інші атмосферні явища);
2) гідрологічні (морські хвилювання, паводки, тайфуни, шторми і т. ін.);
3) геологічні (завали корисних копалин, землетруси, сход лавин і т. ін.);
4) біологічні, включаючи фенологічні та сільськогосподарські (врожайність, захворюваність і т. ін.);
5) медико-біологгчні (переважно хвороби людини);
6) космологічні (стан та рух небесних тіл, випромінювання, затемнення і т. ін.);
7) фізико-хімічні прогнози явищ мікросвіту.
Науково-технічне прогнозування охоплює, з одного боку, оцінку станів і перспектив роботи механізмів, приладів, електронної апаратури, а з іншого - прогнозування розвитку науки, техніки, технології, підготовки наукових кадрів і т. ін.
Суспільствознавчі прогнози підрозділяються на різні види залежно від конкретної форми їх прикладення, найбільш відомими з них є:
1) соціально-медичні (охорона здоров'я, фізкультура, спорт);
2) соціально-екологічні (перспективи збереження рівноваги між станом природного середовища та життєдіяльністю людини);
3) економічні (перспективи розвитку господарства і економічних відносин взагалі, різних форм господарювання та власності);
4) юридичні, в тому числі кримінально-правові та кримінологічні (розвиток держави та законодавства, стан злочинності та інших правопорушень, взагалі правових відносин);
5) демографічні (зміни чисельності населення, статево-вікової структури населення, міграції) та ін.
Слід особливо зупинитись на класифікації прогнозів з точки зору періоду упередження (горизонту прогнозування, періоду прогнозування), тобто часового інтервалу, на котрий розробляється прогноз.
У літературі зустрічається різна кількість градацій прогнозів за цим критерієм. У деяких випадках виділяють три види прогнозів: короткострокові, середньострокові та довгострокові'. Інші автори пропонують більш детальну градацію, додаючи до названих видів ще оперативні та наддовгострокові прогнози.
В основі визначення періоду упередження лежить загальний методологічний принцип: прогноз можливий лише в часових межах, в котрих кількісні зміни не виходять за межі даної якості, тобто поки діють характерні для даної якості закони.
Прогнозування значно ускладнюється в періоди переходу соціально-економічних систем із одного якісного стану в інший, коли особливо загострюються усі суспільні відносини, що різко збільшує невизначеність подальшого розвитку системи. В цих умовах система стає вразливою і будь-яке, навіть слабке збурювання, вплив випадкового фактора може стати вирішальним для подальшого п розвитку. Тому розробка достатньо надійних прогнозів, навіть на найближчу перспективу, в такі перехідні періоди, як свідчить, зокрема, досвід кримінологічного прогнозування, виявляється надзвичайно складною. Прикладом такого якісного стрибка є сучасний етап соціально-економічного розвитку нашого суспільства. Водночас зазначимо, що саме з цієї причини тепер широко використовується такий підхід до прогнозування, як розробка багатьох варіантних прогнозів. При цьому розробники прогнозу будують не один, а декілька (найчастіше три) сценарії можливого розвитку ситуації, які умовно називають "песимістичний", "оптимістичний" і "найбільш ймовірний", котрий знаходиться між двома першими. Кожний з них базується на відповідних припущеннях про майбутні зміни в політичній, економічній, демографічній та інших сферах життя суспільства з наступною оцінкою впливу цих змін на злочинність.
Очевидно, що на практиці дуже складно реалізувати наведений вище методологічний принцип визначення періоду упередження прогнозу, оскільки далеко не завжди можна визначити момент переходу системи в якісно новий стан, особливо в соціальній сфері. Тому для соціально-економічних прогнозів згідно з характером і темпами розвитку явищ, які прогнозуються, доцільно прийняти ось такий приблизний часовий масштаб для періодів упередження:
1) короткостроковий прогноз (до одного року);
2) середньостроковий прогноз (від одного до п'яти років);
3) довгостроковий прогноз (від п'яти до п'ятнадцяти років). З періодом упередження певною мірою пов'язаний і поділ прогнозів на якісні та кількісні. У першому випадку прогнози розробляються у вигляді якісних оцінок розвитку об'єкта: загального опису тенденцій та очікуваного характеру змін, а в самому простому випадку - ствердження про можливість або неможливість настання подій, що прогнозуються, (наприклад, "можливе зростання злочинності", або "може настати стабілізація певних видів злочинів", або "можна очікувати зниження темпів зростання аварійності" і т. ін.).
Кількісні прогнози являють собою числові значення прогнозованих показників (наприклад, "кількість крадіжок перевищить мільйон") або кількісні оцінки достовірності досягнення цих значень. На практиці, як правило, прогнозуються одночасно і якісні і кількісні характеристики об'єкта. Співвідношення цих сторін у прогнозі залежить від специфіки самого об'єкта прогнозу, цілей прогнозування, періоду упередження та ін.
Наприклад, з точки зору останнього критерію достатньо поширеною є така структура прогнозної інформації: оперативні прогнози є кількісними, короткострокові - переважно кількісними, середньострокові - кількісно-якісними і довгострокові - в основному якісними. Крім того, оскільки в перехідні періоди точність і вірогідність прогнозів, насамперед кількісних, різко знижується, в такі періоди підвищується роль якісних прогнозів.
Існують ще й інші критерії класифікації прогнозів (наприклад, характер джерела інформації, масштабність прогнозу та деякі інші).
6.2 Контрольний приклад
Значення всіх навчальних параметрів представлені у формі «Да-Ні». Навчальна вибірка складається з 31 прикладу, кожен з яких представляє собою ситуацію виборів, починаючи з 1864 року (табл. 6.1), де відповіді «Так» позначені одиницями, а відповіді «Ні» - нулями.
Питання:
1. У рік виборів була активна третя партія?
2. Була серйозна конкуренція при висуненні кандидата від правлячої партії?
3. Чи був рік виборів часом спаду або депресії?
4. Правлячий президент здійснив істотні зміни в політиці?
5. Під час правління були істотні соціальні хвилювання?
Клас 1 означає, що в даній ситуації був обраний кандидат правлячої партії, клас 2 - кандидат опозиційної партії. Після навчання мережа повинна передбачити відповідь для ситуації, відображеної в табл. 6.2, яка не входила в навчальну вибірку (результат цих виборів відомий - в 1992 році президентом став Б. Клінтон).
Таблица 6.1 - Навчальна вибірка
№ |
Год |
Класс |
Обучающие параметры |
|||||
Х1 |
Х2 |
Х3 |
Х4 |
Х5 |
||||
1 |
1864 |
1 |
0 |
0 |
0 |
1 |
1 |
|
2 |
1868 |
1 |
0 |
0 |
0 |
1 |
1 |
|
3 |
1872 |
1 |
0 |
0 |
0 |
0 |
0 |
|
4 |
1880 |
1 |
0 |
1 |
0 |
1 |
0 |
|
5 |
1888 |
1 |
0 |
0 |
0 |
0 |
0 |
|
6 |
1900 |
1 |
0 |
0 |
0 |
0 |
0 |
|
7 |
1904 |
1 |
0 |
0 |
0 |
0 |
0 |
|
8 |
1901 |
1 |
0 |
0 |
0 |
1 |
0 |
|
9 |
1916 |
1 |
0 |
0 |
0 |
1 |
0 |
|
10 |
1924 |
1 |
1 |
0 |
0 |
1 |
0 |
|
11 |
1921 |
1 |
0 |
0 |
0 |
0 |
0 |
|
12 |
1936 |
1 |
0 |
0 |
1 |
1 |
0 |
|
13 |
1940 |
1 |
0 |
0 |
1 |
1 |
0 |
|
14 |
1944 |
1 |
0 |
0 |
0 |
1 |
0 |
|
15 |
1948 |
1 |
1 |
0 |
0 |
1 |
0 |
|
16 |
1956 |
1 |
0 |
0 |
0 |
0 |
0 |
|
17 |
1964 |
1 |
0 |
0 |
0 |
0 |
0 |
|
18 |
1972 |
1 |
0 |
0 |
0 |
0 |
1 |
|
19 |
1860 |
2 |
1 |
1 |
0 |
0 |
1 |
|
20 |
1872 |
2 |
0 |
1 |
1 |
0 |
0 |
|
21 |
1884 |
2 |
0 |
1 |
0 |
0 |
1 |
|
22 |
1892 |
2 |
1 |
0 |
0 |
1 |
1 |
|
23 |
1896 |
2 |
0 |
1 |
1 |
1 |
1 |
|
24 |
1912 |
2 |
1 |
1 |
0 |
0 |
0 |
|
25 |
1920 |
2 |
0 |
1 |
0 |
1 |
1 |
|
26 |
1932 |
2 |
0 |
0 |
1 |
0 |
1 |
|
27 |
1952 |
2 |
0 |
1 |
0 |
0 |
0 |
|
28 |
1960 |
2 |
0 |
0 |
1 |
0 |
0 |
|
29 |
1968 |
2 |
1 |
1 |
0 |
1 |
1 |
|
30 |
1976 |
2 |
0 |
1 |
0 |
0 |
0 |
|
31 |
1980 |
2 |
1 |
1 |
1 |
0 |
0 |
Таблица 6.2 - Завдання
32 |
1992 |
? |
Да |
Да |
Да |
Да |
Да |
Для прогнозування результатів виборів використовується нейрона мережа зустрічного поширення.
>> P=[0000000001000010001001010000101;
0001000000000000001110111010111;
0000000000011000000100100101001;
1101000111011110000001101000100;
1100000000000000011011101100100];
>>C=[1111111111111111112222222222222];
>>T=ind2vec(C);
>>net=newlvq(minmax(P), 4, [. 6 .4],0.1);
>>Net=train(net,P,T);
>>Y=sim(net, P);
>>Y=sim(net, [1;1;1;1;1]);
Y=
0
1
Відповідь: клас 2 - у 1992 році виграв кандидат від опозиційної партії.
6.3 Завдання до виконання лабораторної роботи
Побудувати прогнозну нейромережеву модель за допомогою пакету Neural Networks Toolbox, що входить до складу системи MATLAB. Навчальну вибірку обрати за бажанням.
Контрольні питання:
1) сутність прогнозу та прогнозування;
2) види прогнозів;
3) пошукове прогнозування;
4) нормативне прогнозування.
Лабораторна робота N 7
Тема роботи: Генетичні алгоритми.
Мета роботм: Вивчити методи роботи з генетичними алгоритмами за допо...
Подобные документы
Основні поняття теорії нечіткої логіки. Прогнозування економічних процесів та курсу валюти на фінансовому ринку. Системи та алгоритми нечіткого виводу. Адаптивні системи нейро-нечіткого виводу. Процес розробки і перевірки нечіткої моделі гібридної мережі.
курсовая работа [3,1 M], добавлен 19.06.2014Сутність емерджентного навчання, основаного на біологічних принципах закону природного відбору. Моделювання умов біологічної еволюції за рахунок взаємодії кінцевих автоматів, заданих наборами станів, і правил переходу. Етапи роботи генетичного алгоритму.
реферат [59,8 K], добавлен 01.12.2015Вимоги до програмного виробу та функціональних характеристик. Опис інтерфейсу програмного виробу, процедур і функцій. Мережі зі зворотним розповсюдженням. Алгоритм навчання з вчителем (алгоритм зворотного розповсюдження багатошарових нейронних мереж).
курсовая работа [1,1 M], добавлен 20.01.2009Застосування нейронних мереж при вирішенні різних технічних проблем. Архітектура штучних нейронних мереж. Дослідження штучного інтелекту. Гіпотеза символьних систем. Представлення за допомогою символів. Синтаксичний та семантичний аналіз розуміння мови.
курсовая работа [985,8 K], добавлен 14.01.2010Історія створення комп’ютерних комунікацій та принципи їх побудови. Характеристика устаткування для створення комп’ютерних мереж. Поняття адресації, види протоколів, їх розвиток, комбінування та особливості використання. Стандарти бездротових мереж.
курс лекций [1,3 M], добавлен 04.06.2011Поняття та головні принципи створення системи управління базами даних, їх сутність, основні характеристики та складові елементи, функції та типова структура, типи. Вивчення проблеми та визначення необхідності використання даної системи в економіці.
реферат [14,6 K], добавлен 03.12.2010Часовий ряд як сукупність значень будь-якого показника за декілька послідовних моментів або періодів часу. Знайомство з методами для прогнозування часового ряду за допомогою штучних нейронних мереж. Розгляд головних задач дослідження часового ряду.
контрольная работа [1,1 M], добавлен 14.09.2014Короткі теоретичні відомості про Deductor – аналітичну платформу, призначену для створення логічно завершених прикладних рішень в області аналізу даних. Основи роботи з аналітичною платформою Deductor виробництва російської компанії BaseGroup Labs.
лабораторная работа [1,4 M], добавлен 14.10.2014Створення програмного модуля імітаційного дослідження архітектури комп'ютерних мереж системи "Емулятор мережі" в середовищі Microsoft Visual C # 8.0 Express Edition з використанням технології dotNet. Розробка комплексних лабораторних робіт на її основі.
дипломная работа [2,2 M], добавлен 26.10.2012Дослідження інструментальних засобів для створення систем спільного навчання. Створення Windows-додатків на основі Visual C#. Функціональні можливості та програмна реалізація системи інтерактивної взаємодії. Програмна реалізація модулю прийому зображення.
дипломная работа [4,5 M], добавлен 22.10.2012Класифікація комп'ютерних мереж. Забезпечення функціонування локальної мережі за допомогою сервера. Топологія локальної мережі. Оптоволоконний інтерфейс до розподілених даних FDDI. Бездротові технології Wi-Fi, Bluetooth, GPRS. Мережеві апаратні засоби.
реферат [561,2 K], добавлен 15.03.2013Технологічні процеси складання, монтажу, налагодження і тестування комп'ютерних мереж між двома чи більше комп'ютерами. Функціонування локальної обчислювальної мережі. Офісні програмні продукти з пакету MS Office. Топологія мережі підприємства "зірка".
отчет по практике [1,5 M], добавлен 28.08.2014Навчання штучних нейронних мереж, особливості їх використання для вирішення практичних завдань. Рецепторна структура сприйняття інформації. Перцептрон як модель розпізнавання. Задача моделювання штучної нейронної мережі з розпаралелюванням процесів.
дипломная работа [2,8 M], добавлен 24.07.2013Поняття про сайт, його основні функції, класифікація, програмна розробка та створення сайтів у візуальних редакторах. Програмна реалізація додатку. Розробка адмін-панелі. Вимоги щодо відстані між бічними поверхнями відеотерміналів. Охорона праці.
дипломная работа [2,1 M], добавлен 18.11.2014Принципи організації баз даних (БД) при проектуванні клієнт-серверних додатків. Інструментальні засоби створення системи. Різновиди архітектур БД. Функції та програмна реалізація. Економічне обґрунтування доцільності розробки програмного продукту.
дипломная работа [2,1 M], добавлен 22.10.2012Особливості архітектури комп'ютерних мереж. Апаратні та програмні засоби комп'ютерних мереж, їх класифікація та характеристика. Структура та основні складові комунікаційних технологій мереж. Концепції побудови та типи функціонування комп'ютерних мереж.
отчет по практике [1,2 M], добавлен 12.06.2015Історія створення і розвитку Bluetooth. Створення невеликих локальних мереж і безпровідного об'єднання пристроїв. Принцип роботи за принципом "крапка-крапка" та багатоточковий радіоканал, керований багаторівневим протоколом мобільного зв'язку GSM.
курсовая работа [978,2 K], добавлен 04.06.2010Загальні відомості про дистанційне навчання. Класифікація та характеристика соціальних сервісів. Історія соціальних мереж, технологія та статистика. Удосконалення дистанційного навчання у веб-центрі. Полегшення роботи при написанні звітів, відеоуроки.
курсовая работа [2,1 M], добавлен 15.04.2013Класифікація експертних систем. Представлення знань, переваги та слабкі місця. База знань як елемент експертної системи. Сфера застосувань та перспективи розвитку. Створення експертної системи для оцінки ступеня підготовленості студента до іспиту.
курсовая работа [1,4 M], добавлен 04.02.2014Розробка програми для збору, збереження та обробки інформації про хід технологічного процесу і передачі її в локальну обчислювальну мережу. Структура та функції системи: алгоритми функціонування і програмне забезпечення КОМ, сервера і робочих станцій.
курсовая работа [225,2 K], добавлен 28.08.2012