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

Автор работы: Пользователь скрыл имя, 23 Декабря 2012 в 13:11, курсовая работа

Описание работы

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

Содержание работы

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

Файлы: 1 файл

report.pdf

— 388.64 Кб (Скачать файл)
Page 1
Московский авиационный институт
(государственный технический университет)
_________________________________________
Курсовая работа
по курсу «Искусственный интеллект»
«Нейронные сети. Распознавание образов»
Студентка: Никонова И. А.
Преподаватели: Морозов П.Г.
Сошников Д.В.
Москва, 2010

Page 2


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

Page 3


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

Page 4


 
иологический прототип и искусственный нейрон
Развитие искусственных нейронных сетей вдохновляется биологией. То
сть, рассматривая сетевые конфигурации и алгоритмы, исследователи
применяют термины, заимствованные из принципов организации мозговой
еятельности. Но на этом аналогия заканчивается. Наши знания о работе
му
ые
е к разочарованию.
передавать электрохимические сигналы по
.
ека
идут от
одни
й
Б
е
д
мозга столь ограничены, что мало бы нашлось точно доказанных
закономерностей для тех, кто пожелал бы руководствоваться ими. Поэто
разработчикам сетей приходится выходить за пределы современных
биологических знаний в поисках структур, способных выполнять полезн
функции. Во многих случаях это приводит к необходимости отказа от
биологического правдоподобия, мозг становится просто метафорой, и
создаются сети, невозможные в живой материи или требующие
неправдоподобно больших допущений об анатомии и функционировании
мозга.
Несмотря на то, что связь с биологией слаба и зачастую несущественна,
искусственные нейронные сети продолжают сравнивать с мозгом. Их
функционирование часто имеет внешнее сходство с человеческим
познанием, поэтому трудно избежать этой аналогии. К сожалению, такие
сравнения неплодотворны и создают неоправданные ожидания, неизбежно
ведущи
Нервная система человека, построенная из элементов, называемых
нейронами, имеет ошеломляющую сложность. Около 10 нейронов
участвуют в примерно 10 передающих связях, имеющих длину метр и
более. Каждый нейрон обладает многими свойствами, общими с другими
органами тела, но ему присущи абсолютно уникальные способности:
принимать, обрабатывать и
нервным путям, которые образуют коммуникационную систему мозга
На рис. 1 показано строение «нейронной сети» челов
. Дендриты
тела нервной клетки к другим нейронам, где они принимают сигналы в
точках соединения, называемых синапсами. Принятые синапсом входные
сигналы передаются к телу нейрона. Здесь они суммируются, причем
входы стремятся возбудить нейрон, другие — воспрепятствовать его
возбуждению.
Когда суммарное возбуждение в теле нейрона превышает некоторый порог,
нейрон возбуждается, посылая по аксону сигнал другим нейронам. У это

Page 5


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

Page 6


 
, ,…,
, ,…,
 
1, если 
;
 0, если  
где T — некоторая постоянная пороговая величина.
Рис. 2. Искусственный нейрон.
На рис. 2 представлена модель, реализующая эту идею. Множество входных
сигналов, обозначенных
, поступает на искусственный нейрон.
Эти входные сигналы, в совокупности обозначаемые вектором ,
соответствуют сигналам, приходящим в синапсы биологического нейрона.
Каждый сигнал умножается на соответствующий вес
, и
поступает на суммирующий блок, обозначенный ∑ . Каждый вес
соответствует "силе" одной биологической синаптической связи (множество
весов в совокупности обозначается вектором ). Суммирующий блок,
соответствующий телу биологического элемента, складывает взвешенные
входы алгебраически, создавая выход, который мы будем называть NET. В
векторных обозначениях это может быть компактно записано следующим
образом:
NET = XW.
Сигнал NET далее, как правило, преобразуется активационной функцией F и
дает выходной нейронный сигнал OUT. Активационная функция может быть
обычной линейной функцией
OUT = F(NET)
где F — пороговая функция.
OUT =
;

Page 7

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

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

Page 8


 
 
1
1  
флуктуациями), которые присутствуют в любой физически реализованной
сети. Сильные входные сигналы, в свою очередь, также будут приводить к
насыщению усилительных каскадов, исключая возможность полезного
использования выхода. Центральная область логистической функции,
имеющая большой коэффициент усиления, решает проблему обработки
слабых сигналов, в то время как области с падающим усилением на
положительном и отрицательном концах подходят для больших
возбуждений. Таким образом, нейрон функционирует с большим усилением
в широком диапазоне уровня входного сигнала
Другой широко используемой активационной функцией является
гиперболический тангенс. По форме она сходна с логистической функцией и
часто используется биологами в качестве математической модели активации
нервной клетки. В качестве активационной функции искусственной
нейронной сети она записывается следующим образом:
Рис. 4. Функция F.
Подобно логистической функции гиперболический тангенс является S-
образной функцией, но он симметричен относительно начала координат, и в
точке NET = 0 значение выходного сигнала OUT равно нулю (см. рис. 4). В
отличие от логистической функции, гиперболический тангенс принимает

Page 9


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

Page 10


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

Page 11

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

Page 12

11 
 
,
 
0,                         
0
 ,
0,…,
1, 
  1
 
,
0,…, 1
и новые значения аксонов
1
1 .
где f — активационная функция в виде скачка.
3. Проверка, изменились ли выходные значения аксонов за последнюю
ектор
или же "вольную импровизацию" сети (в случае неудачи).
На стадии инициализации сети весовые коэффициенты синапсов
устанавливаются следующим образом:
Здесь i и j — индексы, соответственно, предсинаптического и
постсинаптического нейронов; , — i-й и j-й элементы вектора k-го
образца.
Алгоритм функционирования сети следующий (p— номер итерации):
1. На входы сети подается неизвестный сигнал. Фактически его ввод
осуществляется непосредственной установкой значений аксонов:
 
поэтому обозначение на схеме сети входных синапсов в явном виде
носит чисто условный характер. Ноль в скобке справа от
означает
нулевую итерацию в цикле работы сети.
2. Рассчитывается новое состояние нейронов:
итерацию. Если да — переход к пункту 2, иначе (если выходы
стабилизировались) — конец процедуры. При этом выходной в
представляет собой образец, наилучшим образом сочетающийся с
входными данными.

Page 13

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

Page 14

А вот наименее удачные попытки распознавания:
Рис. 7. Неудачный пример работы сети Хопфилда.
13 
 

Page 15

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

Page 16

15 
 
Литература
1. Медведев В.С., Потемкин В.Г. «Нейронные сети. MATLAB 6», «ДИЛОГ-
МИФИ», 2002 г. 496 с.
2. Лекции «Основы теории нейронных сетей» Яхъяева Г.Э. (intuit.ru)

Информация о работе Нейронные сети. Распознавание образов