Научная статья на тему 'Оптимизация параметров нейронной сети неокогнитрон для распознавания символов государственных регистрационных знаков'

Оптимизация параметров нейронной сети неокогнитрон для распознавания символов государственных регистрационных знаков Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
142
18
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
НЕОКОГНИТРОН / НЕЙРОННЫЕ СЕТИ / ОПТИМИЗАЦИЯ / МАШИННОЕ ОБУЧЕНИЕ / ГОСУДАРСТВЕННЫЕ РЕГИСТРАЦИОННЫЕ ЗНАКИ ТРАНСПОРТНЫХ СРЕДСТВ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Кангин Дмитрий Николаевич, Куров Андрей Владимирович

Исследована нейронная сеть неокогнитрон Фукусимы. Описаны методы определения пороговых значений, измерений слоев, параметров ядра функции Гаусса, используемого для вычисления выходных значений слоев. Предложены методы оптимизации параметров. В результате исследования достигнут коэффициент распознавания тестовой выборки 97%.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Оптимизация параметров нейронной сети неокогнитрон для распознавания символов государственных регистрационных знаков»

УДК 004.93

Д. Н. К а н г и н, А. В. Куров

ОПТИМИЗАЦИЯ ПАРАМЕТРОВ НЕЙРОННОЙ СЕТИ НЕОКОГНИТРОН ДЛЯ РАСПОЗНАВАНИЯ СИМВОЛОВ ГОСУДАРСТВЕННЫХ РЕГИСТРАЦИОННЫХ ЗНАКОВ

Исследована нейронная сеть неокогнитрон Фукусимы. Описаны методы определения пороговых значений, измерений слоев, параметров ядра функции Гаусса, используемого для вычисления выходных значений слоев. Предложены методы оптимизации параметров. В результате исследования достигнут коэффициент распознавания тестовой выборки 97%.

E-mail: dkangin@gmail.com, avkur7@mail.ru.

Ключевые слова: нейронные сети, неокогнитрон, оптимизация, машинное обучение, государственные регистрационные знаки транспортных

средств.

В настоящее время в различных областях науки и техники актуальны задачи распознавания образов.

Согласно [1] задача распознавания образов заключается в разбиении многомерного (в общем случае) пространства на области, соответствующие заданным категориям, или классам.

Существуют различные методы распознавания образов: искусственные нейронные сети (далее нейронные сети) [1], методы с использованием фурье-дескрипторов [2, 3], топологические дескрипторы [4, 5], байесовы классификаторы, деревья решений и множество других. Однако несмотря на достигнутые в данной области результаты, поиск методов решения задачи распознавания образов продолжается вследствие повышения производительности ЭВМ, возрастающих требований к результатам распознавания, а также появления новых приложений теории распознавания образов.

Частным случаем задачи распознавания образов является задача распознавания изображений. Она может быть решена как общими, так и специализированными методами с учетом требований к анализу и обработке изображений.

Одна из специализированных нейронных сетей — сеть неокогни-трон, применяемая для распознавания изображений. В данной работе исследуется нейронная сеть неокогнитрон на примере распознавания государственных регистрационных знаков (ГРЗ) транспортных средств (ТС). Обоснование выбора данной нейронной сети приводится далее.

Важными характеристиками методов распознавания изображений служат условия соблюдения инвариантности результатов распознавания относительно:

• линейных преобразований системы координат (переноса, поворота);

• перспективного преобразования;

• наличия шума на изображении.

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

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

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

Задача распознавания ГРЗ в свою очередь состоит из нескольких подзадач:

1) выделение ТС из входного изображения;

2) выделение ГРЗ из изображения, содержащего ТС;

3) сегментация и разбиение на символы выделенного изображения ГРЗ;

4) распознавание типа и символов ГРЗ.

Подзадачи 1, 2, 4 являются задачами распознавания изображений. Необходимо определить возможность решения поставленных задач с помощью нейронной сети неокогнитрон, а также установить параметры сети, позволяющие успешно решить задачу распознавания.

Под задачей выделения области на изображении (соответствующей ТС и ГРЗ в данной работе) может быть сформулирована для изображений произвольной размерности.

