Пояснювальна записка до курсової роботи з дисципліни: \"Системний аналіз та теорія прийняття рішень\" на тему: \"Оптимізація параметрів навчання системи прийняття рішень\" icon

Пояснювальна записка до курсової роботи з дисципліни: "Системний аналіз та теорія прийняття рішень" на тему: "Оптимізація параметрів навчання системи прийняття рішень"




Скачати 287.94 Kb.
НазваПояснювальна записка до курсової роботи з дисципліни: "Системний аналіз та теорія прийняття рішень" на тему: "Оптимізація параметрів навчання системи прийняття рішень"
Дата28.05.2013
Розмір287.94 Kb.
ТипПояснювальна записка


МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ

СУМСЬКИЙ ДЕРЖАВНИЙ УНІВЕРСИТЕТ

КАФЕДРА КОМП’ЮТЕРНИХ НАУК


ПОЯСНЮВАЛЬНА ЗАПИСКА

до курсової роботи

з дисципліни: "Системний аналіз та теорія прийняття рішень"

на тему: "Оптимізація параметрів навчання системи прийняття рішень"


Варіант № 34


Виконав: студент групи ________

_____________________


Перевірив: Шелехов І.В.


Суми 2013

РЕФЕРАТ

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

КЛЮЧОВІ СЛОВА: клас розпізнавання, ознака розпізнавання, реалізації класу розпізнавання, навчальна вибірка, еталонний вектор, метод функціонально-статистичних випробувань, інформаційний критерій, точнісні характеристики, робоча область.

ЗМІСТ

ВСТУП 4

^ 1. ПОСТАНОВКА ЗАДАЧІ 4

2. КОРОТКІ ПОЛОЖЕННЯ МЕТОДУ ФУНКЦІОНАЛЬНО-СТАТИСТИЧНИХ ВИПРОБУВАНЬ 4

3. ОПИС АЛГОРИТМУ НАВЧАННЯ 8

4. КРИТЕРІЙ ОПТИМІЗАЦІЇ 10

^ 5. АЛГОРИТМИ ЕКЗАМЕНУ 11

6. КОРОТКИЙ ОПИС ПРОГРАМИ 12

7. РЕЗУЛЬТАТ МОДЕЛЮВАННЯ 13

ВИСНОВКИ 16

СПИСОК ЛІТЕРАТУРИ 17

ДОДАТОК (ТЕКСТ ПРОГРАМИ) 18



ВСТУП


З початком комп’ютерної ери науково-технічного прогресу суспільства з’явився новий клас автоматизованих систем - інтелектуальні системи керування (ІСК), які здатні моделювати розумові процеси, притаманні людині при прийнятті рішень. Тобто, у теоретичному плані виникла необхідність переходу від класичних строгих математичних моделей до кібернетичних(евристичних) методів моделювання поведінки таких систем, що функціонують в умовах апріорної невизначеності, а у методологічному плані - перехід від операторних методів оброблення даних до прогресивної об’єктно-орієнтованої методології проектування, що ґрунтується на методах аналізу даних.

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

Методологічні та теоретичні ускладнення при вирішенні проблеми штучного інтелекту обумовили гострий дефіцит робочих алгоритмів оптимізації просторово-часових параметрів функціонування, які прямо або непрямо впливають на функціональну ефективність інтелектуальних систем. Усе ще залишаються нерозв’язаними такі важливі задачі як оптимізація словника ознак розпізнавання та корегування вхідного математичного опису з метою покращення точнісних характеристик класифікатора, що у цілому стримує становлення теорії проектування інтелектуальних систем та їх широке застосування для розв’язання практичних задач контролю та управління в різних галузях науки та техніки.

Викладені вище міркування визначили актуальність такого напрямку досліджень як, - розробка засобів інформаційної технології аналізу та синтезу здатних навчатися (самонавчатися) ІСК за прямим інформаційно екстремальним методом, який ґрунтується безпосередньо на оцінці інформаційної спроможності системи і дозволяє в рамках об’єктно - орієнтованої методології проектування здійснювати класифікаційний аналіз даних умов за умов невизначеності.
^

1. ПОСТАНОВКА ЗАДАЧІ


Розробити та програмно реалізувати базовий алгоритм навчання СПР для розпізнавання двох нестаціонарних за яскравістю зображень (М=3) і алгоритм екзамену за методом функціонально-статистичних випробувань (МФСВ). Задано такі параметри:

  • рецепторне поле 250250 пікселів;

  • інформаційний критерій оптимізації за Шенноном
^

2. КОРОТКІ ПОЛОЖЕННЯ МЕТОДУ ФУНКЦІОНАЛЬНО-СТАТИСТИЧНИХ ВИПРОБУВАНЬ


МФСВ – непараметричний інформаційно-екстремальний метод аналізу та синтезу здатної навчатися ІСК, який ґрунтується на прямій оцінці інформаційної здатності системи за умов нечіткої компактності реалізацій образу, та обмеження навчальної вибірки, яка є прийнятною для задач контролю і управління. Метод призначено для розв’язання практичних задач контролю та управління слабо формалізованими системами і процесами шляхом автоматичної класифікації їх функціональних станів за умови невизначеності.

МФСВ окрім системних та специфічних принципів ґрунтується також на 2-х дистанційних принципах:

  1. максимально-дистанційному, який вимагає максимальної міжцентрової відстані між класами;

  2. мінімально-дистанційному, вимагає мінімальної середньої відстані реалізацій від центру свого класу.

