на тему рефераты Информационно-образоательный портал
Рефераты, курсовые, дипломы, научные работы,
на тему рефераты
на тему рефераты
МЕНЮ|
на тему рефераты
поиск
Распознавание образов (на примере цифр)
p align="left">2.Нейронные сети высокого порядка

Нейронные сети высокого порядка (НСВП) отличаются от МНС тем, что у них только один слой, но на входы нейронов поступают так же термы высокого порядка, являющиеся произведением двух или более компонент входного вектора. Такие сети так же могут формировать сложные разделяющие поверхности. Особенность такой сети заключаются в том, что для обучения некоторому классу достаточно предъявить его образ без вариаций масштабов и поворотов - после обучения сеть будет распознавать известные классы инвариантно к масштабу и поворотам. Такая сеть не является полносвязной, быстро обучается и работает. Отмечено существенное повышение точности классификации такой сетью повёрнутых и масштабированных изображений по сравнению с МНС.

3.Нейронные сети Хопфилда

НС Хопфилда (НСХ) является однослойной и полносвязной (связи нейронов на самих себя отсутствуют), её выходы связаны со входами. В отличие от МНС, НСХ является релаксационной - т.е. будучи установленной в начальное состояние, функционирует до тех пор, пока не достигнет стабильного состояния, которое и будет являться её выходным значением. НСХ применяются в качестве ассоциативной памяти и для решения оптимизационных задач. В первом случае НСХ обучается без учителя (например, по правилу Хебба), во втором случае веса между нейронами изначально кодируют решаемую задачу. НСХ бывают синхронными, когда одновременно пересчитываются все нейроны и асинхронными, когда пересчитывается случайно выбранный нейрон. Для исследования динамики функционирования НСХ используются методы Ляпунова.

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

4.Самоорганизующиеся нейронные сети Кохонена

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

Нейронная сеть с радиально-базисной функцией (НСРБФ) является дальнейшим развитием НС Кохонена, в которой после конкурентного слоя добавлен ещё один слой, обучаемый по методу обратного распространения. В отличие от НС Кохонена в НСРБФ выходами нейронов конкурентного слоя являются значения функции Гаусса с нормальным законом распределения, и обнуление не победивших нейронов не требуется. Ширина радиально-базисной функции характеризует расстояние между центром кластера, который образуется каждым нейронным элементом и его ближайшими соседями.

5.Когнитрон

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

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

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

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

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

1.2.1 Распознавание образов

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

Подготовка и нормализация данных

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

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

Глава 2

Описание программного средства

2.1 Алгоритм

Программа основана на наборе матриц (9 матриц - по одной на каждую цифру [1..9]), содержащих набор координат. Совокупность координат матрицы формирует образ цифры.

Считывание координат происходит по пикселям, начиная с верхнего левого угла.

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

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

2.2 Техническая реализация

Программа реализована на языке программирования Borland Delphi 2003, с помощью классов. 4 прилагающихся к программе шаблона (подложки к рабочему окну) разработаны в программе Adobe Photoshop. Шаблоны находятся в одной папке с исходным кодом программы, и в данной реализации подложка под главное окно программы выбирается самим программистом-разработчиком. В дальнейшем, возможно, предусмотреть выбор подложки пользователем программы.

Шаблоны исходных матриц находятся в одной папке с исходным кодом программы в файле Bank.bnk.

2.3 Описание пользовательского интерфейса

При запуске файла Neuro_40.exe пользователь видит главное окно программы. Подложкой главного окна программы является один из шаблонов, прилагающихся к программе. В центре окна находится окно для рисования цифр. Внизу этого окна располагаются три кнопки: Запомнить, Распознать, Очистить. С помощью кнопки Распознать пользователь может обучить свою программу, т.е. научить распознавать её данный образ цифры. С помощью кнопки Распознать пользователь может распознать нарисованный им образ, а с помощью кнопки Очистить пользователь может очистить окно для рисования.

Рис. 1 Главное окно программы

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

Рис. 2 Результат распознавания цифры

Рис. 3 Различные подложки для программы

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

Рис. 4 Процесс запоминания цифры

Заключение

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

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

Приложение 1

Техническое описание программы

1). Класс T8Bit - восьмибитная картинка

Методы:

Pixels - считывание попиксельно параметров картинки

Init - инициализация

Clear - удаление информации о пикселях картинки

Свойства:

Pixels - параметры картинки

2). TNeuro - резервная матрица, в которую считываются координаты

пикселей картинки из главного окна программы

Методы:

Clear - очистка матрицы

Normalize - нормализация

MemoryFrom - считывание значений

CompareWith - проверка на совместимость с шаблонами

GetFromBitmap - получение данных о картинке

3). TNeuroBank - совокупность матриц-шаблонов

ClearAll - удаление всех значений

SaveToFile - сохранение в файл

LoadFromFile - загрузка из файла

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

1. http://www.recognition.mccme.ru/pub/RecognitionLab.html/methods.html

2. http://daily.sec.ru/dailypblshow.cfm?rid=18&pid=4326

Страницы: 1, 2



© 2003-2013
Рефераты бесплатно, курсовые, рефераты биология, большая бибилиотека рефератов, дипломы, научные работы, рефераты право, рефераты, рефераты скачать, рефераты литература, курсовые работы, реферат, доклады, рефераты медицина, рефераты на тему, сочинения, реферат бесплатно, рефераты авиация, рефераты психология, рефераты математика, рефераты кулинария, рефераты логистика, рефераты анатомия, рефераты маркетинг, рефераты релиния, рефераты социология, рефераты менеджемент.