Програмні засоби моделювання модульних нейронних мереж та їх використання
Методика теорії представлення модульних нейронних мереж у вигляді орієнтованих графів для формального опису довільних архітектур. Теоретичне обґрунтування методу заміни циклів в графовій моделі. Дослідження структури програмного комплексу NeuroLand.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | автореферат |
Язык | украинский |
Дата добавления | 30.07.2014 |
Размер файла | 45,8 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru
Размещено на http://www.allbest.ru
Вступ
Актуальність теми. Штучні нейронні мережі є порівняно новим засобом обробки даних, що набув широкого практичного використання при вирішенні таких задач як прогнозування в сфері фінансів, керування процесами та контролю якості продукції у виробництві, діагностики в медицині та техніці, аналізу стану довкілля і т. ін. За останні два десятиріччя створено сотні комерційних нейропрограм, призначених для вирішення різноманітних прикладних задач. Промислово виробляються десятки типів нейрочипів та нейроакселераторів, які використовуються в апаратних нейрокомп'ютерах різного призначення.
З розширенням сфери застосування нейрокомп'ютерів виявились обмеження існуючих нейропарадигм. Стало очевидним, що подолати обмеження можливо лише шляхом декомпозиції складних задач на більш прості часткові задачі, вирішувані окремо. Для цього мережі доцільно мати модульну архітектуру, нейронні модулі які вирішують різні часткові задачі спільного завдання. Перші модульні нейронні мережі створені понад 10 років тому, діяли за принципом колективу експертів (Jordan и Jacobs, 1994р). Пізніше було запропоновано більш складні форми взаємодії нейронних модулів. Інтенсивні дослідження в цьому напрямку тривають, і зараз відомо багато експериментальних моделей модульних нейромереж (Sharkey, Zhao, Wanas, Giacinto, Roli і т.д.).
Використання модульних мереж стримується двома взаємопов'язаними чинниками. Першим є відсутність програмних засобів інтерактивного моделювання модульних нейронних мереж довільної архітектури. Існуючі програмні продукти допускають одночасне використання в складі модульної системи нейромереж лише одного типу, що суттєво обмежує їх застосування, оскільки в багатьох випадках різні частини складного завдання відрізняються за характером даних та цільових функцій і потребують застосування різнотипних модулів. Тому створення засобів моделювання модульних мереж, з різними алгоритмами обробки даних є вкрай актуальною задачею.
Другим чинником є відсутність ефективних засобів формального представлення архітектури модульних нейромереж. Дослідження в цьому напрямку протягом останніх років проводяться у відділі нейротехнологій ІПММС НАНУ, де запропоновано підхід до моделювання модульних нейронних мереж за допомогою орієнтованих графів. Застосування розроблених моделей дозволяє удосконалити програмні засоби проектування модульних нейромереж, доповнити їх алгоритмами автоматичного аналізу модульних архітектур на несуперечність, що є особливо актуальним для проектування складних гібридних структур, які містять цикли.
Отже маємо проблему вдосконалення модульних нейромереж за рахунок створення науково-методичних засад та розробки алгоритмічної бази автоматизованого проектування багатомодульних нейросистем. Тому тема дисертації є актуальною.
Мета і задачі дослідження. Метою роботи є розробка і дослідження алгоритмічних основ автоматичного аналізу довільних модульних архітектур для програмних комплексів моделювання нейронних мереж, створення програмних інструментальних засобів та експериментальна перевірка теоретичних результатів і розробка методики застосування таких комплексів при вирішенні складних задач класифікації.
Для досягнення поставленої мети необхідно вирішити такі задачі:
- розвиток теорії представлення модульних нейронних мереж у вигляді орієнтованих графів для формального опису довільних архітектур;
- дослідження властивостей циклів у модульних мережах та їх теоретичне обґрунтування;
- розробка алгоритмів аналізу модульних архітектур;
- розробка алгоритмів автоматичного керування потоками даних у модульних архітектурах, що містять цикли;
- реалізація розроблених алгоритмів у системі з лінійною організацією модульної архітектури;
- розробка методів використання і застосування запропонованих алгоритмів у програмних комплексах проектування модульних мереж;
- дослідження архітектур та кооперативного навчання модульних мереж;
- розробка програмних інструментальних засобів для моделювання модульних нейромереж;
- розробка та апробація методики застосування модульних нейронних мереж для вирішення багатопараметричних задач класифікації.
1. Огляд сучасного стану робіт в галузі модульних нейронних мереж
Модульний підхід, добре відомий у різних галузях науки і техніки, в останні роки почав застосовуватись для вирішення складних задач за допомогою нейронних мереж. Про це свідчить постійне зростання числа задач, які вирішуються за допомогою модульних нейронних мереж. Основними перевагами використання модульних мереж у порівнянні з одномодульними є такі: можливість поділу складної задачі на більш прості завдання; можливість вибору найбільш ефективних методів вирішення кожного завдання; зменшення складності нейронної мережі, що формує кінцевий результат; скорочення загального часу навчання мережі; можливість апроксимації складних функцій (зокрема, розривних).
Розглянуті в роботах модульні архітектури можна розділити на неповнозв'язні, в яких модульність моделюється за допомогою нейронних мереж з неповними зв'язками, та мережі, що складаються з окремих модулів. Неповнозв'язні архітектури більш придатні для застосування генетичних алгоритмів і еволюційних методів. Однак при вирішення складних задач у просторах з великою розмірністю більш ефективними виявляються модульні мережі, що складаються з кількох окремих модулів.
За існуючою загальною класифікацією модульні нейронні мережі поділяються на ансамблеві та власне модульні, відповідно до поділу функціональності між підпорядкованими модулями. При ансамблевій організації мережі всі модулі вирішують ту ж саму задачу, відрізняючись лише типом, архітектурою, навчаючою вибіркою тощо. При власне модульній організації кожен модуль виконує своє окреме завдання.
Метою більшості досліджень ансамблевих нейромереж є створення ансамблю, ефективність якого була б більшою, ніж у його складових. Розроблено багато методів комплектування ансамблю, створено моделі ансамблевих мереж, які успішно використовувались для вирішення прикладних задач. Експериментально підтверджено, що включення до ансамблю мереж різного типу поліпшує якість класифікації або точність інтерполяції порівняно із застосуванням одномодульних нейронних мереж. Але досі не вирішеною залишається проблема вибору дійсно різних незалежних нейронних модулів для створення ансамблевої архітектури.
Власне модульні архітектури нейронних мереж базуються на принципі поділу складної задачі на більш прості завдання, кожне з яких може вирішуватись найбільш ефективним методом. Розрізняють чотири типи архітектури модульних нейронних мереж (рис. 1):
Рис. 1. Архітектури модульних нейронних мереж
1) пірамідальна. При такій архітектурі рішення, прийняте вихідним модулем, будується на основі комбінації часткових рішень, прийнятих підлеглими модулями. Цей підхід є найбільш розповсюдженим і, можливо, найбільш ефективним;
2) конкурентна. Робота мережі ґрунтується на тім, що так званий шлюзовий модуль чи дерево таких модулів вибирає одне з рішень, прийнятих підлеглими модулями;
3) послідовна. У цій архітектурі модулі поєднуються послідовно й утворюють ланцюжок;
4) керуюча. Один чи кілька модулів використовуються для керування роботою підлеглих модулів, зокрема, при навчанні.
Застосування модульних архітектур дозволяє досягти більш високої якості рішення у порівнянні як з одномодульними мережами, так і з мережами ансамблевої архітектури. Однак за відсутності попередніх знань про задачу і структуру вхідного простору створити ефективну модульну архітектуру часто не вдається. Взагалі побудова власно модульної мережі є більш складним процесом, ніж мережі ансамблевої архітектури, і, на відміну від останньої, суттєво залежить від характеру розв'язуваної задачі.
На теперішній час запропоновано і випробувано багато різних архітектур і методів побудови модульних мереж. Одержані результати переконливо свідчать за те, що модульні нейронні мережі здатні вирішувати набагато складніші задачі, ніж звичайні одномодульні. Але залишається безліч питань, які потребують подальшого дослідження та вирішення. До таких належать проблеми керування потоками даних у багатомодульних мережах, питання синхронізації процесів навчання модулів мережі, способи вирішення протиріч у модульних архітектурах. При створенні прикладних багатомодульних систем ці питання виходять на перший план і для їх вирішення необхідно мати базову модель процесів в модульній мережі, яка б дозволяла створювати ефективні алгоритми роботи з нейронними модулями. Таку базову математичну модель на основі теорії графів запропоновано у відділі нейротехнологій ІПММС НАНУ. Задачами даного дисертаційного дослідження є подальший розвиток та конкретизації цієї моделі до рівня алгоритмів роботи з модульними архітектурами, а також реалізація та апробація одержаних теоретичних результатів при створенні прикладних багатомодульних нейросистем.
2. Графова модель модульної нейронної мережі
Модульна мережа може бути описана за допомогою орієнтованого графа , вершини якого відповідають модулям мережі, а ребра - зв'язкам між модулями. Такий граф містить два віртуальних модуля, що представляють входи і виходи всієї модульної мережі. Вхід мережі визначається умовою: , де - кількість ребер, що є вхідними до вершини. Відповідно для виходу: , де - кількість ребер, що є вихідними з вершини.
Умовами того, що орієнтований граф G представляє модель модульної мережі, є такі:
1. Граф G - слабко зв'язний.
2. Граф G не має кратних ребер.
3. У графі G існує єдина вершина вхід і будь-яка вершина є досяжною з входу: , отже .
4. У графі G існує єдина вершина вихід і вихід є досяжним з будь-якої вершини: , отже, .
Визначення 2.1: Проекцією вершини (модуля) на вершину (модуль) будемо називати такий орієнтований підграф графа , що включає всі можливі ланцюги w(b,a) з b в a:
,
тобто, у підграф входять вершини і відповідні ребра всіх ланцюгів з b в a, крім самої вершини a. (На відміну від прийнятого в теорії графів, ми визначатимемо шлях w з вершини a у вершину b, як множину вершин і з'єднуючих їх ребер, виключаючи кінцеву вершину.)
Поставимо у відповідність вершині параметр такий, що якщо виходи відповідного модуля мережі на даному кроці ще не обчислені, і , якщо модуль уже полічений.
Визначення 2.2: Невизначеністю вершини a будемо називати суму:
.
Введене поняття невизначеності служить критерієм для перевірки модульних архітектур на несуперечність. За його допомогою визначається послідовність роботи модулів мережі.
Аксіома 2.1: З двох модулів мережі, за інших рівних умов, першим має бути полічений модуль з меншою невизначеністю (якщо порядок рахунку модулів не визначений спеціальними вимогами).
За відсутністю циклів, порядок обчислення модулів мережі є очевидним. При наявності циклів, коли порядок роботи модулів не визначено умовами розв'язуваної задачі, в роботі мережі можуть виникати протиріччя.
Визначення 2.3: Циклом з початковою вершиною a називатимемо такий орієнтований підграф графа модульної мережі , що включає всі можливі шляхи w(a,a) з вершини a в саму себе:
.
Позначимо довжину шляху w.
Визначення 2.4: Початковою вершиною f циклу називатимемо таку вершину, для якої . Кінцевою вершиною l циклу будемо називати вершину, для якої .
Введемо визначення двох типів циклів, принципово важливих з погляду перерахування модульних мереж.
Визначення 2.5: Звичайним циклом з початковою вершиною a будемо називати такий цикл , для якого не існує жодної пари вершин, таких, що вони належать проекціям одна одної на вхід:
.
Перехресним циклом з початковою вершиною b називатимемо цикл , що містить хоча б одну пару вершин, які входять у проекції одна одної на вхід.
У розділі розглянуто властивості циклів і доведено теореми про властивості звичайних циклів, необхідні для побудови алгоритмів роботи з модульною мережею.
Теорема 2.1: Для будь-яких двох вершин a і b циклу завжди існує проекція P(a,b) і ця проекція цілком належить циклу:
.
Теорема 2.2: (Теорема единості звичайного циклу) Якщо звичайний цикл існує, то початкова вершина цього циклу може бути обрана тільки одним способом. (А отже, на даному наборі вершин звичайний цикл визначається єдиним способом).
Теорема 2.3: У звичайному циклі існує тільки одна вершина, що зв'язана вхідними ребрами з вершинами поза циклом, і ця вершина є початковою:
.
Показано, що у звичайному циклі проекція початкової вершини на входи не містить жодної вершини циклу, і що для будь-якої вершини звичайного циклу всі ланцюги від входів містять початкову вершину.
Обробка даних за допомогою модульної нейронної мережі припускає, що послідовність обчислення модулів відома. Наведені вище визначення та теореми призначені для виведення правил автоматичної побудови послідовностей обчислення модулів при заданій архітектурі мережі, а також для контролю архітектур, створених користувачем.
Визначення 2.6: Чергою Q(G) називатимемо таку нумерацію графа G(V,E), тобто відображення , де N - число вершин графа (модулів мережі), що:
.
Черга визначає можливий порядок обчислення модулів мережі відповідно до Аксіоми 2.1. Умова буде гарантовано виконуватися, якщо користуватись тривіальною процедурою побудови черги: 1) Поставити в чергу модуль з нульовою невизначеністю. 2) Розглядаючи поставлений у чергу модуль як уже полічений, обчислити невизначеність для модулів, які ще не поставлені у чергу. 3) Якщо є модулі з нульовою невизначеністю, повернутися до п. 1.
Визначення 2.7: Дозволеною називатимемо чергу, яку можна побудувати за допомогою тривіальної процедури, а дозволеними архітектурами модульних мереж такі архітектури, для яких можна побудувати дозволену чергу.
В роботі доведено, що будь-яка архітектура без циклів є дозволеною і запропоновано алгоритм побудови черги. Введено поняття "метавершини", що дозволяє за аналогічним алгоритмом будувати черги для архітектур з циклами, замінюючи кожний цикл графової моделі мережі метавершиною. Запропоновано метод заміни циклів графової моделі мережі метавершинами і розкриття метавершин в окремі модульні мережі для незалежного аналізу. На основі даного методу доведена.
Теорема 2.4: (Теорема про дозволені архітектури). Для того, щоб архітектура модульної мережі, яка містить цикли, була дозволеною, необхідно і достатньо, щоб граф мережі містив тільки звичайні цикли.
Запропоновано шляхи вирішення конфліктів у модульних мережах, які містять перехресні (в тому числі тригерні) цикли. Також у даному розділі розглянуто алгоритми аналізу модульних мереж, що дозволяють визначати наявність циклів, виділяти належні їм вершини та визначати типи знайдених циклів. Доведено коректність роботи запропонованих алгоритмів.
3. Розробка програмних нейрокомп'ютерів з лінійною модульною архітектурою
Розглянуто комплекс NeuroLand, який дозволяє моделювати модульні нейронні мережі з заданою лінійною організацією модулів, що забезпечує роботу в режимі реального часу. Переважна більшість існуючих програмних нейрокомп'ютерів допускають роботу лише у режимі "off-line" і тому непридатні для вирішення прикладних задач, які потребують роботи в реальному часі.
Структура програмного комплексу NeuroLand зображена на рис. 2. До нього входять шість функціональних підсистем, які відображають послідовність етапів технологічного процесу проектування нейросистеми:
1. Проект - забезпечує формування нейросистеми, що проектується. 2. Конвертер - виконує читання вхідних даних. 3. Препроцесор - здійснює підключення і налагодження модулів попередньої обробки даних. 4. Конструктор - формує архітектуру нейронної мережі і налагодження її параметрів. 5. Сценарій - координує роботу всіх підсистем, запускає основні процеси нейронної мережі: навчання, тестування і прогін, здійснює зв'язок з інтерфейсом користувача. 6. Постпроцесор - виконує підключення і настроювання модулів постпроцесорної обробки вихідних даних.
Рис. 2
Програма NeuroLand призначена для моделювання нейронних мереж двох класів: прямого поширення (Feed Forward) і нейромережевої асоціативної пам'яті (Associative Memory).
При розробці комплексу NeuroLand були впроваджені основні теоретичні положення другого розділу дисертаційного дослідження. Нейрокомп'ютер забезпечує повний цикл обробки даних, і користувач має можливість побудови необхідного ланцюжка обробки, включаючи довільний набір препроцесорів, нейронну мережу і набір постпроцесорів. Наявність достатнього набору блоків кожного з типів дозволяє забезпечити рішення широкого кола задач.
Програма NeuroLand використовувалася як базовий нейрокомп'ютер при розробці цифрової технології розпізнавання запахів у системі "Електронний ніс", створюваної за програмою INTAS "Smart sensors for field screening of air pollutants".
У задачі розпізнавання запахів сигнали, що надходять на входи нейронної мережі, являють собою набори послідовностей вимірів резонансної частоти QSM (Quartz Crystal Microbalance) сенсорів запаху. Хімічний образ складається із сигналів 6 сенсорів, які вимірюються щосекунди протягом близько 300 сек. В обробці хімічних образів ключовим є етап препроцесингу. Метою дослідження було з'ясування можливості поліпшення навчання нейронної мережі розпізнаванню реакцій сенсорів запаху при нелінійному перетворенні вхідних даних, зокрема за допомогою фільтра максимумів. Одночасно ставилася задача оцінки ступеня інформативності різних ділянок реакції сенсорів.
Для задачі розпізнавання використовувалась наступна послідовність модулів обробки даних: препроцесор, що забезпечує поділ вхідних даних на навчальну та тестову послідовності, необхідні для процедури крос-валідації; препроцесор нормування вхідних даних; препроцесори фільтру максимумів та медіанного фільтру та власне нейронна мережа (персептрон з одним схованим шаром, що навчався за алгоритмом Back Propagation). Всі препроцесори, що використовувались, були розроблені спеціально для поставленої задачі.
Результати експериментів підтвердили припущення про поліпшення навчання нейронної мережі при використанні фільтра максимумів і нелінійному нормуванні реакцій QSM сенсорів запаху. Поліпшення складало до 5% і досягалось для мережі з 5-ма прихованими нейронами, при досить вузькому вікні спостереження (3 сек.) та використанні лише початкової ділянки реакції сенсорів (перші 50 сек.). Це непоганий результат, оскільки досягнення тих самих показників без нелінійного перетворення потребувало застосування втричі більшої мережі (15 прихованих нейронів) при вп'ятеро довшому спостереженні реакції сенсорів (280 сек.)
Жорстко задана лінійна організація модулів, реалізована в нейрокомп'ютері NeuroLand, добре підходить для задач, у яких ключовим етапом є препроцесинг даних, як у задачі розпізнавання запахів. Однак лінійні модульні нейронні мережі часто не дають необхідної якості розпізнавання для задач зі складними просторами ознак, при неоднорідних даних навчального масиву т. ін. Вирішення задач такого типу вимагає введення модульності не тільки на рівні основних компонентів нейрокомп'ютера, а і на рівні самої нейронної мережі.
4. Методика створення програмних інструментальних засобів моделювання модульних нейромереж довільної архітектури на прикладі розробки системи автоматизованого проектування модульних нейронних мереж (САПР МНМ), призначеної для проектування нейросистем довільної архітектури, яка дозволяла б підключати модулі користувача та мала засоби контролю архітектури та керування потоками даних
До складу САПР МНМ входять дві підсистеми, функціонування яких відповідає графовій моделі модульної нейронної мережі: підсистема конструктора CAD, призначена для створення багатомодульної архітектури та підсистема графічного інтерфейсу користувача GUI, що використовується для контролю і керування процесом навчання модульної мережі.
Підсистема CAD аналізує введену користувачем модульну архітектуру на несуперечність, та відповідність умовам зв'язності і досяжності, які накладено на граф модульної мережі. Використовуючи розроблені в розділі 2 алгоритми, CAD перевіряє наявність циклів та їхній тип. Вкладені цикли знаходяться шляхом заміни усіх виявлених циклів метавершинами.
Після аналізу мережі на наявність і тип циклів, CAD визначає, чи є введена архітектура дозволеною відповідно до визначень розділу 2. САПР МНМ містить систему попереджень, яка повідомляє користувачу про тип і місце виявлених суперечностей в архітектурі мережі. Після усунення всіх суперечностей керування передається підсистемі GUI, яка дозволяє користувачеві визначати процеси навчання та тестування модулів.
Основним механізмом координації роботи модульної нейронної мережі при навчанні і тестуванні є черга - послідовність модулів із вказівкою функцій, які вони мають виконувати. Використання черг модулів та їхніх функцій дозволяє задавати довільний потік даних для навчання модульної мережі.
Існує два підходи до організації навчання модульних мереж. За першим, стандартним, всі нейронні модулі, що входять до складу модульної мережі, навчаються окремо і незалежно. При другому підході, так званому кооперативному навчанні, всі нейронні модулі навчаються одночасно. В САПР МНМ реалізовано два режими навчання - одиночний та модульний. При одиночному режимі користувач сам визначає нейронні модулі, які мають навчатись, У модульному режимі навчається відразу вся модульна мережа. Навчання в обох режимах може бути як незалежним, так і кооперативним.
При незалежному навчанні в одиночному режимі користувач вибирає послідовність навчання модулів, а система перевіряє відповідність побудованих черг аксіомі 2.1. При такому навчанні новий модуль може навчатися тільки в тому випадку, якщо всі модулі в його проекції на входи вже навчені. При модульному режимі роботи черги для обчислення та навчання будуються автоматично за алгоритмами, розробленими в розділі 2. При відсутності в мережі циклів порядок постановки в чергу визначається аксіомою 2.1. Якщо при аналізі архітектури модульної мережі виявлені цикли, але архітектура є дозволеної, то послідовності перерахування і навчання модулів мережі визначаються за алгоритмом заміщення циклів метавершинами.
Для пірамідальних модульних мереж розглядаються такі способи навчання:
- незалежне навчання - коли складові модульної мережі навчаються окремо;
- поширення помилки між модулями - коли помилка вихідного модуля поширюється в зворотному напрямку і визначає функцію помилки підлеглих модулів;
- кооперативне навчання - коли навчання складових модулів визначається впливом деякої зовнішньої функції помилки, яка може залежати від функції помилки модуля і модульної мережі в цілому.
При побудові класифікаторів використовуються нейронні мережі, що навчаються з вчителем, найчастіше - багатошаровий персептрон (MPL).
При індивідуальному навчанні модулів використовується сигнал помилки ?, визначений для кожної мережі модульного класифікатора. Для i-го нейрона останнього шару MPL із правилом навчання back-propagation сигнал помилки визначається як:
,
де Y - реальний вихід мережі; O - очікуваний вихід, Е - помилка на виході мережі; f' - похідна активаційної функції нейрона; T - поріг.
У методі поширення помилки між модулями для навчання підлеглих модулів використовується сигнал помилки що поширюється від входів вихідного модуля до виходів підлеглих:
,
де i - номер виходу підлеглого модуля S; j - індекс нейрона першого прихованого шару вихідної мережі F; W - вага зв'язку прихованого шару.
Кооперативне навчання дозволяє визначати різні зовнішні функції помилки для підлеглих модулів. У даній роботі використано найпростіше правило навчання, яке для багатошарового персептрону в ролі підлеглого модуля має вигляд:
,
де індекс F визначає вихідну мережу, а індекс S - підлеглий модуль.
Експериментальне дослідження для вибору найбільш ефективних конфігурацій модульного класифікатора проводилось на прикладі рішення задачі керування повітряними подушками безпеки автомобіля. Нейронна мережа виконувала класифікацію локаційних сигналів ультразвукових датчиків і визначала, в яких випадках слід блокувати роботу подушок.
Були досліджені різні типи ансамблевих архітектур та власне модульних архітектур, які розрізнялись за способом декомпозиції задачі на поділ по датчиках або поділ на підзадачі по класах рішень.
Найстабільніші результати було одержано для модульних класифікаторів, побудованих на основі поділу вхідних сигналів від різних датчиків. Близькі результати було отримано і для ансамблевих мереж, тому їх можна використовувати при відсутності апріорних даних для природної декомпозиції задачі. Без спеціальної оптимізації і використання архітектур, спеціалізованих під задачу, ансамблеві і модульні класифікатори забезпечують кращі результати, ніж одномодульні нейронні мережі. Зменшення помилок класифікації складає від 10% до 30%, в залежності від характеру вхідних даних.
Експериментальне дослідження різних методів навчання проводилося для ансамблевих і модульних архітектур різних типів. Для розглянутої задачі індивідуальне і кооперативне навчання дає приблизно однакові результати. Трохи гірші результати одержано при використанні методу поширення помилки між модулями. Незважаючи на те, що в експериментах, які були проведені, індивідуальне навчання показало більш стабільні результати, використання кооперативного навчання значно знижує часові витрати (у 1,5 рази) при близьких результатах класифікації, тому може бути більш ефективним.
5. Застосування модульної нейронної мережі для класифікації типу пасажира автомобіля по зображенню, одержаному за допомогою відеокамери, розташованої в салоні
Класифікація проводиться на 4 класи: порожнє сидіння; дорослий пасажир; дитина; дитяче сидіння, що поставлене передньою або задньою частиною до лобового скла. Такий поділ зумовлений тим, що критерії для прийняття рішень про відкриття подушки безпеки для різних класів ситуації відрізняються.
В експериментах були використані дані, надані фірмою Automotive Technologies International. Система розроблялася для двох автомобілів - Durango і Ford Taurus. Масиви даних складалися з чорно-білих зображень, розміром 320х240 пікселів. Для Durango масив містив 2.6M зображень, а для Ford Taurus - 0.5M зображень. Для навчання нейронних мереж використовувались попередньо оброблені зображення. Попередня обробка виконувалась за алгоритмом виділення контурів, який враховував перепади яскравості в горизонтальному та вертикальному напрямках. На вхід нейронної мережі надходили нормовані значення максимального перепаду яскравості у вікні по кожному напрямку, з урахуванням напрямку перепаду. Виділення контурів проводилось на бінарному зображенні.
Оскільки система є оптичною, то вхідні вектори нейронної мережі залежать від часу доби. Тому було висунуто припущення, що поділ системи на денну і нічну дозволить спростити навчання і поліпшити якість класифікації.
Для класифікації використовувалась модульна мережа з поділом за класами рішень. Підлеглими модулями були мережі прямого поширення, що навчались за алгоритмом Extended-Delta-Bar-Delta (EDBD). Як фінальний модуль використовувалась аналогічна нейромережа. Обидві підсистеми - денна та нічна мали однакову структуру.
Була проведена оптимізація складових модулів мережі з використанням модуля оптимізатор САПР МНМ.
Результати оптимізації (відсоток правильно класифікованих зображень) подані в табл. 1. Літерами BC позначено нейронну мережу, що навчалася на даних для дорослого пасажира, дитини та дитячого сидіння, що поставлене передньою частиною до лобового скла, BD - на даних для дорослого та дитячого сидіння, що поставлене задньою частиною до лобового скла, СD - на даних для дитини та дитячого сидіння, а ES - на даних для порожнього сидіння.
Параметри фінального модуля також оптимізувались.
Була обрана мережа з архітектурою 4х6х4 яка використовувалась як в денній, так і в нічній підсистемах.
Таблиця 1. Якість класифікації при оптимізації модулів (на повному масиві даних)
без підсистем |
с підсистемами освітленості |
|||||||||
нічна підсистема |
денна підсистема |
|||||||||
net size |
train |
test |
net size |
train |
test |
net size |
train |
test |
||
BC |
192х21х1 |
98,75 |
98,77 |
192х19х1 |
99,00 |
98,94 |
192х10х7х1 |
98,67 |
98,60 |
|
BD |
192х21х1 |
99,49 |
99,46 |
192х15х7х1 |
99,39 |
99,30 |
192х15х10х1 |
99,40 |
99,35 |
|
CD |
192х21х1 |
99,66 |
99,68 |
192х17х1 |
99,72 |
99,65 |
192х7х5х1 |
99,51 |
99,45 |
|
ES |
192х7х1 |
99,75 |
99,74 |
192х2х1 |
99,80 |
99,82 |
192х2х1 |
99,70 |
99,65 |
Для порівняльної оцінки якості класифікації використовувалась одномодульна нейронна мережа (EDBD).
Найкращий варіант цієї мережі показав такі результати: відсоток правильних відповідей на масиві Train - 98,43%, на масиві Test - 97,31% і 96,37% на повному масиві даних. Результати класифікації модульних мереж на повному масиві даних представлені в таблиці 2.
Таблиця 2. Результати класифікації на повному масиві даних
без |
підсистем |
з підсистемами |
||
логіка |
ніч |
98,85% |
99,08% |
|
день |
98,64% |
97,90% |
||
total |
98,75% |
98,49% |
||
нейронна |
ніч |
98,81% |
98,85% |
|
мережа |
день |
98,76% |
98,47% |
|
total |
98,79% |
98,66% |
Результати класифікації для обох систем і типів фінальних модулів дуже близькі. Однак більш стабільними виявилися результати для модульної мережі без підсистем освітленості. Якість класифікації модульної мережі з нейронним фінальним модулем дещо вище, ніж для мережі з логічним модулем.
Тестування розроблених систем в реальних умовах (на автомобілі) підтвердили більш стабільну роботу мережі без підсистем освітленості. Однак така система виявилась залежною від зміни положення камери та різкої зміни освітлення.
З огляду на те, що процес формування масивів даних для навчання нейронних мереж є надто ресурсномістким, вивчалось питання мінімізації обсягу таких масивів.
Було експериментально доведено, що без істотного погіршення якості класифікації достатнім є використання даних, одержаних для 6 (з 23-х) пасажирів з різним кольором шкіри та для 4-х дитячих сидінь (з 17).
Результати експериментів для автомобіля Durango було використано при створенні подібної системи для автомобіля Ford Taurus. Було удосконалено архітектуру модульної мережі, у якій мережі першого рівня одержували дані тільки від одного алгоритму виділення ознак, а в фінальному модулі використовувалась мережа EDBD.
Попередню обробку зображень було модифіковано: використовувались контури зображення, значення яскравості у вікнах; гістограми відстаней від краю вікна до границі. Це дозволило одержати такі експериментальні результати: для ночі - 99,52%, для дня - 99,48%, на повному масиві даних - 99,5% правильних відповідей. Результати тестування на автомобілі показали, що така система виявляється більш стійкою до зсуву камери та різкої зміни освітлення.
Порівнюючи розроблену оптичну систему з системою на основі ультразвукової локації, розглянутою у розділі 4, можна відзначити, що незважаючи на різницю між характером даних та очікуваних рішень, принципи побудови таких багатомодульних систем цілком збігаються.
Це дає підстави вважати, що застосування модульних нейронних мереж в системах обробки даних дозволяє не тільки значно спростити процес створення таких систем, але і значною мірою формалізувати його.
Висновки
модульний нейронний програмний граф
Головним результатом дисертаційної роботи є створення науково-методичних засад та розробка алгоритмічної бази автоматизованого проектування багатомодульних нейросистем, а також практична реалізація одержаних автором теоретичних результатів в створених прикладних нейросистемах. В процесі дослідження автором одержано такі основні результати:
1. Розвинуто графову модель модульної мережі як апарат для моделювання та дослідження модульних нейромереж. Запропоновано представлення, що забезпечує можливість автоматизації загального аналізу архітектур модульних мереж. Визначено умови, за яких орієнтований граф може описувати довільну модульну мережу.
2. Досліджено загальні властивості циклів в модульних мережах. Доведено теореми про єдиність означення звичайних циклів модульної мережі та загальні властивості циклів графової моделі модульної мережі.
3. Запропоновано алгоритми аналізу та обчислення модульних мереж, що містять цикли, шляхом заміни останніх метавершинами. Доведено, що для того, щоб архітектура модульної мережі з циклами була дозволеною, необхідно і достатньо, щоб граф мережі містив тільки звичайні цикли. Запропоновано шляхи вирішення протиріч у модульних мережах, що містять перехресні цикли.
4. Розроблено підсистему мереж прямого розповсюдження програмного нейрокомп'ютера NeuroLand, який дозволяє моделювати модульні нейронні мережі з лінійною організацією, орієнтованою на роботу в режимі "run-time". Створено та експериментально апробовано лінійку модулів препроцесінгу для вирішення задач класифікації запахів.
5. Розроблено програмні інструментальні засоби для моделювання та аналізу модульних нейромереж.
6. Розроблені моделі модульних нейронних мереж і методи їх аналізу реалізовано при створенні системи автоматизованого проектування багатомодульних нейронних мереж САПР МНМ.
7. Вперше експериментально досліджені методи кооперативного навчання модульних нейронних мереж. Показано, що використання кооперативного навчання в 1,5 рази знижує часові витрати в порівнянні з індивідуальним при близьких результатах класифікації.
8. Розроблено і експериментально випробувано методику використання програмних комплексів моделювання модульних нейронних мереж при вирішенні багатопараметричних задач класифікації. Доведено експериментально переваги модульних мереж на прикладі задачі керування повітряними мішками безпеки пасажирів автомобіля. Одержані результати використовуються фірмою ATI Inc. (США).
Література
1. Галинская А.А. Архитектура и обучение модульных классификаторов для прикладных задач // Математические машины и системы.-2003. -№ 2. -С.77-86.
2. Галинская А.А. Модульные нейронные сети: обзор современного состояния разработок// Математические машины и системы.-2003. -№ 3,4. -С.87-102.
3. Куссуль М.Э., Галинская А.А. О свойствах циклов в модульных нейронных сетях // Математические машины и системы. - 2005.- №2.- С.54-63.
4. Куссуль М.Э., Галинская А.А. "Разрешенные" и "запрещенные" архитектуры модульных сетей // Математические машины и системы. - 2005.- №3.- С. 24-35.
5. Kussul M., Galinskaya A. Graph representation of modular neural networks // Proc. of the XI International Conference “Knowledge - Dialog - Solution” KDS 2005. - Varna, Bulgaria. - 2005. - 20-24 June.
6. Kussul M., Galinskaya A. Comparative study of modular classifiers and its training // Proc. of the X-th International Conference “Knowledge - Dialog - Solution” KDS 2003. - Varna, Bulgaria. - 2003. - 16-26 June. - P.168-174.
7. Резник А.М., Калина Е.А., Садовая Е.Г., Дехтяренко А.К., Сичов А.С., Галинская А.А. Комп'ютерна програма для моделювання нейронних мереж та проектування прикладних нейросистем "NeuroLand", Свідоцтво про реєстрацію авторського права на твір №6169. Міністерство освіти і науки України, Державний департамент інтелектуальної власності, 9 вересня 2002.
Размещено на Allbest.ru
Подобные документы
Застосування нейронних мереж при вирішенні різних технічних проблем. Архітектура штучних нейронних мереж. Дослідження штучного інтелекту. Гіпотеза символьних систем. Представлення за допомогою символів. Синтаксичний та семантичний аналіз розуміння мови.
курсовая работа [985,8 K], добавлен 14.01.2010Часовий ряд як сукупність значень будь-якого показника за декілька послідовних моментів або періодів часу. Знайомство з методами для прогнозування часового ряду за допомогою штучних нейронних мереж. Розгляд головних задач дослідження часового ряду.
контрольная работа [1,1 M], добавлен 14.09.2014Навчання штучних нейронних мереж, особливості їх використання для вирішення практичних завдань. Рецепторна структура сприйняття інформації. Перцептрон як модель розпізнавання. Задача моделювання штучної нейронної мережі з розпаралелюванням процесів.
дипломная работа [2,8 M], добавлен 24.07.2013Характеристика інструментів MatLab - пакету прикладних програм для числового аналізу. Основні функції та можливості програмного комплексу. Скриптова мова програмування. Побудова моделі штучної нейронної мережі за допомогою команди NNTool та її тестування.
лабораторная работа [215,8 K], добавлен 11.06.2015Особливості архітектури комп'ютерних мереж. Апаратні та програмні засоби комп'ютерних мереж, їх класифікація та характеристика. Структура та основні складові комунікаційних технологій мереж. Концепції побудови та типи функціонування комп'ютерних мереж.
отчет по практике [1,2 M], добавлен 12.06.2015Ознайомлення із загальною структурою системи автоматичного розпізнавання мовлення. Визначення особливостей нейронних мереж. Дослідження та характеристика процесу побудови системи розпізнавання мовлення. Вивчення специфіки прихованої моделі Маркова.
дипломная работа [1,1 M], добавлен 25.07.2022Вимоги до програмного виробу та функціональних характеристик. Опис інтерфейсу програмного виробу, процедур і функцій. Мережі зі зворотним розповсюдженням. Алгоритм навчання з вчителем (алгоритм зворотного розповсюдження багатошарових нейронних мереж).
курсовая работа [1,1 M], добавлен 20.01.2009Загальні відомості та характеристика локальних обчислювальних мереж. Огляд мережевих архітектур: Ethernet, Token Ring, ArcNet. Підключення мережі за технологією Ethernet. Різноманітне активне мережеве обладнання: повторювач, концентратор, комутатор.
дипломная работа [3,2 M], добавлен 03.10.2014Історія досліджень, пов’язаних з розпізнаванням образів, його практичне використання. Методи розпізнавання образів: метод перебору, глибокий аналіз характеристик образу, використання штучних нейронних мереж. Характерні риси й типи завдань розпізнавання.
реферат [61,7 K], добавлен 23.12.2013Визначення найкращого режиму роботи системи обробки повідомлень. Представлення моделі у вигляді системи масового обслуговування. Визначення структури моделі. Обмеження на зміну величин. Програмна реалізація імітаційної моделі. Оцінка адекватності.
курсовая работа [153,9 K], добавлен 29.01.2013