Класом розпізнавання (образом) називається відбиття властивостей m-го функціонального стану СР і відношень між елементами системи. Клас розпізнавання  топологічна категорія, яка задається в просторі ОР областю  Б.

Детерміновано-статистичний підхід до моделювання систем вимагає завдання систем нормованих (експлуатаційних) і контрольних допусків на ОР. Нехай  базовий клас, який характеризує максимальну функціональну ефективність, тобто є найбільш бажаним для розробника інформаційного забезпечення системи.

Нормованим називається поле допусків , в якому значення і–ї ОР знаходиться з імовірністю рі=1 або pi=0, за умови, що функціональний стан відноситься до класу .

Контрольним називається поле допусків , в якому значення і-ї ОР знаходиться з імовірністю 0<рі<1 за умови, що функціональний стан відноситься до класу .

В МФСВ система контрольних допусків (СКД) вводиться з метою рандомізації процесу прийняття рішень, оскільки для повного дослідження об’єкту контролю та управління (ОКУ) необхідно використовувати як детерміновані, так і статистичні характеристики. Зрозуміло, що і базова (відносно класу ) СКД є сталою для всієї абетки класів розпізнавання.

Реалізацією образу називається випадковий структурований бінарний вектор

, ,

де  і-та координата вектора, яка приймає одиничне значення, якщо значення і-ї ОР знаходиться в полі допусків , і нульове значення, якщо не знаходиться;  мінімальна кількість випробувань, яка забезпечує репрезентативність реалізацій образу.

При обґрунтуванні гіпотези компактності (чіткої, або нечіткої) реалізацій образу за геометричний центр класу приймається вершина бінарного еталонного вектору хm.

Еталонний вектор (ЕВ) xm  це математичне сподівання реалізацій класу . Він подається у вигляді детермінованого структурованого бінарного вектора

xm = m,1 , …, xm,і , …, xm,N >, m = ,

де хm,і  і-та координата вектора, яка приймає одиничне значення, якщо значення і-ї ОР

знаходиться в нормованому полі допусків , і нульове значення, якщо не знаходиться.

Основною задачею етапу навчання за МФСВ є розбиття простору ОР за поданою навчальною матрицею на області класів розпізнавання деяким оптимальним в інформаційному сенсі способом, який забезпечує на етапі екзамену прийняття рішень з достовірністю, наближеною до максимальної асимптотичної достовірності.

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

Як критерій оптимізації процесу навчання системи прийняттю рішень в рамках МФСВ застосовується статистичний інформаційний КФЕ, який є природною мірою різноманітності (або схожості) класів розпізнавання і одночасно функціоналом асимптотичних точнісних характеристик СПР. При цьому важливо, щоб параметри навчання були оптимальними в інформаційному розумінні, тобто забезпечували максимальну функціональну ефективність СПР, яка визначається достовірністю прийняття рішень на екзамені.

Достовірність класифікатора залежить від геометричних параметрів роздільних гіперповерхонь класів розпізнавання.

Для загального випадку, коли класи розпізнавання перетинаються розглянемо відносний коефіцієнт нечіткої компактності реалізації образу для класу .



Процес навчання полягає в мінімізації цього виразу.

В МФСВ, який ґрунтується на допущенні гіпотези компактності (чіткої або нечіткої) реалізацій образу, як наближення точної роздільної гіперповерхні для класу розглядається гіперсфера, центром якої є ЕВ хm, а радіусом  кодова відстань, яка у просторі Хеммінга визначається як

,

де  і-та координата вектора ;  i-тa координата деякого вектора-реалізації m, вершина якого знаходиться на роздільні гіперповерхні класу ;  операція складання за модулем два.

Оптимальною кодовою відстанню (радіусом) між вектором і контейнером називається екстремальне значення , яке визначає максимум інформаційного КФЕ Em, де {d} – послідовність збільшень радіуса контейнера .

Побудова оптимальної в інформаційному сенсі РГП у вигляді гіперсфери за МФСВ зводиться до оптимізації радіуса роздільної гіперсфери , яка відбувається за ітераційним алгоритмом



де - змінна числа збільшень радіуса РГП; ; - крок збільшення.

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

^ МАТЕМАТИЧНА МОДЕЛЬ ПРОЦЕСУ НАВЧАННЯ

Розглянемо математичну модель ІСК, яка реалізує класичну задачу розпізнавання образів за МФСВ. Математична модель повинна включати як обов'язкову складову частину вхідний математичний опис, який подамо на рівні системного аналізу у вигляді теоретико-множинної структури

,

де G  простір вхідних сигналів (факторів); T  множина моментів часу зняття інформації; Ω  простір ознак розпізнавання; Z – простір можливих станів; Y  множина сигналів після первинної обробки інформації; П:GTΩZ  оператор переходів, що відбиває механізм зміни станів під дією внутрішніх і зовнішніх збурень; Ф:GTΩZY  оператор оброблення зображення (формування вибіркової множини Y на вході СПР), який є реакцією на внутрішні і зовнішні збурення. Як універсум випробувань W розглядається декартовий добуток: W=GTΩZ.

Для чіткого детермінованого розбиття потужності M, оператор побудови розбиття η задає відображення η:Y. Апріорно оператором будується покриття , яке визначає абетку класів розпізнавання і на якому на відміну від розбиття відношення еквівалентності відсутнє. Оператор æ переводить апостерірно розбиття в покриття і замикає комутативне кільце. Перевірка гіпотези про належність реалізацій образу здійснюється оператором класифікації , де  множина допустимих гіпотез (рішень). При цьому гіпотеза означає відмову від класифікації. У загальному випадку математичну модель будь-якої ІСК, яка розв’язує задачу класифікаційного аналізу , подамо у вигляді діаграми відображень відповідних множин:

