18637

Нейронные сети. Распознавание образов

Курсовая

Информатика, кибернетика и программирование

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

Русский

2014-03-24

542 KB

61 чел.

Московский авиационный институт

(государственный технический университет)

_________________________________________

Курсовая работа

по курсу «Искусственный интеллект»

«Нейронные сети. Распознавание образов»

Студентка: Никонова И. А.

Преподаватели: Морозов П.Г.

Сошников Д.В.

 Москва, 2010

Содержание

  1.  Введение……………………………………………………………………...
  2.  Биологический прототип и искусственный нейрон……………………….
  3.  Сети Хопфилда………………………………………………………………
  4.  Распознавание цифр с помощью сетей Хопфилда………………………..
  5.  Заключение………………………………………………………………….
  6.  Литература…………………………………………………………………...

Введение

   Исследования в области нейронных сетей начались в 40-е годы XX века. Первое систематическое изучение искусственных нейронных сетей было предпринято Маккалокком и Питтсом в 1943 г. Позднее они исследовали сетевые парадигмы для распознавания изображений, подвергаемых сдвигам и поворотам.

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

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

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

Биологический прототип и искусственный нейрон

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

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

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

   На рис. 1 показано строение «нейронной сети» человека. Дендриты идут от тела нервной клетки к другим нейронам, где они принимают сигналы в точках соединения, называемых синапсами. Принятые синапсом входные сигналы передаются к телу нейрона. Здесь они суммируются, причем одни входы стремятся возбудить нейрон, другие — воспрепятствовать его возбуждению.

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

Рис. 1. Типичные биологические нейроны.

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


Рис. 2.  Искусственный нейрон.

На рис. 2 представлена модель, реализующая эту идею. Множество входных сигналов, обозначенных  , поступает на искусственный нейрон. Эти входные сигналы, в совокупности обозначаемые вектором , соответствуют сигналам, приходящим в синапсы биологического нейрона. Каждый сигнал умножается на соответствующий вес  , и поступает на суммирующий блок, обозначенный . Каждый вес соответствует "силе" одной биологической синаптической связи (множество весов в совокупности обозначается вектором ). Суммирующий блок, соответствующий телу биологического элемента, складывает взвешенные входы алгебраически, создавая выход, который мы будем называть NET. В векторных обозначениях это может быть компактно записано следующим образом:

NET = XW.

Сигнал NET далее, как правило, преобразуется активационной функцией F и дает выходной нейронный сигнал OUT. Активационная функция может быть обычной линейной функцией

OUT = F(NET)

где F — пороговая функция.

OUT =

где T — некоторая постоянная пороговая величина.


Рис. 3.   Функция F.

На рис. 2 блок, обозначенный F, принимает сигнал NET и выдает сигнал OUT. Если блок F сужает диапазон изменения величины NET так, что при любых значениях NET значения OUT принадлежат некоторому конечному интервалу, то F называется "сжимающей" функцией. В качестве "сжимающей" функции часто используется логистическая или "сигмоидальная" (S-образная) функция, показанная на рис.3. Эта функция математически выражается как . Таким образом,

По аналогии с электронными системами активационную функцию можно считать нелинейной усилительной характеристикой искусственного нейрона. Коэффициент усиления вычисляется как отношение приращения величины OUT к вызвавшему его небольшому приращению величины NET. Он выражается наклоном кривой при определенном уровне возбуждения и изменяется от малых значений при больших отрицательных возбуждениях (кривая почти горизонтальна) до максимального значения при нулевом возбуждении и снова уменьшается, когда возбуждение становится большим положительным. С. Гроссберг (1973) обнаружил, что подобная нелинейная характеристика решает поставленную им дилемму шумового насыщения. Каким образом одна и та же сеть может обрабатывать как слабые, так и сильные сигналы? Слабые сигналы нуждаются в большом сетевом усилении, чтобы дать пригодный к использованию выходной сигнал. Однако усилительные каскады с большими коэффициентами усиления могут привести к насыщению выхода шумами усилителей (случайными флуктуациями), которые присутствуют в любой физически реализованной сети. Сильные входные сигналы, в свою очередь, также будут приводить к насыщению усилительных каскадов, исключая возможность полезного использования выхода. Центральная область логистической функции, имеющая большой коэффициент усиления, решает проблему обработки слабых сигналов, в то время как области с падающим усилением на положительном и отрицательном концах подходят для больших возбуждений. Таким образом, нейрон функционирует с большим усилением в широком диапазоне уровня входного сигнала

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


Рис. 4.  Функция F.

