УДК 004.627
А. А. Тропченко, А. Ю. Тропченко
НЕЙРОСЕТЕВЫЕ МЕТОДЫ ИДЕНТИФИКАЦИИ ЧЕЛОВЕКА ПО ИЗОБРАЖЕНИЮ ЛИЦА
Рассмотрены нейросетевые методы распознавания человека по изображению лица, используемые в биометрических системах идентификации.
Ключевые слова: нейронные сети, распознавание личности, биометрические системы.
Введение. В настоящее время все более широкое распространение получают биометрические системы идентификации. Такие системы основываются на учете уникальных биологических характеристик человека, которые однозначно определяют его образ и являются трудно подделываемыми. К основным биометрическим характеристикам относятся отпечатки пальцев, форма ладони, узор радужной оболочки, изображение лица. Распознавание человека по изображению лица наиболее распространено в биометрических системах благодаря тому, что [1, 2]:
— не требуется специальное или дорогостоящее оборудование;
— не нужен физический контакт с какими-либо устройствами ввода данных.
Такие биометрические системы не обеспечивают высокой надежности идентификации, для этого требуется применять системы, использующие различные биометрические характеристики (так называемые мультимодальные системы).
При построении подобных биометрических систем целесообразно применять нейросе-тевые методы распознавания лица.
Нейронная сеть (НС) состоит из элементов, называемых формальными нейронами, каждый их которых элементарен по структуре и связан с другими нейронами. Каждый нейрон преобразует совокупность сигналов, поступающих к нему на вход, в выходной сигнал. Именно связи между нейронами, кодируемые весовыми коэффициентами, играют ключевую роль. Одно из основных преимуществ НС заключается в возможности параллельного функционирования ее элементов, что существенно повышает эффективность решения задачи. Обучение НС упрощает выбор ключевых признаков, их весовых коэффициентов и связей между ними. Рассмотрим особенности применения различных типов НС для распознавания человека.
Многослойные нейронные сети (МНС) состоят из последовательно соединенных слоев, нейрон каждого из которых своими входами связан со всеми нейронами предыдущего слоя, а выходами — последующего (рис. 1). Для активации таких нейронов служат разновидности линейных, пороговых и сигмоидных функций [3]. На рис. 1 представлена архитектура многослойной нейронной сети для распознавания изображений. Нейрон с максимальной активностью (цифра 1) указывает на принадлежность к распознанному классу.
НС с одним решающим слоем способна формировать линейные разделяющие поверхности, что значительно сужает круг решаемых задач, в частности, такая сеть не сможет решить задачу типа „исключающее или". НС с нелинейной функцией активации и двумя решающими слоями позволяет формировать любые выпуклые области в пространстве решений, а с тремя решающими слоями — области любой сложности, в том числе и невыпуклой. Обучение МНС осуществляется с помощью алгоритма обратного распространения ошибки. Такой алгоритм является разновидностью градиентного спуска в пространстве весов и обеспечивает минимизацию суммарной ошибки сети:
АЖ = -а
йЕ
Е=2 е (^ - о )2,
где у) — выходное значение у-го нейрона сети, ^ — эталонное значение выходов сети. Скорректированные значения весов передаются от входов к выходам. Алгоритм обратного распространения является ЖР-трудным, поэтому время обучения сети увеличивается экспоненциально с ростом размерности данных.
Входной (распределительный) псевдослой
Скрытые (промежуточные) слои
Входное изображение
ЫхМ Х2
Рис. 1
Поскольку эталонные значения выходов известны, такой алгоритм относится к классу методов обучения с учителем. Применительно к извлечению ключевых признаков, когда происходит обучение сети реконструкции поданного на вход изображения, на скрытых нейронах сети формируется сжатое представление такого изображения, что может быть отнесено к классу методов самообучения.
Инициализация МНС перед началом обучения производится случайным выбором весовых коэффициентов. Поэтому две разные обученные НС, обеспечивающие одинаковые значения ошибки, часто могут быть представлены различными разделяющими поверхностями, не сводимыми друг к другу. На этом основан метод коллективов (ансамблей) нейронных сетей, часто применяемый при распознавании по изображению лица: создается набор (коллектив) сетей, обученных решать одну и ту же задачу различными способами. Обобщенное, полученное таким методом решение точнее и надежнее, чем решение единственной нейронной сети.
Нейронные сети высокого порядка (НСВП) отличаются от МНС наличием одного слоя, на входы нейронов поступают также совокупности сигналов, которые могут рассматриваться как термы высокого порядка, являющиеся произведением двух или более компонентов входного вектора. Например, для сетей второго порядка такой вектор обеспечивает функционирование в соответствии с выражением [4]:
п п п
8 = Е ^х +ЕЕ ™ухх - т.
I=1 1=\ ]=\
Такие сети могут формировать сложные разделяющие поверхности, добавив компоненты входного вектора в произведение, получим класс полиномиальных разделяющих поверхностей. Сети также можно обучать по методу обратного распространения. Использование
МНС в общем случае эффективнее, но существует ряд приложений, в которых сети высокого порядка лучше.
Особенность НСВП заключается в том, что для распознавания некоторому классу достаточно предъявить обобщенный образ изображения без вариаций масштабов и поворотов. После обучения сеть будет распознавать известные классы инвариантно к масштабу и поворотам изображения. Такая сеть не является полносвязной, она характеризуется высокой обучаемостью и быстродействием. Точность классификации такой сетью различающихся масштабом и углом поворота изображений выше по сравнению с МНС [5, 6].
Радиально-базисные нейронные сети (РБНС) состоят из двух слоев (рис. 2). Первый слой описывается радиально-базисной активационной функцией:
У = ехр
'-£2 ^
V 2а2 У
где а — среднеквадратичное отклонение, определяющее размер кластера, £ — расстояние между вектором входных сигналов и сформированным вектором весовых коэффициентов Ж:
£2 =|Х - Ж\2 = £ (х - )2.
г
Значение £ определяет расстояние до центра кластера от исходного изображения на входе конкретного нейрона [7]. Второй (скрытый) слой представляет собой набор кластеров в пространстве образов и реализует первый этап кластеризации входного образа — значение акти-вационной функции каждого нейрона быстро уменьшается с удалением от центра кластера. Последующий слой нейронов может быть описан линейной активационной функцией, он реализует второй этап кластеризации — распределяет кластеры по классам.
Л
\
0
и«
'Щ
1Ы-
■12,1
Рис. 2
РБНС позволяют строить плохо разделяющиеся области и аппроксимировать многомерные функции. По сравнению с многослойной нейронной сетью РБНС обучается на порядок быстрее, однако обладает намного худшей экстраполирующей способностью, т.е. не способна распознавать образы, значительно отличающиеся от образов-эталонов. Размерность РБНС больше, чем МНС, предназначенных для решения аналогичных задач, поэтому эффективность РБНС уменьшается с ростом размерности входных данных [1, 7].
Обучение такой сети происходит в два этапа: на первом — без учителя: первый слой выделяет компактно расположенные группы кластеров, при этом происходит корректировка центров кластеров. На втором этапе второй слой учится распределять по классам входные образы, пропущенные через первый слой. Если известны эталонные значения выходов, обучение обеспечивается матричными методами или алгоритмом обратного распространения ошибки. Рассмотренные типы нейронных сетей — МНС и РБНС — позволяют учесть топологию пространства изображения. Их принципы работы основываются на разбиении
О
= ваздг/жсгмнш лейренн
затермр/кек-$ные нейрона
вхвФ —О =тррмезящий «тд
I_______[
Рис. 3
изображения на локальные области и иерархическом сопоставлении как их взаимного расположения, так и содержания. Такие сети наиболее перспективны для распознавания изображений.
Когнитрон. В основу функционирования когнитрона (рис. 3) положена модель зрительной коры мозга [4]. Каждый слой мозга реализует различные уровни обобщения — входной слой чувствителен к простым образам, таким как линии различной ориентации в плоскости, в то время как другие слои позволяют формировать более сложные, абстрактные и не зависящие от положения образы.
Каждый нейрон когнитрона связан только с локальной областью предыдущего слоя, причем области могут взаимно перекрываться. Слоев в ког-нитроне обычно больше, чем в сетях других типов, таким образом достигается иерархическая организация. Высшие слои когнитрона реагируют на выделенные абстрактные признаки, поэтому на распознавание в меньшей степени влияют смещение и искажение исходного образа.
Неокогнитрон. В зрительной коре мозга человека были обнаружены группы нейронов (узлы), реагирующие на такие элементы, как линии и углы определенной ориентации. На более высоком уровне узлы реагируют на более сложные и абстрактные образы — окружности, треугольники и прямоугольники. С увеличением уровня степень абстракции возрастает до тех пор, пока не сформируются узлы, реагирующие на лица и другие сложные объекты. В общем случае узлы последующих уровней получают на вход результаты обработки группы низкоуровневых узлов и, следовательно, реагируют на более широкую область визуального поля. Реакции высокоуровневых узлов более устойчивы к искажениям исходного образа.
Неокогнитрон более точно, по сравнению с когнитроном, отражает строение зрительной коры и позволяет распознавать образы независимо от их преобразований: смещения, вращения, изменения масштаба и искажения [4]. Неокогнитрон может как самообучаться, так и обучаться с учителем. На вход неокогнитрона поступают двумерные образы, аналогичные изображениям, сформированным сетчатой оболочкой глаза, и обрабатываются аналогично зрительной коре мозга человека.
Главное отличие неокогнитрона от когнитрона — двумерная организация локальных участков в виде иерархической структуры, состоящей из плоскостей (рис. 4).
Слои состоят из простых и сложных плоскостей. Каждый нейрон простой плоскости связан с локальным двумерным участком плоскостей предыдущего слоя, значения весовых коэффициентов всех нейронов в пределах одной плоскости одинаковы, и таким образом
Слей N-1 Ллеекгюяи сдржхш /слетех
Глеа /С
/Тлисгегти слржннх лх/ию
К плес/тестям ^прртых
¿•леаулщггр слм
Рис. 4
плоскость реагирует на определенный образ, находящийся в участке изображения (на рис. 4 плоскости реагируют на букву „С", вне зависимости от угла поворота). Местоположение активированного нейрона в простой плоскости определяет участок, в котором найден этот образ, независимо от его искажения.
Классический неокогнитрон является мощным средством распознавания изображений, однако требует больших, на сегодняшний день труднодостижимых, вычислительных затрат [4, 8, 9].
Сверточные нейронные сети (СНС). В классической многослойной нейронной сети межслойные нейронные соединения являются полносвязанными, изображение представлено в виде и-мерного вектора, не учитывающего ни двумерной локальной организации пикселов, ни возможностей деформации образа. Архитектура сверточной НС (рис. 5) позволяет преодолеть эти недостатки, в ней реализованы принципы архитектуры неокогнитрона, упрощенного и дополненного алгоритмом обучения с обратным распространением ошибки [8, 10].
Г[|[>и1 Ре айне гаяра РеаЬше тар9 РеоШгешарв Реайие тярз Оифш
2.>х28 20@21х2£ 20«! 11x13 25@9ж11 25@5х6 40@1х1
connected
Рис. 5
В СНС используются локальные рецепторные поля (обеспечивают локальную двумерную связность нейронов), общие весовые коэффициенты (обеспечивают детектирование отдельных черт лица, находящихся в любом фрагменте изображения) и иерархическая организация с пространственными подвыборками (Spatial subsampling).
СНС обеспечивает частичную устойчивость к изменениям масштаба, смещениям, поворотам, смене ракурса и прочим искажениям. Архитектура СНС многослойна. Слои подразделяются на два типа: сверточные (Convolutional) и подвыборочные (Subsampling), чередующиеся друг с другом. В каждом слое имеется набор из нескольких плоскостей, причем нейроны одной плоскости имеют одинаковые весовые коэффициенты, поступающие ко всем локальным участкам предыдущего слоя (как в зрительной коре человека), изображение предыдущего слоя „сканируется" небольшим окном и „взвешивается" набором весовых коэффициентов, а результат отображается на соответствующий нейрон текущего слоя. Таким образом, плоскости называются картами характеристик (feature maps), каждая из них выделяет „свои" участки изображения в любом месте предыдущего слоя. Следующий за сверточным подвыборочный слой уменьшает масштаб плоскостей за счет локального усреднения значений реакции слоя на выходах нейронов, таким образом достигается иерархическая организация СНС. Последующие слои извлекают более общие характеристики, меньше зависящие от искажений изображения [8].
Обучается СНС стандартным методом обратного распространения ошибки. Сравнение МНС и СНС показало существенные преимущества последней как по скорости, так и по надежности классификации. Полезным свойством СНС является и то, что характеристики, формируемые на выходах верхних слоев структуры, могут применяться для классификации по методу ближайшего соседа (например, при вычислении евклидова расстояния), причем СНС может успешно извлекать такие характеристики и для образов, отсутствующих в обучающем наборе. Для СНС характерны высокая скорость обучения и быстродействие.
Использование рассмотренных нейросетевых методов обеспечивает быстрое и надежное распознавание изображений. Однако применение этих методов к изображениям трехмерных объектов вызывает трудности, связанные с пространственными поворотами и изменением условий освещенности. Изображения при различных углах поворота объекта существенно различаются, при этом часть информации на изображении теряется и появляется новая информация, специфическая для данного угла.
Такая задача в общем виде для систем распознавания лиц еще не решена, но существуют методы, обеспечивающие решение отдельных ее аспектов (инвариантность к освещению, синтез повернутых в пространстве изображений лиц на основе обучения) [10—12].
список литературы
1. Панканти Ш., Болле Р. М., Джейн Э. Биометрия: будущее идентификации // Открытые системы. 2000. № 3 [Электронный ресурс]: <http://www.osp.ru/os/2000/03/>.
2. Foltyniewicz R. Efficient High Order Neural Network for Rotation, Translation and Distance Invariant Recognition of Gray Scale Images // Lecture Notes in Computer Science - Computer Analysis of Images and Patterns. 1995. P. 424—431.
3. Головко В. А. Нейроинтеллект: Теория и применение. Кн. 1. Организация и обучение нейронных сетей с прямыми и обратными связями. Брест: БПИ, 1999. 260 с.
4. Daughman J. Face and Gesture Recognition: Overview // IEEE Transactions on Pattern Analysis and Machine Intelligence. 1997. Vol. 19. P. 675—676.
5. Галушкин А. И., Томашевич Д. С., Томашевич Н. С. Методы реализации инвариантности к аффинным преобразованиям двумерных изображений // Приложение к журналу „Информационные технологии". 2001. № 1. С. 1—19.
6. Giacinto G., Roli F. Automatic Design of Multiple Classifier Systems by Unsupervised Learning // Lecture Notes in Artificial Intelligence - Machine Learning and Data Mining in Pattern Recognition. 1999. P. 131—143.
7. Головко В. А. Нейроинтеллект: Теория и применение. Кн. 2. Самоорганизация, отказоустойчивость и применение нейронных сетей. Брест: БПИ, 1999. 228 с.
8. Lawrence S., Giles C. L., Tsoi A. C., Back A. D. Face Recognition: A Convolutional Neural Network Approach // IEEE Transact. on Neural Networks, Special Issue on Neural Networks and Pattern Recognition. 1997. P. 1—24.
9. Ranganath S. and Arun K. Face recognition using transform features and neural networks // Pattern Recognition. 1997. Vol. 30. P. 1615—1622.
10. Santaji G., Jayshree G., Shamla M., Dhanaji G. Neural networks for facerecognition using SOM // IJCST. 2010. Vol. 1, Is. 2. P. 65—67.
11. Thai Hoang Le. Applying Artificial Neural Networks for Face Recognition // Hindawi Publishing Corporation, Advances in Artificial Neural Systems. 2011. Р. 673 016.
12. Saaidia M., Lelandais S., Vigneron V., El-Mouldi B. Face detection by neural network trained with Zernike moments // Proc. of the 6th WSEAS Intern. Conf. on Signal Processing, Robotics and Automation. Corfu Island, Greece, 2007. P. 36—41.
Сведения об авторах
Андрей Александрович Тропченко — канд. техн. наук, доцент; Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики, кафедра вычислительной техники; E-mail: zayka_98rus@mail.ru
Александр Ювенальевич Тропченко — д-р техн. наук, профессор; Санкт-Петербургский национальный
исследовательский университет информационных технологий, механики и оптики, кафедра вычислительной техники; E-mail: tau@d1.ifmo.ru
Рекомендована кафедрой Поступила в редакцию
вычислительной техники 08.02.12 г.