(1)

У діаграмі (1) оператор зворотного зв’язку  корегує геометричні параметри розбиття з метою поліпшення точнісних характеристик СПР. Саме спосіб реалізації оператора  породжує різні методи та підходи до розв’язання проблеми адаптивного навчання ІСК.

При обґрунтуванні гіпотези нечіткої компактності має місце нечітке розбиття  Ω.

Тоді замість оператора  застосуємо оператор θ нечіткої факторизації простору ознак: θ:Y. Нехай оператор класифікації :I| l | визначає перевірку основної статистичної гіпотези про належність реалізацій {|j=} класу , де l кількість статистичних гіпотез. Принциповою відмінністю МФСВ від відомих методів автоматичної класифікації є ітераційна оптимізація процесу навчання за інформаційним КФЕ. Для обчислення КФЕ оператор γ: I| l |  | q | шляхом оцінки прийнятих гіпотез l формує множину ТХ  | q |, де q=l 2 – кількість ТХ, а оператор |q| E обчислює множину значень інформаційного КФЕ, який є функціоналом від ТХ. Ітераційний процес оптимізації геометричних параметрів розбиття реалізується оператором r:E шляхом пошуку максимуму КФЕ , де  множина кроків навчання розпізнаванню реалізацій класу . Структурна діаграма процесу навчання за МФСВ для випадку нечіткого розбиття має вигляд

(2)

Таким чином, у діаграмі (2) контур операторів безпосередньо оптимізує геометричні параметри розбиття . Оператор U: EGTΩZ регламентує процес навчання. Оскільки в цьому контурі також застосовано процедуру обчислення інформаційного критерію, то він дозволяє розв’язувати задачу оптимізації параметрів плану навчання, які визначають, наприклад, обсяг і тривалість випробовувань, потужність словника ОР, черговість подання для навчання класів розпізнавання та інше.
^

3. ОПИС АЛГОРИТМУ НАВЧАННЯ


Вхідною інформацією для навчання за базовим алгоритмом є дійсний, в загальному випадку, масив реалізацій образу ; система полів контрольних допусків і рівні селекції , які за умовчанням дорівнюють 0,5 для всіх класів розпізнавання.

Розглянемо етапи реалізації алгоритму:

1.Формування бінарної навчальної матриці , елементи якої дорівнюють


(1)


2.Формування масиву еталонних двійкових векторів , елементи якого визначаються за правилом:

(2)

де m  рівень селекції координат вектору .

3. Розбиття множини еталонних векторів на пари найближчих сусідів: =<xm , xl >, де xl  еталонний вектор сусіднього класу , за таким алгоритмом:

а) структурується множина еталонних векторів, починаючи з вектора x1 базового класу , який характеризує найбільшу функціональну ефективність ІСК;

б) будується матриця кодових відстаней між еталонними векторами розмірності M M;

в) для кожної строки матриці кодових відстаней знаходиться мінімальний елемент, який належить стовпчику вектора  найближчого до вектора, що визначає строку. При наявності декількох однакових мінімальних елементів вибирається з них будь-який, оскільки вони є рівноправними;

г) формується структурована множина елементів попарного розбиття , яка задає план навчання.

4. Оптимізація кодової відстані dm відбувається за рекурентною процедурою. При цьому приймається .

5.Процедура закінчується при знаходженні максимуму КФЕ в робочій області його визначення: де - множина радіусів концентрованих гіперсфер, центр яких визначається вершиною .

Таким чином, базовий алгоритм навчання :


. (3)

На рис.1 наведено структурну схему базового алгоритму навчання. Тут показано такі вхідні дані: {Y[J,I,K]}  масив навчальних вибірок, J=1..NM  змінна кількості випробувань, де NM  мінімальний обсяг репрезентативної навчальної вибірки, I=1..N  змінна кількості ознак розпізнавання, K=1..M  змінна кількості класів розпізнавання; {NDK[I]}, {VDK[I]}  масиви нижніх і верхніх контрольних допусків на ознаки відповідно. Результатом реалізації алгоритму є: {DOPT[K]}  цілий масив оптимальних значень радіусів контейнерів класів розпізнавання у кодовій відстані Хеммінга; {EV[K]}  масив еталонних двійкових векторів класів розпізнавання; {EM[K]}  дійсний масив максимальних значень інформаційного КФЕ процесу навчання; {D1[K]}, {A[K]}, {B[K]}, {D2[K]}  дійсні масиви оцінок екстремальних значень точнісних характеристик процесу навчання для відповідних класів розпізнавання: перша вірогідність, помилки першого та другого роду і друга вірогідність відповідно. Змінна D є робочою змінною кроків навчання, на яких послідовно збільшується значення радіуса контейнера. У структурній схемі алгоритму (рис. 1) блок 3 формує масив навчальних двійкових вибірок {X[J,I,K]} шляхом порівняння значень елементів масиву {Y[J,I,K]} з відповідними контрольними допусками за правилом (1) і формує масив еталонних двійкових векторів {EV[K]} шляхом статистичного усереднення стовпців масиву {X[J,I,K]} за правилом (2) при відповідному рівні селекції, який за умовчанням дорівнює .