Пусть задано изображение / : Хп ^ ¥, Хп е Кп, ¥ е К, а также подмножество области определения (область на изображении) Иь е Хп. Необходимо найти функцию д(х) : Хп ^ В, которая для любого изображения /(х) принимает значение 1, если х е и 0 в противном случае.

Задача распознавания изображений формулируется следующим образом. Пусть дано множество всех изображений ^ = / : Хп ^ ^ ¥, Хп е Кп, ¥ е К, а также набор классов К е N. Кроме того, для некоторого подмножества й С ^ определена функция д(х) : й ^ К. Необходимо найти функцию / (х) : ^ ^ М, совпадающую с функцией д(х) на множестве й и удовлетворяющую ряду дополнительных ограничений.

Методы с использованием нейронных сетей типа неокогни-

трон. Сети типа неокогнитрон [6-8] являются продолжением существовавшей ранее сети когнитрон [5]. В отличие от персептрона применение неокогнитрона ограничено задачами анализа и распознавания изображений.

Изначально неокогнитрон был представлен как модель нейронной сети зрительной системы, имеющая иерархическую многослойную структуру согласно классической гипотезе Хубеля и Вайзеля о зрительной системе приматов.

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

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

Структура неокогнитрона представлена на рис. 1. Входные данные поступают на слой ввода (слой фоторецепторов) и0.

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

и0 - слой ввода изображения ис _ слой выделения контраста

И — ¡-й £-слой выделения критериев игг- ¡-й С-слой (С1 .наживающий;

Рис. 1. Структура неокогнитрона

ствительные области элементов. Первая плоскость извлекает разности яркостей исходного изображения, а вторая — инвертированного.

Выход слоя UG подается на слой S-элементов первого модуля (US 1). S-элементы слоя US1 предназначены для выделения отрезков. Выбор коэффициентов входных связей проводится с помощью алгоритма обучения без учителя.

Данная модель имеет четыре стадии, состоящие из S- и C-элементов. Выходное значение, полученное на слое USl, подается на слой Uci. Входные связи слоев US2 и US3 подлежат оптимизации с использованием алгоритма обучения без учителя, а слоя US4 — с помощью алгоритма конкурентного обучения с учителем.

Слой выделения контраста. Пусть выходные значения слоя U0 заданы функцией u0(n), где n = (nx,ny) — положение элемента на слое. Выходное значение слоя uG c центром чувствительной области n = (nx,ny) задается выражением

uG(n,k) = ф[(—l)k Е aG(v)uo(n + v)], (1)

|v| <Ag

где k = l, 2; ф(х) = max(x, 0); aG(£) — функция весов, задающая зависимость веса от расстояния до центра чувствительной области. Параметр AG представляет собой радиус пространственного распределения входных связей элемента слоя.

Входные связи к каждому элементу слоя UG удовлетворяют условию

Е aG(v) = 0, (2)

|v |<Ag

которое означает, что выходное значение слоя UG не зависит от среднего арифметического входных значений и для любого набора значений, таких, что

u0(n + v) = C = const, |v| < Ag, UG(n, k) = 0.

Cлой выделения отрезков. Слой US1, называемый слоем S-элементов первого модуля, является слоем выделения отрезков. Он состоит из 16 плоскостей элементов, каждая из которых содержит элементы для одного предпочтительного угла наклона отрезков. Для каждой из плоскостей элементов предпочтительные углы наклона выбраны с шагом 22, 5°. Для S-элементов устанавливается пороговое значение, определяющее выбор признаков изображения, которое должно быть достаточно низким, чтобы выходные значения были близки при небольших отклонениях угла поворота.

S-элементы данного слоя могут быть обучены с использованием алгоритмов обучения с учителем. Для обучения плоскости элементов

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

Выходные значения Б-элементов. Пусть пзг(п, к) и псг (п, к) — выходные значения Б- и С-элементов к-й плоскости элементов /-го модуля, где п представляет расположение центра чувствительной области элементов. Слой содержит не только Б-элементы, но и V-элементы, выходные значения которых обозначаются как V (п). Связи с С-элементами называются возбуждающими, а с V-элементами — тормозящими. Выходные значения Б - и V-элементов задаются выражениями

здесь параметр а3 (V, к, к) — весовой коэффициент связи с С—элемен-том предыдущей стадии, выходное значение которого равно пс1-\(п + V, к). Следует отметить, что все элементы плоскости разделяют общий набор входных связей, так как щ^, к, к) независима от п. Л3 определяет радиус области суммирования параметра V, иначе говоря, размер пространственного распределения входных связей к отдельно взятому Б-элементу. Параметр Ьг(к) ^ 0 представляет собой весовой коэффициент переменной тормозящей связи, идущей от V-элемента. Параметр ) представляет собой весовой коэффициент фиксированных связей к V-элементу и является монотонно убывающей функцией IV |. Положительная константа 9г представляет собой пороговое значение Б-элемента, определяющее выбор признаков изображений.

