Магістр ДонНТУ Сова Ганна Олександрівна

   Сова Ганна Олександрівна

   Факультет комп'ютерних наук і технологій
   Спеціальність:
"Програмне забезпечення автоматизованних систем"
   Науковий керівник: доцент, к.т.н., Федяєв Олег Іванович


Реферат з теми випускної роботи

Розпізнавання облич людини за допомогою нейронної мережі типу неокогнітрон


Вступ

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

Актуальність

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

Наукова та практична важливість

Розробка та удосконалення моделі неокогнітрона знаходиться на дуже ранній стадії, тому кожний крок у її вдосконаленні є дуже важливим з наукової та практичної точки зору. Існуючі на даний момент моделі неокогнітрона, на превеликий жаль, є демонстративним посібником, тому що існуючі на сьогоднішній день комп'ютери не володіють такою продуктивністю, щоб бути повноцінним середовищем для роботи неокогнітрона. Зараз існує кілька методів, які дозволяють вирішити цю проблему шляхом оптимізації архітектури неокогнітрона [1, 2]. Дана робота присвячена розробці нейромережевого алгоритму, за допомогою якого можна буде виконувати швидке і точне розпізнавання вхідних образів обличчя людини з різним дозволом і ступенем викривлення. Так само буде проводитися аналіз ефективності функціонування неокогнітрона при зміні різних параметрів у системі. Крім того, буде виконано аналіз впливу різних факторів на якість розпізнавання обличчя людини.

Огляд досліджень неокогнітрона у ДонНТУ

Науковий і практичний інтерес до нейромережі типу неокогнітрон виник у зв'язку з розробкою систем розпізнавання мовних і графічних образів на кафедрі «Прикладна математика та інформатика» факультету комп'ютерних наук і технологій ДонНТУ. Роботи зі створення програмних моделей Неокогнітрон розпочаті на кафедрі в 2000 році і ведуться під керівництвом доцента Федяєва О.І. Великий внесок у вивчення принципів функціонування та навчання неокогнітрона, а також у розробку діючих програмних моделей внесли магістри Куликов С.А., Дрига К.В. і Махно Ю.С.

Обзор досліджень неокогнітрона у світі

Базова модель неокогнітрона була введена Фукушимою у 1980 році як розширення когнітрона - нейромережевого алгоритму, здатного розпізнавати складні образи. Неокогнітрон показав відмінні результати із розпізнавання образів, які були зсунуті в позиції, зашумлені, змінені у формі. Тим не менш, неокогнітрон не справлявся із завданнями розпізнавання образів, які були повернені на деякий кут, а процес розпізнавання займав досить тривалий час [1, 6].
Протягом багатьох років неокогнітрон удосконалився завдяки праці багатьох учених, наприклад, Уоссермана, Фрімана, Сакура та ін Так само було введено 2 моделі навчання неокогнітрона для розпізнавання вхідного образу:

  • навчання з учителем;

  • навчання без учителя.


Структура неокогнітрона

Неокогнітрон має ієрархічну структуру, орієнтовану на моделювання зорової системи людини. Він складається з послідовності шарів, які оброблюють (S-шар і С-шар), організованих в ієрархічну структуру. Вхідний образ подається на перший шар і передається через площини, які є відповідними наступним шарам до тих пір, поки не буде досягнуто вихідного шару, в якому ідентифікується розпізнаваний образ [1-4, 7, 8, 12].
Вхідний, сенсорний, шар неокогнітрона є прямокутним полем, яке складається з світлочутливих клітин. Кожен наступний шар складається з груп нейронів, причому нейрони однієї групи мають однакові ваги і розпізнають одні й ті ж частини образу. Ці нейрони утворюють так звані S-клітини, розташовані у відповідних S-шарах. S-клітини служать для виділення властивостей образів, що надходять з попереднього шару [6, 10, 11].
Виходи нейронів S-шару з'єднані з нейронами С-шару. Слід так само відзначити, що всі клітини в окремій площині, мають вхідні взаємозв'язки того ж самого просторового розподілу і тільки позиції попередніх клітин, від яких їх вхідні взаємозв'язку прибувають, зрушені паралельно. Ця ситуація проілюстрована на рисунку 1. Навіть у процесі навчання, в якому значення вхідних взаємозв'язків S-клітин різні, змінні взаємозв'язку завжди змінюються відповідно до цього обмеження [2, 4, 7, 9, 10].
Зв'язки, що з'єднують S-клітини і С-клітини одного модуля, є жорсткими і не змінюються в процесі навчання. Зв'язки, що з'єднують нейрони S-шару з нейронами попереднього С-шару, є змінними і можуть змінюватися в процесі навчання. S-клітина активізується тільки тоді, коли знайдений певний образ в точно визначеному місці попереднього шару. Образ, на який реагує клітина, визначається в процесі навчання [1, 3, 6, 10].