Рисунок 1 Структурна схема базового алгоритму навчання


Блок 4 здійснює розбиття множини еталонних векторів на пари “найближчих сусідів”. Блок 11 обчислює на кожному кроці навчання значення інформаційного КФЕ і оцінки точнісних характеристик процесу навчання. При невиконанні умови блоку порівняння 12 блок 13 оцінює належність поточного значення критерію робочій області визначення його функції і при позитивному рішенні блоку 13 це значення запам’ятовується блоком 14. При негативному рішенні блока порівняння 15, в якому величина дорівнює кодовій відстані між парою сусідніх еталонних векторів, блок 16 здійснює у робочій області пошук глобального максимуму КФЕ – EM[K] і визначає для нього екстремальне значення радіуса гіперсфери – DOPT[K]. Аналогічно будуються оптимальні контейнери для інших класів. Якщо параметри навчання {DOPT[K]} і {EV[K]} є вхідними даними для екзамену, то значення КФЕ та екстремальних оцінок точнісних характеристик використовуються для аналізу ефективності процесу навчання. Таким чином, основною процедурою базового алгоритму навчання за МФСВ є обчислення на кожному кроці навчання статистичного інформаційного КФЕ і організація пошуку його глобального максимуму в робочій області визначення функції критерію.
^

4. КРИТЕРІЙ ОПТИМІЗАЦІЇ


Нехай в якості КФЕ виступає нормована інформаційна міра Шеннона :


(4)

де - апріорна (безумовна) ентропія;

-

 апостеріорна (умовна) ентропія, що характеризує залишкову невизначеність після прийняття рішення;  безумовна ймовірність прийняття гіпотези ;  апостеріорна ймовірність прийняття рішення за умови, що прийнята гіпотеза ; М  кількість гіпотез.

Для двохальтернативної системи оцінок (М=2) і рівноймовірних гіпотез, що характеризує найбільш важкий у статистичному сенсі випадок прийняття рішень, після заміни в (4) апостеріорних імовірностей на апріорні за формулою Байєса отримаємо

(5)


де  точнісні характеристики (ТХ): помилки першого та другого роду, перша та друга достовірності відповідно. Отже, критерій (5) є нелінійним функціоналом від ТХ процесу навчання. Крім того, він є неоднозначним, що потребує визначення в процесі навчання робочої області для його значень. Оскільки навчальна вибірка (НВ) є обмеженою за обсягом, то надалі замість ТХ будемо оперувати їх оцінками (емпіричними частотами):

(6)

де  кількість подій, які означають належність та неналежність реалізацій класу відповідно, якщо ;  кількість подій, які означають належність і неналежність реалізацій класу , якщо вони дійсно не належать класу ; n  обсяг вибірки. Тоді після підстановки (6) в (5) отримаємо робочу формулу КФЕ за Шенноном:




(7)
^

5. АЛГОРИТМИ ЕКЗАМЕНУ


Алгоритми екзамену за МФСВ можуть мати різну структуру залежно від розподілу реалізацій образу, що розпізнаються. Обов’язковою умовою їх реалізації є забезпечення однакових структурованості і параметрів формування як для навчальної, так і для екзаменаційної матриць.

За наявності чіткого розбиття, яке було утворено на етапі навчання, алгоритм екзамену за МФСВ має такі вхідні дані:

  • M  кількість класів, які СПР навчена розпізнавати;

  •  масив еталонних двійкових векторів, які визначають центри відповідних оптимальних контейнерів класів розпізнавання, побудованих на етапі навчання;

  • {}  масив оптимальних радіусів побудованих на етапі навчання відповідних контейнерів;

  •  масив двійкових векторів-реалізацій образу, що розпізнається;

  •  оптимальна СКД на ознаки розпізнавання, яку визначено на етапі навчання.

За умовчанням приймається рівень селекції m= 0,5.

Розглянемо кроки реалізації алгоритму екзамену при застосуванні гіпотези чіткої компактності реалізацій образу:

1. Формування лічильника класів розпізнавання: .

2. Формування лічильника числа реалізацій, що розпізнаються: .

3. Порівняння: якщо , то виконується крок 4, інакше  крок 5.

4. Формування лічильника позитивних результатів порівняння.

5. Порівняння: якщо jn , то виконується крок 2, інакше – крок 6.

6. Порівняння: якщо k >j / 2, то виконується крок 8, інакше –крок 7.

7. Порівняння: якщо mM, то виконується крок 1, інакше – крок 8.

8. Визначення класу , до якого належить екзаменаційна матриця. Якщо в процесі екзамену порівняння на кроці 6 не дало позитивного результату, то може бути запущено алгоритм ФКА, з метою донавчання СПР, або алгоритм прогностичної класифікації, з метою підтвердження необхідності перенавчання СПР.

Для нечіткого розбиття алгоритм екзамену за МФСВ ґрунтується на аналізі значень функції належності, що обчислюється для кожної реалізації, що розпізнається. Розглянемо кроки реалізації алгоритму екзамену при нечіткому розбитті:

1. Формування лічильника класів розпізнавання.

2. Формування лічильника числа реалізацій, що розпізнаються: .

3. Обчислення кодової відстані .

4. Обчислення функції належності за виразом:



5. Порівняння: якщо jn , то виконується крок 2, інакще – крок 6.

6. Порівняння: якщо mM, то виконується крок 1, інакще – крок 7.