Несмотря на то, что шаг элементов плоскости выбран равным для Б - и С-элементов, расположения Б - и С-элементов согласовывать необязательно. В некоторых модулях они могут быть смещены относительно друг друга на половину шага, как будет показано далее. В таком случае, если Б-элементы расположены в узлах целочисленной сетки п, узлы сетки V, указывающие расположение С-элементов, соответствуют центрам сетки п.

Kci-1

1]; (3)

Kci-i

Vl(n) = л csi(v)[uci-1 (n + V, к)]2,

\ K=1 |v| <ÄSI

(4)

Входные связи 5-элементов. Обучение нейронной сети реализуется в направлении от входного слоя к слою распознавания (от нижних модулей к верхним). Для обучения всех слоев, кроме Ц8;, используется один набор данных.

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

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

Дая;(V, к, к) = (¡1081 (V)по1- 1(п + V, к), (5)

где — положительная константа, определяющая скорость обучения.

Тормозящие связи элемента определяются выражением

М*) =

\

^ ^ csi (v) ' (0)

к=1 |v|<Asi SlV '

Рассмотрим выражения для выходных значений Б-элементов. Пусть х — вектор входных значений Б-элемента X (V), равных выходным значениям предшествующих С-элементов пс;-1(п + V, к) при

IV| < Ая.

Также пусть х(г) является г-м обучающим вектором Б-элемента. Более точно, х(г) — обучающий вектор для г-го начального элемента плоскости, содержащей данный элемент. Вектор X, называемый опорным вектором, обозначим как сумму всех обучающих векторов для плоскости элементов

X = Е х(г).

г

Для двух векторов X, х и весов ) можно определить операцию взвешенного скалярного произведения:

(X, х) = Е 081 (V^(V)х^),

IV |<Ддг

где с8; (V) — вес фиксированной возбуждающей связи V-элемента (4), (5). Под нормой вектора здесь и далее понимается евклидова норма ||х|| = (х, х). Вычитая из (4), (5) выражения (6) и (3) и используя введенные выше обозначения, получаем:

пя1 (п, к) = а - У;), 1 — У;

где

1|Х |НЫ1

— мера близости между опорным вектором X и заданным вектором х, представляющая косинус угла между двумя векторами. Переменная а, определяемая выражением

вг Ьзг (к)эдп

а =--—--,

1 + вг Ьзг (к)-Уг(п)

принимает значение а ~ 1, если -у(п) = ||х|| =0 по окончании обучения при условии достаточно большого значения Ьзг(к).

Если а ~ 1, то получим:

ф(з — вг) «зг (п, к) и —-—.

1 — вг

Выходное значение Б-элемента принимает максимальное значение 1, когда входной вектор равен опорному, и 0, если мера близости не превышает порогового значения элемента вг.

Область многомерного пространства признаков, удовлетворяющая условию 8 > вг, является областью толерантности определения признака Б-элементом, а порог вг определяет диаметр области толерантности.

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

Связи С-элементов. Выходное значение элементов слоя изг подвергается размытию в последующем слое исг. Выходное значение С -элемента слоя исг, за исключением слоя ис4, определено выражением

«сг (п, к) = ф [ асг (V)«зг (п + V, к)],

IV | <Ло1

где ф[х] = ф[х]/(1 + ф[х]). Параметр асг^) представляет веса фиксированных возбуждающих связей, исходящих из группы Б-элементов, распространенных внутри радиуса Лсг.