Подобно логистической функции гиперболический тангенс является S-образной функцией, но он симметричен относительно начала координат, и в точке NET = 0 значение выходного сигнала OUT равно нулю (см. рис. 4). В отличие от логистической функции, гиперболический тангенс принимает значения различных знаков, и это его свойство применяется для целого ряда сетей.

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

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

   

Сети Хопфилда

   Нейронные сети могут иметь обратные связи (то есть связи от выходов некоторых нейронов ко входам других нейронов), а могут не иметь их. Сети Хопфилда – это нейронные сети с обратными связями, причем выход каждого нейрона связывается со входами всех остальных нейронов. Так как сети с обратными связями имеют пути, передающие сигналы от выходов к входам, то отклик таких сетей является динамическим, т. е. после приложения нового входа вычисляется выход и, передаваясь по сети обратной связи, модифицирует вход. Затем выход повторно вычисляется, и процесс повторяется снова и снова. Для устойчивой сети последовательные итерации приводят к все меньшим изменениям выхода, пока в конце концов выход не становится постоянным. Для многих сетей процесс никогда не заканчивается, такие сети называют неустойчивыми. Неустойчивые сети обладают интересными свойствами и изучались в качестве примера хаотических систем. Никто не мог предсказать, какие из сетей будут устойчивыми, а какие будут находиться в постоянном изменении. Более того, проблема представлялась столь трудной, что многие исследователи были настроены пессимистически относительно возможности ее решения. К счастью, была получена теорема, описавшая подмножество сетей с обратными связями, выходы которых в конце концов достигают устойчивого состояния. Это замечательное достижение открыло дорогу дальнейшим исследованиям, и сегодня многие ученые занимаются исследованием сложного поведения и возможностей этих систем. Дж. Хопфилд сделал важный вклад как в теорию, так и в применение систем с обратными связями. Поэтому некоторые из конфигураций известны как сети Хопфилда. Остановимся на важном частном случае нейросетевой архитектуры, для которой свойства устойчивости подробно исследованы. На рис. 5. показана сеть с обратными связями, состоящая из двух слоев. Способ представления несколько отличается от использованного в работе Хопфилда и других сходных, но эквивалентен им с функциональной точки зрения. Нулевой слой не выполняет вычислительной функции, а лишь распределяет выходы сети обратно на входы. Каждый нейрон первого слоя вычисляет взвешенную сумму своих входов, давая сигнал NET, который затем с помощью нелинейной функции F преобразуется в сигнал OUT. Эти операции сходны с нейронами других сетей.


Рис. 5.  Сеть Хопфилда.

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

Задачи, решаемые данной сетью, как правило, формулируются следующим образом. Известен некоторый набор двоичных сигналов (изображений, оцифровок звука, прочих данных, описывающих некие объекты или характеристики процессов), которые считаются образцовыми. Сеть должна уметь из произвольного неидеального сигнала, поданного на ее вход, выделить ("вспомнить" по частичной информации) соответствующий образец (если такой есть) или "дать заключение" о том, что входные данные не соответствуют ни одному из образцов. В общем случае, любой сигнал может быть описан вектором , n — число нейронов в сети и размерность входных и выходных векторов. Каждый элемент  равен либо 1, либо 0. Обозначим вектор, описывающий k-й образец, через , а его компоненты, соответственно, — , k = 0…m – 1, m— число образцов. Когда сеть распознaет (или "вспомнит") какой-либо образец на основе предъявленных ей данных, ее выходы будут содержать именно его, то есть   Y = , где Y - вектор выходных значений сети:. В противном случае, выходной вектор не совпадет ни с одним образцовым.

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

На стадии инициализации сети весовые коэффициенты синапсов устанавливаются следующим образом:

Здесь i и j — индексы, соответственно, предсинаптического и постсинаптического нейронов; , — i-й и j-й элементы вектора k-го образца.

Алгоритм функционирования сети следующий (p— номер итерации):

  1.  На входы сети подается неизвестный сигнал. Фактически его ввод осуществляется непосредственной установкой значений аксонов:

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

  1.  Рассчитывается новое состояние нейронов:

и новые значения аксонов

где f — активационная функция в виде скачка.

  1.  Проверка, изменились ли выходные значения аксонов за последнюю итерацию. Если да — переход к пункту 2, иначе (если выходы стабилизировались) — конец процедуры. При этом выходной вектор представляет собой образец, наилучшим образом сочетающийся с входными данными.