7. Визначення класу , до якого належить екзаменаційна реалізація, наприклад, за умови , де  усереднене значення функцій належності для реалізацій класу , або видача повідомлення: «Клас не визначено», якщо с. Тут с  порогове значення.
^

6. КОРОТКИЙ ОПИС ПРОГРАМИ


Для програмної реалізації застосовувалося програмне середовище Borland Delphi 7.0.

Були використані наступні константи та змінні:

m = 3

Кількість класів розпізнавання

n = 250

Кількість ознак розпізнавання

nr = 250;

Кількість реалізацій

Y,BM:array[1..m,1..n,1..nr] of integer;

Навчальна матриця та бінарна навчальна матриця

EV : array [1..m,1..n] of integer;

Масив еталонних векторів

SK : array [1..2,1..nr] of integer;

Масив кодових відстаней від еталонного вектора до реалізацій

A,B,D1,D2,EM:array[1..m]of real;

Значення точносних характеристик та КФЕ при оптимальних параметрах навчання

D:array[1..m]of integer;

Оптимальні радіуси контейнерів класів навчання

PARA: array [1..m] of integer;

Кодова відстань між центрами класів навчання

VD, ND: array [1..n] of integer;

Система допусків на значення ознак розпізнавання

i,j,k:integer;

Лічильники

FT,FT_SKD:Text;

Дескриптори файлів вхідних даних


Крім того було розроблено наступні процедури та функції:

Function INFK;

Функція для розрахунку поточного значення КФЕ

Procedure LoadClass;

Процедура для завантаження навчальної матриці

Procedure MakeBM;

Розрахунок бінарної навчальної матриці

Procedure MakeDO;

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

Procedure MakeSD;

Процедура формування СКД на кожному кроці її оптимізації

Procedure MakeEV;

Розрахунок значень центрів контейнерів класів розпізнавання

Procedure MakePARA;

Розрахунок матриці кодових відстаней між центрами класів та знаходження найближчого.

Procedure MakeSK;

Розрахунок кодових відстаней між центрами класів та реалізаціями.

Procedure SaveClass;

Збереження отриманих результатів.



^

7. РЕЗУЛЬТАТ МОДЕЛЮВАННЯ


Навчальну матрицю формуємо з стаціонарних зображень розміром 250х250 (Рис. 2)



Рис. 2 – Вхідні данні

Для формування системи контрольних допусків використовувалась така процедура:

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

верхній допуск та ніжній допуски обчислювалися як відхилення від середини поля на ширину поля допусків (delta)

при навчанні використовувалася ширина поля в 51 одиниці.

Результати навчання подані в наступних таблицях та графіках.


Таблиця 1 - Матриця кодових відстаней між центрами контейнерів класів розпізнавання:




x1

x2

X3

x1

X

110

126

x2

110

X

112

X3

126

112

X




Рис. 3 Оптимізація радіуса контейнера 1 класу розпізнавання



Рис. 4 Оптимізація радіуса контейнера 2 класу розпізнавання



Рис. 5 Оптимізація радіуса контейнера 3 класу розпізнавання


На рис. 3-5 подано залежність критерію функціональної е

В результаті моделювання були визначені наступні оптимальні параметри контейнерів класів розпізнавання:


1 class

2 class

3 class

E

d

dc

D1

betta

E

d

dc

D1

betta

E

d

dc

D1

betta

0.35924

100

110

0,50

0,04

0.52623

108

110

0,87

0,08

0.23224

102

112

0,55

0,10


Перевірка ефективності системи проводилася на етапі екзамену. Для чого було сформовано таку множину реалізацій (рис. 6):



Рис. 6 – Екзаменаційна матриця


В результаті функція належності цих реалізацій до першого класу дорівнювала -0.16536, до другого 0.00015, до третього -0.11710. Таким чином, було встановлено належність цих реалізацій до другого класу.

ВИСНОВКИ


При виконанні курсової роботи була застосована прогресивна інформаційно-екстремальна інтелектуальна технологія проектування інтелектуальних СППР.

Результатом обчислень є класифікатори створені у вигляді роздільних гіперповерхонь для кожного з трьох класів розпізнавання. Оптимізація радіусів цих гіперповерхонь дозволила забезпечити максимум відповідних критеріїв оптимізації. Нажаль побудовані класифікатори не є безпомилковими, на що вказують значення точнісних характеристик і відносно невеликі значення критерію функціональної ефективності. Крім того, перевірка класифікаційних можливостей системи проводилась на етапі екзамену для екзаменаційної вибірки, сформованої з реалізацій різних класів.
^

СПИСОК ЛІТЕРАТУРИ


  1. Краснопоясовський А.С. Інформаційний синтез інтелектуальних систем керування: Підхід, що ґрунтується на методі функціонально-статистичних випробувань. – Суми: Видавництво СумДу, 2004. – 261с.

  2. Краснопоясовський А.С. Класифікаційний аналіз даних: Навчальний посібник. Суми: Видавництво СумДУ, 2002. 159 с.



^

ДОДАТОК (ТЕКСТ ПРОГРАМИ)


program Teach;


{$APPTYPE CONSOLE}


uses

Windows,

Messages,

SysUtils,

Variants,

Classes,

Graphics,

Controls,

Forms,

Dialogs,

ExtCtrls,

Grids,

StdCtrls,

ImgList,

Menus,

ComCtrls,

ExtDlgs;


const

m=3; {m=2;} {количество классов }

n=250; {n=15;}{признаков-столбцов}

nr=250; {nr=30;}{реализаций-строк}