Входні зв'язки до нейронів у відповідних площинах

Рисунок 1 – Вхідні зв'язки до нейронів у відповідних площинах


На рисунку 2 наведена структура неокогнітрона, що складається з трьох модулів, утворених парами S і С шарів. Слід зазначити, що кількість шарів неокогнітрона залежить від складності розв'язуваної задачі тому мережа з великою кількістю шарів здатна розпізнавати більш складні зображення. Таке чергування шарів, при якому в шарі S виділяються основні ознаки зображення, а в шарі С відбувається корекція змін у зображенні, виявилося найбільш ефективним при синтезі систем розпізнавання образів, інваріантних до деформацій зображень [5, 8].


Ієрархічна структура неокогнітрона, яка зображує св'язки між шарами

Рисунок 2 – Ієрархічна структура неокогнітрона, яка зображує зв'язки між шарами


Таким чином, алгоритм розпізнавання образів за допомогою даної структури неокогнітрона виглядає наступним чином:


Алгоритм розпізнавання образів за допомогою неокогнітрона

Рисунок 3 – Алгоритм розпізнавання образів за допомогою неокогнітрона (анімація: обсяг - 39.4 КБайт, кількість кадрів - 6, кількість циклів повтору - 6, розмір - 393 х 608)


Клітини, які використовуються у неокогнітроні

Усі клітинки, які використовуються у неокогнітроні, мають аналоговий тип: тобто сигнали введення і виведення клітин беруть невід'ємні аналогові значення. Кожна клітинка має характеристики, аналогічні біологічному нейрону, якщо ми вважаємо, що сигнал виведення клітини відповідає миттєвій частоті обстрілу фактичного біологічного нейрона.
У неокогнітроні ми використовуємо чотири різних види клітин, тобто, S-клітини, С-клітини, Vs-клітини та Vc - клітини. Як типовий приклад цих клітин, ми спочатку обговоримо характеристики S-клітин.
Як показано на рисунку 3, S-клітина має багато вхідних терміналів, ексцитатних і забороняючих. Якщо осередок отримує сигнали з ексцитатних вхідних терміналів, вихід з клітини збільшиться. З іншого боку, сигнал із забороненого вхідного терміналу зменшить вихід. Кожен вхідний термінал має свій власний коефіцієнт з'єднання, чиє значення позитивно. Хоча клітина має тільки один термінал виведення, вона може посилати сигнали безлічі вхідних терміналів інших клітин. S-клітина має забороняюче введення, яке виробляє ефект шунтування. Нехай u(1), u(2) ... u(N) - ексцитатні входи, а v - забороняюче введення. Для розрахунку вихідного сигналу нейрона, який пригнічує використовується наступна формула:


Розрахунок вихідного сигналу пригнічуваючого нейрона (1)


де: v – вихід зупиняючого вузла;
i – область над всіма комплексними вузлами, із якими зв'язаний зупиняючий вузол;
bi – вага i-го зв'язку від ексцитатного вузла до зупиняючого вузла;
ui – вихід i-го ексцитатного вузла.
Ваги bi вибираються монотонно зі збільшенням відстані від центру області реакції, при цьому сума їх значень повинна дорівнювати одиниці.
Тоді вихід w цієї S-клітини визначено як:


Вихідне значення S-клітини (2)


де: a(i) та b представляють ексцитатні та забороняючі коефіцієнти з'єднання, відповідно. Коефіцієнт b розраховується за формулою (1) [7, 9, 10].
Функція визначається наступним рівнянням:


Рівняння для вихідної функції


Вхідна-вихідна характеристика із S-клітин

Рисунок 3 – Вхідна-вихідна характеристика із S-клітин


Нехай е - сума всіх ексцитатних вводів перемножена із коефіцієнтами з'єднання і h - забороняюче введення, помножене на коефіцієнт з'єднання; тобто:


Розрахунок коефіцієнтів для перетворення формули (2) (3)


Таким чином, ставлячи у рівняння (2) рівняння (3), його можна записати так:


Новий вигляд рівняння (2) (4)


Вхідний сигнал для нейронів С-шару визначається за формулою:


Вхідний сигнал для нейронів С-шару (5)


де si –вихідний сигнал простих нейронів;
ui – вагові коефіцієнти від простих нейронів до комплексних [5, 12].
Для нейронів комплексних шарів використовувалися різні функції активації.


Алгоритм навчання неокогнітрона

Для навчання неокогнітрона застосовувалася стратегія «навчання без вчителя». Налаштованим коефіцієнтами виступали коефіцієнти від нейронів комплексного шару до нейронів простого шару і коефіцієнт від нейрона, що пригнічує до нейрона простого шару. Коефіцієнти від комплексних нейронів до нейронів, що пригнічують і від простих нейронів до комплексних є фіксованими. У зв'язку з цим виникає задача визначення значень фіксованих коефіцієнтів. На самому початку передбачається, що значення коефіцієнтів повинні зменшуватися з віддаленням від центру області видимості.
Підчас налаштування вагових коефіцієнтів використовувалася проста формула розрахунку а, яка залежить від величини вхідних сигналів [1, 3, 5-7]. Формула розрахунку коефіцієнтів для нейрона заданого вектором n:


Формули для виведення ваги


Параметр a для вагового коефіцієнта нейрона, що пригнічує вибирається так, щоб процес навчання міг завершитися. З приводу формули, яку краще використовувати, немає єдиної думки. Тому досліджувалися наступні можливі два способи [2, 4, 7].
Перший спосіб опирався на форму:

Перший спосіб розрахунку вагового коефіцієнта


У цьому випадку коефіцієнт, що настроюється залежить тільки від центрального елемента попереднього шару. Це накладає деякі обмеження на розташування навчального образу, тобто образ повинен бути розташований так, щоб нейроном попереднього шару з максимальним збудженням був нейрон, який знаходиться в центрі області видимості. Таке обмеження накладається в силу того, що в іншому випадку в процесі навчання чисельник дробу, використовуваної при розрахунку входу на S-нейрон, буде рости швидше знаменника, що призведе до неможливості навчання [2, 4, 7, 9].
Другий спосіб опирався на формулу:

Другий спосіб розрахунку вагового коефіцієнта