Алгоритм конкурентного обучения. Б-элементы промежуточных модулей и32 и подлежат обучению без учителя методом самоорганизации. Начальные элементы выбираются с помощью алгоритма «победитель забирает все». Согласно этому алгоритму, каждый раз, когда

обучающие образы подаются на входной слой, каждый Б-элемент соревнуется с остальными элементами окрестности, называемой окрестностью соревнования, которая имеет форму гиперстолбца в наборе плоскостей элементов. Элемент Ц8; (п, к) выбирается в качестве начального тогда и только тогда, когда его выходное значение превосходит выходное значение любого из элементов окрестности соревнования. Из уравнения (5) видно, что каждая входная связь начального элемента увеличивается пропорционально выходному значению элемента, из которого ведет данная связь. Поскольку существуют общие связи для каждой из плоскостей элементов, то каждый из элементов плоскости должен иметь то же самое множество входных связей, что и начальный элемент. Способность нейронных сетей к устойчивому распознаванию образов обусловлена избирательностью элементов к признакам, управляемой пороговым значением.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Для Б-элементов модуля распознавания (Ц84) реализуется конкурентное обучение с учителем. Алгоритм обучения аналогичен применяемому для слоев Ц82 и Ц83, но для обучения также необходимы метки классов образов. Когда нейронная сеть проходит обучение на различных деформированных образах с использованием конкурентного обучения, для одного класса может быть сгенерировано несколько различных плоскостей элементов. Поэтому каждой добавляемой плоскости слоя Ц84 следует ставить в соответствие метку класса, которому принадлежит образ.

Метка Б-элемента с максимальным выходным значением определяет окончательный результат распознавания. Каждый раз, когда в процессе обучения создается новая плоскость элементов, образуются возбуждающие связи ото всех Б-элементов к С-элементу данного класса. После обучения, в процессе распознавания, также проходит соревнование между Б-элементами, и лишь максимальное выходное значение может быть передано на слой 4.

В процессе распознавания для слоя Ц84 пороги У^ выбираются настолько низкими, чтобы для большинства входных значений имелся ненулевой выход от нескольких Б-элементов. Следовательно, процесс нахождения Б-элемента с наибольшим выходным значением эквивалентен процессу нахождения ближайшего опорного вектора в многомерном пространстве признаков.

Оптимизация параметров неокогнитрона. Оценка параметров распределения Гаусса. Фиксированные связи (ас;, с8;) вычисляют с помощью функций Гаусса. Начальное значение переменных связей а81,68; также задают функцией Гаусса.

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

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

I n

(6(0, 0) - ^€(0,0))2

_ i=1

pi(0,0),i(®,y) - -, n :-X

i=1

X-

г=1

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

Оптимизация пороговой функции. Выбор порогового значения является существенным для обучения и распознавания. Для этого максимизируют выходное значение :

М57 (те, к) ^ тах.

Согласно теореме Ферма, необходимо решить уравнение

дмя

dt

- 0.

Пусть

KC[-1

Тогда

а — 1+ ^ ^ asi (V, к, k)uQ[_1 (те + V, к)

K=1 |V|<As[

в — bsi(k)vi (те).

usi (n,k) —К Т+йв - 1

Если 1 + 9iв > 0, то

usi (",k>—(1 - 9i)(1 + йв) - Г-ii • (7)

1

Дифференцируя выражение (7)

_ в (а - в)#2 - + а - 1 ЭД = (1 - У;)2(1 + 0гв)2 : получаем пороговое значение

^ n_(« - 1)(а - ß)

в, = ß

а-в

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

Размерности входного слоя и0 выбираются исходя из размерности входных данных. Размерности слоя определяются согласно формулам

= Ц0Х + - 1;

Цзу = ЦоУ + А^у - 1.

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

Размерности слоев ь ЦС2 и ЦС3 установлены согласно формулам

тт ол 1.^-1/2] - |АСХ„/2] + 1, , .Асхп,^

ЦСХ„ = 2Ц-—-] + —]) +

тх тх

+Ц9Х„_1 шса2 - 1, (8)

= 2([[ЦяУп-1 22 /2] + 1 ] + [Ату.])+

ту ту