var

Y,BM:array[1..m,1..n,1..nr] of integer;

VD,ND:array[1..n] of integer;

_VD,_ND:integer;

EV:array[1..m,1..n] of integer;

SK:array[1..2,1..nr] of integer;

A,B,D1,D2,EM:array[1..m]of real;

A_NWS,B_NWS,D1_NWS,D2_NWS,EM_NWS:array[1..m]of real;

D_NWS:array[1..m]of integer;

D:array[1..m]of integer;

PARA,dc:array[1..m] of integer;

i,j,k:integer;

FT,FT_EXM:Text;

FileName:string;

tdelta:integer;

ifsaveclasses:boolean;


Procedure LoadClass(num:integer);

var BMPClass:TBitmap;

begin

BMPClass:=TBitmap.Create;

Write('FileName for ',num,' class:(ENTER=',num,'.bmp) ');

Readln(FileName);

if FileName='' then FileName:=concat(inttostr(num),'.bmp');

BMPClass.LoadFromFile(FileName);

for j:=1 to nr do

for i:=1 to n do

Y[num,i,j]:=getRvalue(BMPClass.Canvas.Pixels[i,j]);

BMPClass.Destroy;

end;


{

Procedure LoadClass(num:integer);

begin

Write('FileName for ',num,' class:(ENTER=',num,'.txt) ');

Readln(FileName);

if FileName='' then FileName:=concat(inttostr(num),'.txt');

AssignFile(FT,FileName);

Reset(FT);

for j:=1 to nr do

for i:=1 to n do

Read(FT,Y[num,i,j]);

closefile(FT);

end;

}


Procedure MakeSD(delta:integer);

var sum:integer;

begin

for i:=1 to n do begin

sum:=0;

for j:=1 to nr do

sum:=sum+Y[1,i,j];

VD[i]:=round(sum/nr)+delta;

ND[i]:=round(sum/nr)-delta;

end;

end;

{

Procedure MakeSD;

begin

for i:=1 to n do begin

VD[i]:=_VD;

ND[i]:=_ND;

end;

end;

}


Procedure MakeBM;

begin

for k:=1 to m do

for i:=1 to n do

for j:=1 to nr do

if (Y[k,i,j]>=ND[i])and(Y[k,i,j]<=VD[i])then BM[k,i,j]:=1 else BM[k,i,j]:=0;

end;


Procedure MakeEV;

var sum:integer;

begin

for k:=1 to m do

for i:=1 to n do begin

sum:=0;

for j:=1 to nr do

sum:=sum+BM[k,i,j];

if sum/nr>=0.5 then EV[k,i]:=1 else EV[k,i]:=0;

end;

end;


Procedure MakePARA;

var sum,kc:integer;

begin

for k:=1 to m do

begin

para[k]:=1; dc[k]:=n;

for kc:=1 to m do

if (k<>kc)then begin

sum:=0; for i:=1 to n do sum:=sum+abs(EV[k,i]-EV[kc,i]);

if ifsaveclasses then

Write(sum,chr(9));

if sum<=dc[k] then begin para[k]:=kc; dc[k]:=sum; end;

end

Else if ifsaveclasses then Write('X',chr(9));

if ifsaveclasses then Writeln;

end;

end;


Procedure MakeSK(num:integer);

begin

for j:=1 to nr do begin

SK[1,j]:=0;SK[2,j]:=0;

for i:=1 to n do begin

SK[1,j]:=SK[1,j]+abs(EV[num,i]-BM[num,i,j]);

SK[2,j]:=SK[2,j]+abs(EV[num,i]-BM[PARA[num],i,j]);

end;

end;

end;


function INFK(t_:integer;var t_D1:real; var t_betta:real):real;

function log_(k1_log, k2_log: double): double;

begin

if (k1_log=0) then log_:=0

else log_:=(k1_log/(k1_log+k2_log))*(ln(k1_log/(k1_log+k2_log))/ln(2));

end;

var k1,k2,k3,k4:integer;

begin

k1:=0;k2:=0;k3:=0;k4:=0;

for j:=1 to nr do

begin

if sk[1,j]<=t_ then inc(k1);

if sk[2,j]<=t_ then inc(k3);

end;

k4:=nr-k3;

k2:=nr-k1;

t_D1:=k1/nr;

t_Betta:=k3/nr;

INFK:=1+0.5*(log_(k2, k4)+log_(k1, k3)+log_(k3, k1)+log_(k4, k2));{Шеннон}

{ INFK:=d1_b*ln((1+d1_b+0.1)/(1-d1_b+0.1))/ln(2);}{Кульбак}

end;


Procedure SaveClass(num:integer);

begin

Writeln(FT,'Class ',num);

Writeln(FT,'BM[',num,']');

for i:=1 to n do begin

for j:=1 to nr do

Write(FT,BM[num,i,j],chr(9));

Writeln(FT);

end;

Writeln(FT,'EV[',num,']');

for i:=1 to n do

Write(FT,EV[num,i],chr(9));

Writeln(FT);

Writeln(FT,'PARA[',num,']=',PARA[num]);

Writeln(FT,'dc[',num,']=',dc[num]);

Writeln(FT,'d',chr(9),'E',chr(9),'D1',chr(9),'Betta',chr(9),'Alfa',chr(9),'D2',chr(9),'K1',chr(9),'K2',chr(9),'K3',chr(9),'K4');

end;


Procedure MakeDO;

var te,tD1,tbetta:real;

t,ti:integer;

