Краснопрошин Виктор Владимирович, доцент Кожич Павел Павлович Минск 2009 г. Оглавление Глава Введение. 4 Глава Анализ проблемы и постановка задачи. 5 1 задача

Вид материалаЗадача

Содержание


Глава 4. Описание программной системы.
4.2 Программная реализация базового алгоритма.
4.3 Средства настройки.
Глава 5. Эксперименты.
Глава 6. Заключение.
Предметный указатель к реферату
Интернет ресурсы в предметной области исследования.
Действующий личный сайт в WWW.
05.13.18 - Математическое моделирование, численные методы и комплексы программ
05.13.17 – теоретические основы информатики, физ.-мат.
01.01.05- Теория вероятностей и математическая статистика
05.13.11 - Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
Презентация магистерской диссертации.
Список литературы
Подобный материал:
1   2   3

Глава 4. Описание программной системы.

4.1 Общая архитектура и состав системы.


Созданная система состоит из 3 основных компонент:
  • Программная реализация алгоритма свёрточной нейронной сети.
  • Графический интерфейс для тестирования и анализа результатов работы свёрточной нейронной сети.
  • Графический интерфейс для использования алгоритма нейронной сети в практических целях (для распознавания человека по портретному изображению лица).

Компоненты представляют собой программные модули, написанные на языке программирования C# (платформа .NET). Для хранения нейронных сетей также может быть использована база данных (как альтернатива хранению в файлах).

Компоненты 2 и 3 являются независимыми и могут использоваться по отдельности. Для их работы необходим компонента 1. Для работы также необходимо наличие установленного фреймворка .NET 3.5 на ЭВМ.

Рассмотрим подробнее структуру и функциональность каждого компонента системы.

4.2 Программная реализация базового алгоритма.


При создании программной реализации основными целями было обеспечение наиболее возможной гибкости и модифицируемости. Поэтому было принято решение реализовать в ней абстрактный алгоритм функционирования свёрточной сети без привязки к конкретной задаче. При этом была обеспечена возможность конфигурации параметров и конфигурации сети при её использовании.

В результате был получен программный модуль, который может быть использован любым приложением, написанным на платформе .NET. Главной сущностью этого модуля является свёрточная нейронная сеть, предоставляющая следующие возможные операции:
  • задание параметров архитектуры сети: кол-во слоёв, их тип, кол-во нейронов и связей между слоями, размер входных и выходных данных;
  • инициализация сети случайными весами и случайными наборами связей в свёрточных слоях;
  • возможность сохранения сети в файл или базу данных;
  • возможность загрузки сети из файла или базы данных;
  • получение структурированной информации о внутреннем состоянии сети первую очередь, весах нейронов);
  • получение результата работа нейронной сети (в том числе на промежуточных этапах выполнения);
  • проведение цикла обучения (для этого вместе в исходными данными предоставляются также эталонные выходы).

Этот набор операций позволяет полностью контролировать процесс создания, обучения и использования нейронной сети для решения конкретных задач.

Алгоритм, реализованный в этом модуле, является описанным базовым алгоритмом, модифицированным при помощи добавления нормализации входных весов, задания порога торможения нейрона и введения обратных связей на основе анализа статистики.

4.3 Средства настройки.


Для проведения экспериментов, анализа результатов, а также упрощения настройки нейронной сети для конкретной задачи был создан графический интерфейс для тестирования. Он является стандартным Windows-приложением, работающим в оконном режиме.

Главной частью является меню, предоставляющее возможность сохранения, загрузки, инициализации нейронной сети. Также доступно обучение сети и тестирование результатов её работы на тестовой выборке.

В качестве изображений для тестирования и обучения могут быть использованы файлы основных графических форматов. При этом необходимо предварительно структурировать их расположение в файловой системе в соответствии с принадлежностью к классам.

Главное преимущество данной программы – визуальный показ весов нейронов сети и результатов её промежуточной работы.

Для этого используется монохромная картинка, где более светлым участкам соответствуют большие значения весов (признаков). При этом предварительно эти значения нормализуются для большей наглядности.




Рис. 4.1 Веса нейронов и результаты работы сети на разных слоях.


Таким образом, пользователь может посмотреть значения любого веса нейрона или признака для данного изображения. Более того, эта информация может быть использована для лучшей настройки параметров сети в случае конкретной задачи. Для этого визуально оценивается скорость изменения весов при обучении, разнообразие выделяемых признаков.

