Визуализация процесса обучения нейронной сети неокогнитрон для распознавания символов
А.В. Кугаевских
ФГБОУ ВПО Тюменский государственный университет, Россия
Содержание
2. Описание нейронной сети распознавания
3. Визуализация обучения нейронной сети
Аннотация
В процессе обучения любой нейронной сети возникает проблема оценки качества обучения, что определяется обучением отдельных слоев или нейронов. К тому же при большом количестве нейронов трудно отследить потоки активации нейронов при поступлении того или иного входного набора данных. В настоящей работе представлен механизм визуализации обучения сети свертки неокогнитрон, позволяющий показать путь активации нейронов от входных нейронов через активацию признаков и до активации выходного нейрона, показывающего метку класса. Апробация механизма была осуществлена на примере обучения нейронной сети неокогнитрон, распознающей символы древнеегипетского языка. Любой символ можно распознать только по его признакам, отличающим этот символ от других. Поэтому основной задачей визуализации является отображение активации нейронов, ответственных за извлечение признаков, вместе с параметрами обучения нейрона и отображение дальнейшего маршрута передачи сигнала вплоть до нейронов, определяющих класс, к которому относится распознаваемое изображение символа.
Отслеживание траектории активации связей между слоями позволяет выявить недостающие связи, лишние признаки, проследить сигнала между слоями и откорректировать параметры обучения для их усиления. Благодаря динамической визуализации силы сигнала, передающегося между нейронами, процесс побора порога чувствительности становится более понятным.
Среднее качество распознавания построенной нейронной сети составляет 82% при общем числе нейронов около 700 тысяч на 6845 классов.
Ключевые слова: визуализация обучения, нейронные сети, неокогнитрон, распознавание текста
В процессе обучения любой нейронной сети возникает проблема оценки качества обучения, что определяется обучением отдельных слоев или нейронов. К тому же при большом количестве нейронов трудно отследить потоки активации нейронов при поступлении того или иного входного набора данных.
В работе [1] описывалось несколько вариантов диаграмм, представляющих собой отображение на графе нейронной сети путем утолщения линий соединений нейронов их весовых коэффициентов (диаграмма Бонда, диаграмма Хинтона). В работе [2] был описан другой способ визуализации обучения через цветовую индикацию весовых коэффициентов на изображении. Интересный подход к визуализации описан в работе [3]. В ней показывается принцип отображения влияния признака при классификации на тот или иной класс в процентном соотношении с другими классами. Тем самым можно определить наиболее важные при обучении признаки.
Существующие механизмы визуализации работы нейронной сети не позволяют проследить весь путь активации нейронов от входа сети до ее выхода. При обучении крупной нейронной сети на распознавание большого количества изображений многие методы визуализации слишком загромождают диаграмму архитектуры сети и не дают информации о корректности настройки нейронов извлечения признаков.
В настоящей работе предлагается механизм, позволяющий показать путь активации нейронов от входных нейронов через активацию признаков и до активации выходного нейрона, показывающего метку класса. Апробация механизма была осуществлена на примере обучения нейронной сети неокогнитрон, распознающей символы древнеегипетского языка.
Любой символ можно распознать только по его признакам, отличающим этот символ от других. Поэтому основной задачей визуализации является отображение активации нейронов, ответственных за извлечение признаков, вместе с параметрами обучения нейрона и отображение дальнейшего маршрута передачи сигнала вплоть до нейронов, определяющих класс, к которому относится распознаваемое изображение символа.
В качестве нейронной сети была выбрана сверточная нейронная сеть неокогнитрон, причины такого выбора описаны в нашей работе [4]. Неокогнитрон, предложенный Фукушимой [5], был нами адаптирован к условиям задачи распознавания иероглифических текстов [6].
В исходной модели К. Фукушимы был изменен принцип функционирования слоя UG, отвечавший за выделение контраста, в слои US1-UC4 добавлен параметр угла наклона признаков и изображений обучающей выборки, для выявления степени повреждения был добавлен слой UD (рис. 1).
Рис. 1. Структура модифицированной нейросети
Сегментация может быть осуществлена через выявление границ сегментов, основанных на перепаде яркости на границе. Слой сегментации основан на применении ядра фильтра Габора в функции активации нейрона.
Размер слоя UG, отвечающего за выделение контуров сегментов, определяется размером исходного изображения. Передаточная функция нейронов этого слоя основана на функции Хевисайда:
где – пороговая функция,
– размер рецептивного поля ,
m, n – позиция центра рецептивного поля,
k,l – позиция светового импульса в рецептивной области,
– количество параллельных возбуждающих и тормозных зон в рецептивном поле.
Выход уровня UG подается на слой извлечения признаков (US1). Он содержит ровно столько плоскостей, сколько неповторяющихся признаков встречается на всей обучающей выборке.
Слой USl содержит также V-ячейки, выход которых определяется как vl(n). Выход S- и V-ячеек соответственно равен:
где (≥0) - сила переменной возбуждающей связи, идущей от C-ячейки предыдущей стадии,
ASl - радиус рецептивного поля ячейки,
– номер плоскости предыдущего слоя,
– номер плоскости текущего слоя,
bl(k) (≥0) - сила переменной тормозящей связи, идущей от V-ячейки,
(<1) - порог чувствительности S-ячейки,
– угол наклона признака символа ( с шагом 15°),
– тормозная ячейка, выход которой рассчитывается по формуле (3),
– выход нейронов предыдущего C-слоя, для l=1 вместо на вход подается .
где cSl(x,y) - сила постоянной возбуждающей связи с V-ячейкой.
Схематично связи между ячейками можно представить таким образом как они отображены на рисунке 2.
Рис. 2. Схема связей между ячейками в слое
Низкий порог снижает ориентационную селективность S-ячеек и увеличивает допуск для вращения признаков, которые необходимо извлечь.
Задачей комплексных ячеек является уменьшение зависимости реакции системы от позиции образов во входном поле.
Ответом C-ячейки UCl, исключая самую высокую стадию UC4, является
где ,
- сила постоянных возбуждающих связей, сходящихся от группы S-ячеек, которые распространяются в пределах радиуса ACl.
S-ячейки промежуточных уровней (US2 и US3), в отличие от остальных, обучаются также при помощи неконтролируемого конкурентного обучения.
Каждый нейрон слоя UD получает связи от нейронов слоя UC1. Ответ такого нейрона должен обладать обратно пропорциональной зависимостью от степени активации признаков символа (т.е. слоя UC1). Чем меньше активация соответствующих нейронов слоя UC1, тем выше вероятность что символ поврежден в соответствующей четверти. Поэтому передаточной функцией является функция Хевисайда, при которой нейрон будет активироваться только при положительном сигнале. Ответом каждого нейрона UD будет:
где – размер области активации нейрона,
– сила постоянных возбуждающих связей,
– порог чувствительности.
Предлагается динамическое формирование диаграммы графа нейросети с отображением изображений признаков и цветовым выделением активированных связей. Похожий подход применятся в визуальном программировании, в частности технология Blueprints игрового движка Unreal Engine [7].
Первым этапом визуализации является формирование карты признаков символа. Карта признаков используется как при обучении слоя US1, так и при визуализации траектории активации нейронов, обученных на эти признаки.
Рис. 3. Пример карты признаков символа
Помимо отображения признаков символов, на диаграмме сети также отображаются значения порога чувствительности .
При подаче изображения символа на вход сети важно проследить пути активации нейронов и силы сигналов для правильного обучения и подбора параметров. Визуализация этого динамического процесса может ускорить поиск ошибок в структуре сети. Визуально активированные соединения отображаются другим цветом, при этом уровень передаваемого сигнала влияет на толщину штриха, рисунок 4. Похожий подход применен в [8].
Рис. 4. Пример структуры с активированными связями
Отслеживание траектории активации связей между слоями позволяет выявить недостающие связи, лишние признаки, проследить сигнала между слоями и откорректировать параметры обучения для их усиления. Благодаря динамической визуализации силы сигнала, передающегося между нейронами, процесс побора порога чувствительности становится более понятным.
Разработанная нейронная сеть апробировалась на древнеегипетских текстах (рисунок 5), характеризующихся большим количеством классов символов, сложными грамматическими элементами с множественной вложенностью символов и отсутствием лингвистической информации для исправления ошибок распознавания.
Рис. 5. Пример изображения текста
На неповрежденных образцах изображения нейросеть показала среднее качество распознавания на уровне 82%. Этот показатель зависит от материала-носителя текста, степени повреждения.
Тестовая выборка для проведения экспериментов по качеству распознавания текстов составила 358 изображений текстов.
Тестовую выборку текстов можно условно разделить на четыре группы по материалу:
1. папирус, холст, кожа,
2. камень,
3. керамика,
4. дерево.
Материал из каждой группы обладает разной фактурой и степенью повреждения, что по-разному влияет на качество распознавания. Результаты проверки на текстах из каждой группы приведены в таблице 1. Также в таблице 1 приведено сравнение показателей качества распознавания без применения и с применением фильтра Габора.
Таблица 1. Результаты проверки качества распознавания.
Материал |
Кол-во текстов |
Качество распознавания, без применения фильтра Габора |
Качество распознавания, с применением фильтра Габора |
Папирус, холст, кожа |
32 |
79,9% |
82,1% |
Камень |
294 |
79,1% |
84,6% |
Керамика |
7 |
78,4% |
80,3% |
Дерево |
25 |
78% |
81% |
Итого |
358 |
78,85% |
82% |
В процессе функционирования была выявлена зависимость качества распознавания от степени повреждения образа символа (рисунок 6). При увеличении степени повреждения до 50% и более наблюдается резкое снижение качества распознавания. Это объясняется большим количеством символов алфавита и их похожестью, так как при повреждении изображений символов может быть потеряна информация о важных признаках, отличающих символ от других.
Рис. 6. Зависимость качества распознавания от степени повреждения.
Среднее качество распознавания построенной нейронной сети составляет 82% при общем числе нейронов около 700 тысяч на 6845 классов. Показатель качества на 5% выше обычного для нейронных сетей качества распознавания на такое большое количество классов. В первую очередь это связано с изменениями, внесенными в структуру сети, тем не менее, такой результат обусловлен и более тонкой настройкой сети, благодаря применению механизма визуализации.
Visualization of process of training of the neural network neocognitron for character recognition
A.V. Kugaevskikh
Tyumen State University, Tyumen, Russia
Abstract
In training of any neural network there is a problem of an assessment of quality of training that is defined by training of separate layers or neurons. In case of large number neurons it is difficult to trace flows of neurons activation. This paper shows the visualization mechanism of neural network training, the way of neurons activation allowing from input neurons through activation of features and before activation of the output neuron showing a class tag is provided. Approbation of the mechanism was realized on the example of training of a neural network neocognitron, recognizing characters of Ancient Egyptian language. Any character can be recognized only on its features distinguishing this character from others.
Tracing of an activation path of communications between layers allows to reveal missing communications, excess features, to trace a signal between layers and to modify training parameters for their gain.
Average quality of recognition of the constructed neural network makes 82% in case of total number of neurons about 700 thousands on 6845 classes.
Keywords: Visualization of the training, neural networks, neocognitron, text recognition
1. Wejchert J., Tesauro G. Neural network visualization. NIPS 1989: 465-472.
2. Arai K. Visualization of learning process for back propagation neural network clustering. IJASCA, vol.4, no.2, 2013: 234-238.
3. Alsakran J. et al. Visualization analysis of feed forward neural network input contribution. Scientific research and essays, vol.9 (14), 2014: 645-651.
4. Kugaevskikh A.V., Ivashko A.G. Vozmognost’ primeneniya iskusstvennih neyronnih setei neocognitron dlya raspoznavaniya drevreegipetskih ierogliphov [Possibility of application of ANN neocognitron for recognition of ancient egyptian hieroglyphs]. Vestnik tumenskogo gosudarstvennogo universiteta [Tyumen State University Herald], Tyumen: TyumSU, 2009, N.6, pp. 209-214.
5. Fukushima K. Neocognitron for handwritten digit recognition, Neurocomputing, 51, 2003: 161-180.
6. Kugaevskikh A.V. Modifikaciya neironnoi seti neocognitron dlya uvelicheniaya kachestva raspoznovaniya teksta [Modification of NN neocognitron for quality improvement of text recognition]. Conference proceedings Graphicon-2014,Graphicon-2014. Rostov-on-Don, 2014, p.181-187.
7. Unreal Engine 4 Documentation - https://docs.unrealengine.com/latest/INT/Engine/Blueprints/GettingStarted/index.html.
8. Tzeng F.-Y., Ma K.-L. Opening the Black Box — Data Driven Visualization of Neural Networks, Visualization, 2005. VIS 05. IEEE: 383-390.