begin

AssignFile(FT_EXM,'REZ.TXT');

Rewrite(FT_EXM);

if ifsaveclasses then begin

for ti:=1 to n do

Write(FT_EXM,VD[ti],' ',ND[ti],chr(9));

Writeln(FT_EXM);

end;

for k:=1 to m do begin

if ifsaveclasses then begin

AssignFile(FT,'REZ'+inttostr(k)+'.TXT');

Rewrite(FT);

SaveClass(k);

end;

em[k]:=0;

em_NWS[k]:=0;

d[k]:=0;

MakeSK(k);

for t:=0 to n do begin

te:=INFK(t,tD1,tbetta);

if ifsaveclasses then

Writeln(FT,t,chr(9),te:0:5,chr(9),td1:0:3,chr(9),tbetta:0:3,chr(9),1-td1:0:3,chr(9),1-tbetta:0:3,chr(9),round(td1*nr),chr(9),round((1-td1)*nr),chr(9),round((1-tbetta)*nr),chr(9),round(tbetta*nr));

if te>EM_NWS[k] then begin EM_NWS[k]:=te;d_NWS[k]:=t;d1_NWS[k]:=td1;b_NWS[k]:=tbetta; end;

if (tD1>=0.5)and(tbetta<0.5)and(t
if te>em[k] then begin em[k]:=te;d[k]:=t;d1[k]:=td1;b[k]:=tbetta; end;

end;

end;

if ifsaveclasses then begin

Writeln(FT,'Class ',k,chr(9),'Em= ',em[k]:0:5,chr(9),'do= ',d[k],chr(9),'dc=',dc[k],chr(9),'D1= ',d1[k]:0:2,chr(9),'Betta= ',b[k]:0:2);

Writeln('Class ',k,chr(9),'Em= ',em[k]:0:5,chr(9),'do= ',d[k],chr(9),'dc=',dc[k],chr(9),'D1= ',d1[k]:0:2,chr(9),'Betta= ',b[k]:0:2);

Writeln(FT_EXM,k);

for ti:=1 to n do

Write(FT_EXM,EV[k,ti],' ');

Writeln(FT_EXM);

Writeln(FT_EXM,d[k]);

closefile(FT);

end;

end;

closefile(FT_EXM);

end;


begin

{ TODO -oUser -cConsole Main : Insert code here }

ifsaveclasses:=true;

Writeln('LOAD');

LoadClass(1);

LoadClass(2);

LoadClass(3);

Writeln('LOAD..Done');

Writeln('TEACH');


Write('delta =');

Readln(tdelta);

MakeSD(tdelta);


{

Write('ND =');

Readln(_ND);

Write('VD =');

Readln(_VD);

MakeSD;

}


MakeBM;Writeln('BM..Done');

MakeEV;Writeln('EV..Done');

Writeln('PARA');

MakePARA;Writeln('PARA..Done');

MakeDO;

Writeln('TEACH..Done');

Readln;


end.

program EXAM;


{$APPTYPE CONSOLE}


uses

Windows,

Messages,

SysUtils,

Variants,

Classes,

Graphics,

Controls,

Forms,

Dialogs,

ExtCtrls,

Grids,

StdCtrls,

ImgList,

Menus,

ComCtrls,

ExtDlgs;


const

m=3;

n=250;

nr=250;

var

Y,BM:array[1..n,1..nr] of integer;

VD,ND:array[1..n] of integer;

EV:array[1..m,1..n] of integer;

D:array[1..m]of integer;

i,j,k:integer;

FT_EXM:Text;

FileName:string;

ifsaveclasses:boolean;


Procedure LoadOPT;

var num:integer;

begin

Write('FileName for teach results:(ENTER=rez.txt) ');

Readln(FileName);

if FileName='' then FileName:='rez.txt';

AssignFile(FT_EXM,FileName);

Reset(FT_EXM);

for i:=1 to n do

begin

read(FT_EXM,VD[i]);

read(FT_EXM,ND[i]);

end;

{readln(FT_EXM);}

for k:=1 to m do

begin

readln(FT_EXM,num);

for i:=1 to n do

read(FT_EXM,EV[num,i]);

{readln(FT_EXM);}

read(FT_EXM,d[num]);

end;

Closefile(FT_EXM)

end;


Procedure LoadClass;

var BMPClass:TBitmap;

begin

BMPClass:=TBitmap.Create;

Write('FileName for exam:(ENTER= exm.bmp) ');

Readln(FileName);

if FileName='' then FileName:= 'exm.bmp';

BMPClass.LoadFromFile(FileName);

for j:=1 to nr do

for i:=1 to n do

Y[i,j]:=getRvalue(BMPClass.Canvas.Pixels[i,j]);

BMPClass.Destroy;

end;


{ Procedure LoadClass;

var fClass:textfile;

begin

Write('FileName for exam:(ENTER= exm.txt) ');

Readln(FileName);

if FileName='' then FileName:= 'exm.bmp';

AssignFile(fClass,FileName);

reset(fClass);

for j:=1 to nr do

for i:=1 to n do

read(fClass,Y[i,j]);

closefile(fClass);

end;}


Procedure MakeBM;

begin

for i:=1 to n do

for j:=1 to nr do

if (Y[i,j]>=ND[i])and(Y[i,j]<=VD[i])then BM[i,j]:=1 else BM[i,j]:=0;

end;


Function Mu(num:integer):real;

var sum:real;

sk:integer;

begin

sum:=0;

for j:=1 to nr do begin

SK:=0;

for i:=1 to n do

SK:=SK+abs(EV[num,i]-BM[i,j]);

sum:=sum+(1-sk/d[num]);

end;

mu:=sum/nr;

end;


procedure k_pr;

var mu_pr,t_pr:real;pr:integer;

begin

MakeBM;

mu_pr:=-nr;

pr:=0;

for k:=1 to m do begin

t_pr:=mu(k);

if t_pr>=mu_pr then begin mu_pr:=t_pr;pr:=k; end;

writeln('Class ',k,chr(9),'mu = ',t_pr:5:5);

end;

writeln('This is a member of ',pr,' class.');

end;


begin

{ TODO -oUser -cConsole Main : Insert code here }


ifsaveclasses:=true;

Writeln('LOAD');

LoadOPT;

Writeln('LOAD..Done');

Writeln('EXAM');

LoadClass(2);

k_pr;


Writeln('EXAM..Done');

Readln;


end.



Схожі:

Пояснювальна записка до курсової роботи з дисципліни: \"Системний аналіз та теорія прийняття рішень\" на тему: \"Оптимізація параметрів навчання системи прийняття рішень\" iconМетодичні вказівки до практичного заняття з навчальної дисципліни " Системи та методи прийняття рішень" на тему "
Методичні вказівки до практичного заняття з навчальної дисципліни “Системи та методи прийняття рішень” на тему “Оцінка функціональної...
Пояснювальна записка до курсової роботи з дисципліни: \"Системний аналіз та теорія прийняття рішень\" на тему: \"Оптимізація параметрів навчання системи прийняття рішень\" iconМетодичні вказівки до практичного заняття з навчальної дисципліни "Системи та методи прийняття рішень" на тему "
Методичні вказівки до практичного заняття з навчальної дисципліни “Системи та методи прийняття рішень” на тему “Оцінка функціональної...
Пояснювальна записка до курсової роботи з дисципліни: \"Системний аналіз та теорія прийняття рішень\" на тему: \"Оптимізація параметрів навчання системи прийняття рішень\" iconМетодичні вказівки до практичного заняття з навчальної дисципліни " Системи та методи прийняття рішень" на тему "
Методичні вказівки до практичного заняття з навчальної дисципліни “Системи та методи прийняття рішень” на тему “Розроблення алгоритму...
Пояснювальна записка до курсової роботи з дисципліни: \"Системний аналіз та теорія прийняття рішень\" на тему: \"Оптимізація параметрів навчання системи прийняття рішень\" iconМетодичні вказівки до практичного заняття з навчальної дисципліни "Системи та методи прийняття рішень"
Методичні вказівки до практичного заняття з навчальної дисципліни “Системи та методи прийняття рішень” на тему “Формування вхідного...
Пояснювальна записка до курсової роботи з дисципліни: \"Системний аналіз та теорія прийняття рішень\" на тему: \"Оптимізація параметрів навчання системи прийняття рішень\" iconМетодичні вказівки до виконаня та оформлення курсової роботи 3 дисципліни " Системи та методи прийняття рішень" для студентів заочної та дистанційної форм навчання
Методичні вказівки до виконання та оформлення курсової роботи з дисципліни “Системи та методи прийняття рішень” для студентів заочної...
Пояснювальна записка до курсової роботи з дисципліни: \"Системний аналіз та теорія прийняття рішень\" на тему: \"Оптимізація параметрів навчання системи прийняття рішень\" iconРобоча навчальна програма предмет психологія прийняття рішень
Мета курсу: сформувати у слухачів загальне уявлення про психологічні концепції ухвалення рішень, типи рішень, специфіку індивідуальних...
Пояснювальна записка до курсової роботи з дисципліни: \"Системний аналіз та теорія прийняття рішень\" на тему: \"Оптимізація параметрів навчання системи прийняття рішень\" iconВ. М. Дубовой, д т. н., проф.; О. О. Ковалюк, аспірант аксіоматична основа прийняття рішень в умовах комбінованої невизначеності
Анотація. Проведено аналіз основних аксіоматичних методів прийняття рішень. Запропоновану систему аксіом прийняття рішень в умовах...
Пояснювальна записка до курсової роботи з дисципліни: \"Системний аналіз та теорія прийняття рішень\" на тему: \"Оптимізація параметрів навчання системи прийняття рішень\" iconНазва модуля: Оптимізація прийняття рішень
Змістовна та формалізована постановки задачі прийняття рішень. Етапи прийняття рішень. Структура множини альтернатив. Методи та алгоритми...
Пояснювальна записка до курсової роботи з дисципліни: \"Системний аналіз та теорія прийняття рішень\" на тему: \"Оптимізація параметрів навчання системи прийняття рішень\" iconТести з дисципліни „Системи І методи прийняття рішень
Назвіть переваги використання в системах прийняття рішень байєсівського класифікатора
Пояснювальна записка до курсової роботи з дисципліни: \"Системний аналіз та теорія прийняття рішень\" на тему: \"Оптимізація параметрів навчання системи прийняття рішень\" iconТести з дисципліни „Системи і методи прийняття рішень" (на „задовільно")
Назвіть переваги використання в системах прийняття рішень байєсівського класифікатора
Додайте кнопку на своєму сайті:
Документи


База даних захищена авторським правом ©zavantag.com 2000-2013
При копіюванні матеріалу обов'язкове зазначення активного посилання відкритою для індексації.
звернутися до адміністрації
Документи