Для прикладного использования был разработана третья компонента. Данный модуль схож с тестирующим, однако акцент в функциональности сделан в сторону управления существующими сетями и наборами изображений. Графический интерфейс даёт возможность создавать новые сети, обучать их, управлять обучающими наборами изображений. При этом пользователь имеет возможность настройки всех основных параметров архитектуры сети (Рис. 4.2). Также он предоставляет возможность распознавания единичных изображений для проверки корректной работы после настройки сети.



Рис. 4.2 Создание новой свёрточной сети

Модуль предоставляет внешним программам интерфейс для распознавания изображений. Изображения передаются в виде набора пикселей или указывается имя файла. Таким образом, система может работать с некой программой, управляющей устройством для получения изображений.

Глава 5. Эксперименты.

5.1 Результаты.


Созданная система была протестирована для широкого спектра параметров настройки нейронной сети и вариаций её структуры. Большая часть экспериментов была проведена для базы ORL. Эта база является стандартной тестовой базой для алгоритмов распознавания и содержит средние по сложности изображения (Рис.5.1). Полученные результаты можно назвать удовлетворительными.



Рис. 5.1 Набор 10 изображений из одного класса.

Наиболее важными являются оценка степени улучшения точности алгоритма в результате модификаций.

В результате тестирования было установлено, что наибольший прирост точности предоставляет добавление нормализации на первом свёрточном слое. Нейроны первого слоя начинают реагировать на геометрические признаки изображения, что повышает точность (для некоторых сетей удалось достигнуть точности 95-97% для базы ORL).

Введение порога торможения для нейронов также положительно сказывается на результате. Маловажные признаки отбрасываются, что позволяет увеличить точность. Однако негативным моментом является искажение степеней уверенности в принадлежности изображения классам (иными словами, альтернативные варианты распознавания заглушаются).

Наконец, введение упрощённых обратных связей даёт весьма неоднозначный результат. Эффект зависит от конкретного набора изображений, и в некоторых случаях является негативным. Также эта модификация имеет тот же недостаток, что и предыдущая. Поэтому в конечной версии программы использование этих связей является опциональным и настраивается пользователем.

5.2 Выводы.


Модицированный алгоритм имеет хорошую точность распознавания (96-99% для базы ORL), причём скорость работы алгоритма позволяет использовать его в режиме реального времени. Высокая скорость позволяет использовать в качестве устройства ввода информации не только фото- но и видеокамеру, что даёт сильное увеличение точности распознавания (операция распознавания производится несколько раз, а затем принимается взвешенное решение). Это даёт широкую почву для дальнейших исследований в этой области, в частности, использование видеоряда не только при работе, но и при обучении нейронной сети.

Глава 6. Заключение.


В данной работе были проанализированы различные методы распознавания человека по изображению лица. С помощью реализации наиболее перспективных алгоритмов и их тестирования в качестве базового метода для решения поставленной задачи был выбран алгоритм свёрточной нейронной сети с вейвлетной предобработкой изображения.

По результатам тестирования этот алгоритм показал высокую (но не стопроцентную) точность. Путём анализа значений весов и выходов нейронов для обученной сети были выделены основные причины ошибок – неполная инвариантность алгоритма к степени яркости изображения и местоположению лица на изображении.

Для решения этих проблем были предложены различные пути решения. Была доказана польза нормализации входов первого свёрточного слоя нейронов и введение порогового значения для нейронов.

В качестве способа коренного улучшения работы алгоритма было предложено введение обратных связей в свёрточную нейронную сеть. После полноценного тестирования предложенных изменений первые два были оценены как эффективные.

На основе полученного модифицированного алгоритма была создана система распознавания человека по изображению лица, состоящая из трёх компонент, включающая в себе программу для тестирования алгоритма и графический интерфейс для прикладного использования.

В дальнейших исследованиях, мы планируем обратить внимание на использовании видеоинформации вместо фотографической, более глубокое внедрение обратных связей в архитектуру нейронной сети, а также испытать ассамблеи нейронных сетей для получения более надёжного алгоритма.

Предметный указатель к реферату



А


Адаптивный шаг обучения 16


В


Вейвлетное преобразование 15


Г


Гиперболический тангенс 11


М


Многослойный персептрон 12


Н


Нейронная сеть 11

Нормализация 18


С


Свёрточный слой 13

Интернет ресурсы в предметной области исследования.




  1. ссылка скрыта



  1. ссылка скрыта — сайт Высшей аттестационной комиссии Республики Беларусь. Здесь собраны все нормативные акты, касающиеся оформления и защиты диссертаций.
  2. ссылка скрыта — портал, посвящённый последним разработкам в области ИТ.
  3. ссылка скрыта — сайт с последними статьями, посвящёнными распознаванию лиц.
  4. ссылка скрыта — сайт о специальной программе по распознаванию лиц. Содержит большое количество материалов и баз данных изображений в предметной области.