У цьому випадку дельта залежить від виходу гальмуючого нейрона, а сам вихід гальмуючого нейрона залежить від всіх нейронів попереднього шару, з якими пов'язаний нейрон, що навчається.
Навчання неокогнітрона відбувається шар за шаром. При навчанні нейронів використовувався метод, при якому в кожній матриці навчається тільки один нейрон (зазвичай використовується центральний нейрон). Після завершення навчання вагові коефіцієнти цього нейрона переносяться на всі інші нейрони в цій матриці [1]. Таким чином, процес навчання проводиться досить швидко, тому що на кожному шарі необхідно навчити лише стільки нейронів, скільки матриць у даному шарі, а їх кількість зазвичай не перевершує 100 [2, 3, 7, 10].
Для навчання нейронів першого шару шаблон навчання записується на вхідному шарі і після цього починається навчання центральних нейронів кожної матриці. Після того, як перший шар навчений, переходять до навчання другого шару. Для цього необхідний образ записують на вхідному шарі, обчислюють виходи всіх нейронів першого простого шару, першого комплексного шару і на основі отриманих результатів (виходів нейронів першого комплексного шару) навчають нейрони другого простого шару. Для третього і наступних шарів все аналогічно (обчислення виходів нейронів на другому, третьому та інших шарах відбувається лише після запису шаблону навчання) [1, 3, 5, 10].
Нейрони останнього шару повинні бачити повністю вхідний образ, інакше втрачається сенс розпізнавання. Ця умова є обов'язковою, але, як показують дослідження, розмір рецептивного поля не обов'язково повинен стати рівним розміру вхідного зображення лише на останньому шарі, це може відбуватися і раніше.


Висновки

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

  • мала чутливість до основних змін, яким піддаються графічні зображення (перенесення, хаотичні шуми, зміна розташування);

  • навчання неокогнітрона відбувається за сприятливий час;

  • при навчанні кожен образ із вхідного набору необхідно подавати мінімальну кількість разів;

  • здатність вирішувати задачу розпізнавання графічних образів за короткий час;

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



Література

  1. Дрига К.В. Распознавание зашумлённых и искажённых образов с помощью неокогнитрона, сб. трудов Международной студенческой научно-практической конференции “Информатика и компьютерные технологии”. – Донецк, ДонНТУ, 15 декабря 2005. – с.233-234.

  2. Махно Ю.С. Программный эмулятор нейросети типа неокогнитрон для распознавания графических образов, Научн. тр. Донецкого национального технического университета, серия „Информатика, кибернетика и вычислительная техника” (ИКВТ-2008), выпуск 9(132) – Донецк: ДонНТУ, 2008. – с.265-269.

  3. Уоссермен Ф. Нейрокомпьютерная техника. Теория и практика. – М.: Мир, 1992. – 260.

  4. Fukushima K.: Neocognitron for handwritten digit recognition. Tokyo University of Technology, Tokyo, Japan – 2002. – Р. 161-170.

  5. Freeman J., Skapura D. Neural Networks. Algorithms, Applications and Programming Techniques. // Addison-Wesley. – 1991. – P. 373-392.

  6. Satoh S., Aso H., Miyake S., Kuroiwa J.: Pattern Recognition System with Top-Down Process of Mental Rotation //Proc. of IWANN'99, 1. – 1999. – P. 816-825.

  7. Fukushima K.: Neocognitron capable of incremental learning. Tokyo University of Technology, Tokyo, Japan – 2003. – Р. 37-43.

  8. Fukushima K. Neocognitron: a self-organising neural network for mechanism of pattern recognition unaffected by shift in position. Biological Cybernetics 36, 1980, pp. 193-202.

  9. Fukushima K., Miyake S. Neocognitrot: a new algorithm for pattern recognition tolerant of deformations and shifts in position. NHK Broadcasting Science Reserch Laboratories, 1981, pp. 455-469.

  10. Fukushima K. Analysis of the Process of Visual Pattern Recognition by the Neocognitron, Osaka University, 1988, pp. 413-420.

  11. Fukumi, Omatu S. and Nishikawa Y., Rotation-Invariant Neural Pattern Recognition System Estimating a Rotation Angle, IEEE, Trans., Neural Network, 8, 1997, pp. 568–581.

  12. Shunji Saton, Jousuke Kuroiwa, Hirotomo Aso , Shogo Miyake Recognition of rotated patterns using neocognitron. , IEEE, Trans., Neural Network, 9, 1997, pp. 588–597


Важливе зауваження
Підчас написання даного автореферату магістерська робота ще не була завершена. Остаточне завершення: грудень 2011 р. Повний текст роботи та матеріали за даною темою можуть бути отримані у автора або його керівника після вказаної дати.