- •І.А. Терейковський
- •2.1. Загальні положення 119
- •Список скорочень
- •Розділ 1. Теоретична оцінка ефективності застосування нейронних мереж в галузі захисту програмного забезпечення
- •1.1. Передумови застосування штучних нейронних мереж
- •1.2 Багатошаровий перспетрон.
- •1.3. Мережа з радіальними базисними функціями
- •1.4. Нейронні мережі, що самонавчаються
- •1.4.1. Базова модель
- •1.4.2. Топографічна карта Кохонена та її сучасні модифікації
- •1.5. Ймовірністні нейронні мережі
- •1.6. Рекурентні нейронні мережі
- •1.6.1. Загальні положення
- •1.6.2. Класичні асоціативні нейроні мережі
- •1.6.2.1. Мережа Хопфілда.
- •1.6.2.2. Мережа Хеммінга
- •1.6.2.3. Мережа Коско
- •1.6.2.4. Сфера використання, переваги та недоліки
- •1.7. Мережі адаптивної резонансної теорії
- •1.8. Мережі призначені для розпізнавання змісту тексту
- •1.9. Принципи розробки модельного програмного комплексу
- •1.10. Визначення доцільності застосування типу нейронної мережі
- •1.11. Перспективи практичного використання
- •Розділ 2. Практичне використання нейронних мереж в задачах захисту програмного забезпечення
- •2.1. Загальні положення
- •Розпізнавання вірусів та троянських програм створених за допомогою скриптових мов програмування.
- •Розпізнавання спаму.
- •2.2. Розпізнавання вірусів та троянських програм створених за допомогою скриптових мов програмування
- •2.2.1. Шляхи вдосконалення систем захисту від скриптових вірусів та троянських програм
- •2.2.2. Аналіз загальнопоширених методів розпізнавання
- •2.2.3. Формування множини вхідних параметрів
- •2.2.4. Особливості формування номенклатури вхідних параметрів при розпізнаванні скриптових троянів в фільмах Flash
- •2.2.5. Розробка архітектури та тестування нейронної мережі для розпізнавання скриптових поштових вірусів
- •2.3. Розпізнавання спаму
- •2.3.1. Визначення та загальна характеристика спаму
- •2.3.2. Недоліки сучасних методів розпізнавання спаму
- •2.3.3. Критерій фільтрації електронних листів
- •2.3.4. Задача порівняння рефератів за допомогою карти Кохонена та пружної карти
- •2.3.5. Використання мережі pnn для співставлення тематичної структури текстів електронних листів
- •2.3.6. Використання синаптичної нейронної мережі для підготовки вхідних даних
- •2.4. Використання нейронних мереж в системах активного захисту програмного забезпечення мережевих серверів
- •2.4.1. Концепція захисту програмного забезпечення Internet-серверів з використанням активної складової
- •2.4.2. Розробка архітектури нейронної мережі
- •Післямова
- •Список використаної літератури
2.3.5. Використання мережі pnn для співставлення тематичної структури текстів електронних листів
Алгоритм використання мережі PNN для вирішення конкретної задачі складається з таких етапів: 1 визначення номенклатури та допустимих величин вхідних параметрів, 2 підготовка навчальної вибірки, 3 нормування вхідних параметрів навчальної вибірки, 4 визначення кількості вхідних нейронів, нейронів шару образів та радіусу функції Гауса, 5 визначення кількості класів, яка відповідає кількості нейронів шару сумування, 6 навчання НМ, 7 розпізнавання невідомого вхідного образу.
Таким чином перед розпізнаванням невідомого образу необхідно сформувати множину вхідних параметрів (п.1-3), розробити архітектуру (п.4-5) та провести навчання мережі (п. 6). Подібно до мережі Кохонена та ПК вхідними параметрами мережі PNN при розпізнаванні спаму можуть бути частоти зустрічі в рефератах листів інформативних слів в канонічній формі та відносна кількість інформативних слів. Тому визначення вказаних параметрів доцільно реалізувати так, як це було зроблене для мережі Кохонена та ПК.
Розглянемо розробку архітектури та реалізацію навчання PNN. Об'єднання цих процедур пояснюється тим, що навчання мережі полягає в безпосередній обробці навчальних прикладів. Вхідні нейрони PNN відповідають певним інформативним словам із навчальних текстів та відносній кількості інформативних слів. Тому, кількість вхідних нейронів (N) дорівнює кількості унікальних інформативних слів плюс один. Унікальність інформативних слів означає можливу заміну декількох слів-синонімів одним словом. Кількість нейронів шару образів (L) відповідає кількості навчальних прикладів. У відповідності до рекомендацій [29, 34] встановимо величину радіусу функції Гауса =0,1. Шар сумування буде складатись із трьох нейронів, що відповідають класам цільових листів (C), спаму (S) та нейтральним листам (Q). Приклад структури мережі PNN, пристосованої для класифікації рефератів електронних листів показана на рис. 2.9.
ВЕ вихідний елемент
Рис. 2.9 Структура мережі PNN для класифікації електронних листів
Вагові коефіцієнти зв'язків між вхідними нейронами з номерами від 1 до N-1 та нейронами шару образів відповідають частотам інформативних слів в навчальних текстах. Наприклад, якщо частота зустрічі і-го слова в j-му тексті дорівнює 0,05, то ваговий коефіцієнт wi,j=0,05. Ваговий коефіцієнт зв'язку між N-им вхідним нейроном і будь-яким нейроном шару образів дорівнює відносній кількості інформативних слів в листі, яка розраховується за допомогою (2.13). Вагові коефіцієнти зв'язків між нейронами шару образів та сумування встановлюються в залежності до якого класу відноситься лист, що відповідає даному образу. Наприклад, якщо j-ий нейрон шару образів (j-ий лист) є спамом, то wjC =0, wjS =1 та wjQ =0. Функціонування мережі PNN в режимі розпізнавання описується (1.79-1.81). При цьому важливою відмінністю представленої НМ від класичної мережі PNN буде робота нейрону вихідного шару. Крім розпізнавання нейрону шару сумування з максимальним значенням активності, вихідний нейрон повинен розпізнавати ситуацію, коли нейрони шару сумування мають однаковий позитивний або нульовий рівень активності. Однаковий позитивний рівень активності може виникнути, якщо інформативні слова з однаковою ймовірністю зустрічаються в різних класах, наприклад в спамі і в цільових листах. Такий лист можливо класифікувати виходячи з презумпції невинності, тобто як нейтральний лист. Нульовий рівень активності всіх нейронів шару сумування відповідає відсутності інформативних слів невідомого образу, в навчальній вибірці. В цьому випадку можливо класифікувати образ, як нейтральний лист.
Особливістю реалізації розглянутої мережі повинна бути можливість додавання нових нейронів у вхідний шар і в шар образів. За рахунок цього НМ дістане можливість навчання на нових образах в процесі експлуатації. Відзначимо, що програмна реалізація не складає великих труднощів за рахунок використання об'єктно-орієнтованої технології створення програмного коду.
Розроблена архітектура мережі PNN та вирази (1.79-1.81) стали основою для розробки комп’ютерної програми, написаної на VBA і пристосованої для функціонування в середовищі MS Excel. Програма дозволяє визначити ймовірність віднесення невідомого вхідного образу (листа) до одного із класів мережі PNN, що задаються бібліотечними образами. Кількість класів задається користувачем та програмно не обмежена. Проведені числові експерименти по класифікації описаних в розділах 2.2.4, 2.2.5 рефератів електронних листів. Мережа навчалась на 49 навчальних прикладах, що вже були використані в експериментах з картою Кохонена та ПК. Кількість класів дорівнювала 3. До першого класу (цільових листів) віднесені листи за тематикою реклами промислових товарів, до другого класу (нейтральних листів) віднесені листи за тематикою реклами побутових послуг, до третього класу листи з запрошеннями на семінари. Після навчання PNN завжди достовірно проводила класифікацію невідомого листа. Наприклад, лист з рекламою систем відеонагляду з ймовірність 0,108 було класифіковано як цільовий, з ймовірністю 0,107 як нейтральний і з ймовірністю 0,106 як спам. Результати експериментів підтвердили доцільність використання PNN для класифікації електронних листів. Виявлена потенційна можливість якісного розділення листів більш ніж на три класи (спам, нейтральні та цільові листи), Таким чином можна представляти електронний лист не тільки з позиції “спамцільовий лист”, але й з точки зору тематики тексту.