+Ц8у„-1 шса2 - 1. (9)

Здесь тх и ту обозначают коэффициенты снижения размерности матрицы выходных значений слоя относительно матрицы входных значений. Формулы (8) и (9) реализуют сокращение размерности. Также они обеспечивают, чтобы четность размерностей слоя изменялась от слоя к слою при смещении на половину пиксела, которое реализуется в неокогнитроне.

Размерности слоев Ц82 и Ц83 определены так

Ц?Х2 = Цсх1 + 1; (10)

Цяу2 = ЦсУ1 + 1. (11)

Согласно формулам (10) и (11) осуществляется смещение связей на половину элемента, для чего требуется изменение четности между слоями.

Слой имеет размерности, получаемые согласно формулам:

A

Usxi = Ugx + 1 - L^SX1 j - (L^SX J mod 2);

A

SX1

2

2

UsYi = Ugy + 1 - LASY1J - (LASYiJ mod 2).

2

2

(12) (13)

В формулах (12), (13) учитывается смещение связей на половину элемента.

Размерности слоя вычисляются согласно формулам

Usx4 = UCX3 + A

CX3

iSX4 ;

ЦЯУ4 = ЦСУз + АЯУ 4.

Размерности слоя ЦС4 постоянны:

ЦСХ4 = ЦСУ4 = 1.

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

Vu0 : E [u0] = D [u0] = а2 => E

Е

,i=0

=

n

Е-

,i=0

= а2/п.

Далее можно определить размерность выборки.

В результате обработки символов тестовой и обучающей выборки получен ряд результатов, показывающий возможность применения методов, описанных выше. Тестовая и обучающая выборка содержат по 5 000 символов каждая. Анализируемые объекты представляют собой изображения различных размеров до 14 х 17 пикселей, содержащие собой буквы и цифры ГРЗ Российской Федерации.

Доля верно распознанных событий может различаться в зависимости от способа формирования тестовой выборки. На тестовой выборке результат составляет 97 % верно распознанных символов, на обучающей — 100 %. Примеры обучающей и тестовой выборки приведены на рис. 2.

0

• :«Й ПН»ii IEilElBli3lS nit да«, и № № BlieiftuiH

ИВ£йВИЙ№

я I к 1 и rii Й а я

П Б111 Ш в IB BI н

ишш a v I; № ®

: ККИЕВННвИн

Рис. 2. Примеры обучающей и тестовой выборки цифр ГРЗ

СПИСОК ЛИТЕРАТУРЫ

1. Fukunaga K. Introduction to Statistical Pattern Recognition. Second ed. -London: Academic Press, 1990.

2. B r i g g s W. L., Van Emden Henson The DFT: an owner's manual for the discrete Fourier transform. Society of industrial and applied mathematics. PA, USA. 1995. P. 143-179.

3. KimuraF., Shridhar M. Handwritten Numerical Recognition Based on Multiple Algorithms // Pattern Recognition. - 1991. - Vol. 24, No. 10. - P. 969-983.

4. Persistence Barcodes for Shapes / G. Carlsson, A. Zomorodian, A. Collins, and L. Guibas // Int. J. of Shape Modeling. 2005. 11 P. 149-187.

5. DuttaA., Chaudhury S. Bengali alpha-numeric character Recognition Using Curvature Features // Pattern Recognition 1993. 26. P. 1707-1720

6. Fukushima K. Neocognitron: A self-organizing neural network model for a mechanism of pattern recognition unaffected by shift in position // Biological Cybernetics. 1980.- 36(4). - P. 93-202.

7. F u k u s h i m a K. Neocognitron for handwritten digit recognition // Neurocomputing / R. Eckmiller & C. Von der Malsburg, eds. 2003. 51. 161-180.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

8. F u k u s h i m a K. Increasing robustness against background noise: Visual pattern recognition by a neocognitron//Neural networks. -2011. - Vol. 24 (7). - P. 767-778.

9. Fukushima K. Cognitron: A selfyorganizing multilayer neural network model // NHK Technical Monograph 1981. No. 30. - P. 1-25.

Статья поступила в редакцию 10.05.2012

i Надоели баннеры? Вы всегда можете отключить рекламу.