Распознавание цифр с помощью сетей Хопфилда

  В первоначальной реализации сети Хопфилда, распознающей цифры, решено было задать в качестве эталона цифры от 1 до 9. Они представлялись векторами размерности 81, содержащими 1 или -1. Эта размерность векторов была выбрана не случайно, так как сеть Хопфилда способна распознать примерно 0,15*N образов, здесь N – число нейронов в сети и соответственно размерность вектора образа. Алгоритм обучения был несколько модифицирован по сравнению с описанным в предыдущей части работы: если сеть в конечном состоянии имеет на выходе вектор, не являющийся точной копией одного из эталонных, но очень похожий на некоторый эталонный образ, то программа «узнает» его. То есть на выходе сеть может иметь вектор, который не в точности является одним из эталонных, а в каком-то приближении. Конечная реализация распознает только цифры от 1 до 5, чтобы оставить наименее похожие друг на друга эталонные образы.

Рис. 6. Распознавание цифр сетью Хопфилда.

 

 А вот наименее удачные попытки распознавания:

Рис. 7. Неудачный пример работы сети Хопфилда.

 

Заключение

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

Литература

1.  Медведев В.С., Потемкин В.Г. «Нейронные сети. MATLAB 6», «ДИЛОГ-МИФИ», 2002 г. 496 с.

2. Лекции «Основы теории нейронных сетей» Яхъяева Г.Э. (intuit.ru)


 

А также другие работы, которые могут Вас заинтересовать

11921. Измерение горизонтальной составляющей магнитного поля Земли 196 KB
  1.ТЕОРИЯ РАБОТЫ Земля представляет собой шаровой магнит и в любой точке на ее поверхности и в окружающем пространстве обнаруживается созданное ею магнитное поле. Вектор индукции магнитного поля Земли можно разложить на две составляющие: горизонтальную и вертикальну
11922. Анализ кредитования юридических лиц в коммерческом банке ОАО «УРАЛСИБ» 620.5 KB
  Активная работа коммерческих банков в области кредитования осуществляется в двух основных направлениях. Задачей первого направления является привлечения в банк денежных средств извне путем их «дешевой покупки» с использованием различных финансовых инструментов...
11923. Изучение тока в вакуумном диоде 363 KB
  1. ТЕОРИЯ РАБОТЫ Цель работы получение вольтамперной характеристики вакуумного диода и определение удельного заряда электрона. При достаточно малых анодных напряжениях при которых не достигается ток насыщения зависимость силы тока от анодного напряжения в вакуум
11924. Экспериментальное изучение характеристик вакуумного диода и определение работы выхода электронов из вольфрама 30 KB
  Лабораторная работа № 6 Цель работы: экспериментальное изучение характеристик вакуумного диода и определение работы выхода электронов из вольфрама. Приборы и оборудование: источник питания ИП 2 цифровых вольтметра соединительные провода. Содержание работы: В д...
11925. ЦИФРОВОЙ АДАПТИВНЫЙ ИЗМЕРИТЕЛЬ ВРЕМЕННЫХ ИНТЕРВАЛОВ ЦАИВИ-1 455.5 KB
  Лабораторная работа № 44 ЦИФРОВОЙ АДАПТИВНЫЙ ИЗМЕРИТЕЛЬ ВРЕМЕННЫХ ИНТЕРВАЛОВ ЦАИВИ1. Цель работы Изучение цифровых методов измерения временных интервалов. Изучение способов автоматического переключения пределов измерения в цифровых приборах. ...
11926. Исследование интегральных цифро-аналоговых и аналого-цифровых преобразователей 1.1 MB
  Исследование интегральных цифроаналоговых и аналогоцифровых преобразователей. I. Цель работы Целью работы является изучение принципа действия особенностей использования точности и быстродействия интегральных ЦАП и аналогоцифровых АЦП преобразователей. ...
11927. Автоматический выбор диапазонов измерения в цифровых вольтметрах 85 KB
  ЦИФРОВЫЕ МЕТОДЫ И СРЕДСТВА ИЗМЕРЕНИЯ Адаптивные измерительные устройства Лабораторная работа № 45 Автоматический выбор диапазонов измерения в цифровых вольтметрах. 1. Цель работы: Изучение цифровых интегрирующих методов измерения напряжения. ...
11928. Цифровой частотомер с автоматическим выбором диапазонов измерения 64 KB
  Цифровой частотомер с автоматическим выбором диапазонов измерения Цифровой частотомер с автоматическим выбором диапазонов измерения: Методические указания к лабораторной работе / Рязан. гос. радиотехн. университет; Сост.: Е.М. Прошин Рязань 2006. 9 с. Содержат описан...
11929. Измерение диэлектрической проницаемости и угла диэлектрических потерь твердых диэлектриков 475 KB
  ЛАБОРАТОРНАЯ РАБОТА № 2 Измерение диэлектрической проницаемости и угла диэлектрических потерь твердых диэлектриков Цель работы: изучить основные электрические свойства диэлектрических материалов и их характеристики. ПРОГРАММА РАБОТЫ 1. Ознакомиться с образ...