Действующий личный сайт в WWW.



ссылка скрыта

Граф научных интересов.



Магистранта Тарасюка А.Е.

Факультет прикладной математики и информатики

Специальность «Прикладная математика и информатика»


Смежные специальности


01.01.09 - Дискретная математика и математическая кибернетика

  1. Теоpия функциональных систем, теоpия гpафов и комбинатоpный анализ, теория сложности вычислений, теоpия кодиpования и кpиптогpафия, теоpия pасписаний, теоpия очеpедей и массового обслуживания,  комбинаторная вычислительная геометрия.
  2. Вариационное исчисление, идентификация, наблюдение, управление и стабилизация динамических систем, методы оптимального управления, наблюдения и идентификации, оптимизация динамических систем в условиях неопределенности, робастная оптимизация, конструктивные методы решения задач вариационного типа и их приложения в механике, экономике и других областях естествознания.




05.13.18 - Математическое моделирование, численные методы и комплексы программ

Исследование и разработка методов и принципов построения математических моделей (аналитических, численных, имитационных), методик проведения вычислительных экспериментов на основе математических моделей, изучение свойств и обоснование адекватности математических моделей, а также методов математического моделирования сложных систем.




Основная

специальность


05.13.17 – теоретические основы информатики, физ.-мат.
  1. Исследование средствами вычислительной техники моделей информационных структур и информационных процессов, информационных потребностей индивидуальных и коллективных пользователей.
  2. Разработка и исследование математических методов и моделей' представления и обработки информации, анализа информационных структур. Выявление и математическое моделирование информационных процессов и логических слабо формализованных структур и методов управления ими.
  3. Математические и лингвистические модели и алгоритмы анализа и синтеза данных, знаний, текста, устной речи, изображений. Разработка основ математической теории языков и грамматик.




Сопутствующие

специальности


01.01.05- Теория вероятностей и математическая статистика
  1. Вероятностные пространства и случайные элементы.
  2. Статистика случайных процессов, полей и временных рядов.
  3. Вероятностно-статистическое моделирование.




05.13.11 - Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
  1. Разработка теории алгоритмов и программ, формальных языков, теоретических основ и методов математического моделирования вычислительных процессов, моделей и методов организации данных, знаний и структур, с целью создания вычислительных машин, комплексов, систем и сетей на основе новых принципов построения, организации и функционирования.
  2. Разработка прикладного математического и программного обеспечения для автоматизации обучения, проектирования вычислительных процессов и структур, расширяющих функциональные возможности и сферы применения ВМКСиС.






Презентация магистерской диссертации.



ссылка скрыта

Тестовые вопросы по Основам информационных технологий




Вопрос 1. Каким тегом оформляется упорядоченный список:
    • ,
    • ,
      1. ,
      2. ,

      Ответ: c).


      Вопрос 2. Целью создания XML было:
      1. обеспечение совместимости при передаче структурированных данных между разными системами обработки информаци, особенно при передаче таких данных через Интернет,
      2. замена языка HTML,
      3. разделение содержимого (написанного на HTML или другом языке разметки) и представления документа (написанного на XML),
      4. увеличение скорости передачи данных и их защищённости.

      Ответ: a).

      Список литературы



      [1] Головко В.А. Нейроинтеллект: Теория и применения. Книга 1. Организация и обучение нейронных сетей с прямыми и обратными связями - Брест:БПИ, 1999, - 260с.


      [2] Уоссермен Ф. Нейрокомпьютерная техника: Теория и практика, 1992 - 184 с.


      [3] Lawrence S., Giles C. L., Tsoi A. C., Back A. D. Face Recognition: A Convolutional Neural Network Approach // IEEE Transactions on Neural Networks, Special Issue on Neural Networks and Pattern Recognition, 1997. P. 1-24.


      [4] Wiskott L., Fellous J.-M., Krueger N and Malsburg C. Face Recognition by Elastic Bunch Graph Matching. IEEE Transactions on Pattern Analysis and Machine Intelligence 1997.


      [5] Grudin M. A., Lisboa P. J., Harvey D. M. Compact multi-level representation of human faces for identification. Image Processing and its Applications, pp. 111-115, 1997.


      [6] A Kukharev G., P. Masicz P., Masicz P.. Fast and Accurate Faces Localization using Gradient Method, 2003. P.1-7


      [7] D. S. Bolme. Elastic Bunch Gtaph Matching. 2003

      Приложение