Нейрокомпьютерная техника

Основы искусственных нейронных сетей. Персептроны. Процедура обратного распространения. Сети встречного распространения. Стохастические методы. Сети Хопфилда. Двунаправленная ассоциативная память. Адаптивная резонансная теория. Оптические нейронные сети.

Рубрика Экономико-математическое моделирование
Вид дипломная работа
Язык русский
Дата добавления 22.06.2008
Размер файла 3,6 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

11.1 АРХИТЕКТУРА APT

Адаптивная резонансная теория включает две парадигмы, каждая из которых определяется формой входных данных и способом их обработки. АРТ-1 разработана для обработки двоичных входных векторов, в то время как АРТ-2, более позднее обобщение АРТ-1, может классифицировать как двоичные, так и непрерывные векторы. В данной работе рассматривается только АРТ-1. Читателя, интересующегося АРТ-2, можно отослать к работе [3] для полного изучения этого важного направления. Для краткости АРТ-1 в дальнейшем будем обозначать как APT.

Описание APT

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

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

Упрощенная архитектура APT

На рис. 8.1 показана упрощенная конфигурация сети APT, представленная в виде пяти функциональных модулей. Она включает два слоя нейронов, так называемых «слой сравнения» и «слой распознавания». Приемник 1, Приемник 2 и Сброс обеспечивают управляющие функции, необходимые для обучения и классификации.

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

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

Каждый нейрон в слое сравнения (рис. 8.2) получает три двоичных входа (0 или I): (1) компонента хi входного вектора X; (2) сигнал обратной связи Ri - взвешенная сумма выходов распознающего слоя; (3) вход от Приемника 1 (один и тот же сигнал подается на все нейроны этого слоя).

Рис. 8.1. Упрощенная сеть АРТ

Рис. 8.2. Упрощенный слон сравнения

Чтобы получить на выходе нейрона единичное значение, как минимум два из трех его входов должны равняться единице; в противном случае его выход будет нулевым. Таким образом реализуется правило двух третей, описанное в [З]. Первоначально выходной сигнал G1 Приемника 1 установлен в единицу, обеспечивая один из необходимых для возбуждения нейронов входов, а все компоненты вектора R установлены в 0; следовательно, в этот момент вектор C идентичен двоичному входному вектору X.

Слой распознавания. Слой распознавания осуществляет классификацию входных векторов. Каждый нейрон в слое распознавания имеет соответствующий вектор весов Bj Только один нейрон с весовым вектором, наиболее соответствующим входному вектору, возбуждается; все остальные нейроны заторможены.

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

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

Как показано на рис. 8.4, нейроны внутри слоя распознавания взаимно соединены в латерально-тормозящую сеть. В простейшем случае (единственном, рассмотренном в данной работе) предусматривается, что только один нейрон в слое возбуждается в каждый момент времени (т. е. только нейрон с наивысшим уровнем активации будет иметь единичный выход; все остальные нейроны будут иметь нулевой выход). Эта конкуренция реализуется введением связей с отрицательными весами lij с выхода каждого нейрона ri на входы остальных нейронов. Таким образом, если нейрон имеет большой выход, он тормозит все остальные нейроны в слое. Кроме того, каждый нейрон имеет связь с положительным весом со своего выхода на свой собственный вход. Если нейрон имеет единичный выходной уровень, эта обратная связь стремится усилить и поддержать его.

Рис. 8.3. Упрощенный слой распознавания

Приемник 2. G2, выход Приемника 2, равен единице, если входной вектор X имеет хотя бы одну единичную компоненту. Более точно, G2 является логическим ИЛИ от компонента вектора X.

Приемник 1. Как и сигнал G2, выходной сигнал G1 Приемника 1 равен 1, если хотя бы одна компонента двоичного входного вектора X равна единице; однако если хотя бы одна компонента вектора R равна единице, G1 устанавливается в нуль. Таблица, определяющая эти соотношения:

Рис. 8.4. Слой распознавания с латеральным торможением

ИЛИ от компонента вектора X

ИЛИ от компонента вектора R

G1

0

0

0

1

0

1

1

1

0

0

1

0

Сброс. Модуль сброса измеряет сходство между векторами X и C. Если они отличаются сильнее, чем требует параметр сходства, вырабатывается сигнал сброса возбужденного нейрона в слое распознавания.

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

Функционирование сети APT в процессе классификации

Процесс классификации в APT состоит из трех основных фаз: распознавание, сравнение и поиск.

Фаза распознавания. В начальный момент времени входной вектор отсутствует на входе сети; следовательно, все компоненты входного вектора X можно рассматривать как нулевые. Тем самым сигнал G2 устанавливается в 0 и, следовательно, в нуль устанавливаются выходы всех нейронов слоя распознавания. Поскольку все нейроны слоя распознавания начинают работу в одинаковом состоянии, они имеют равные шансы выиграть в последующей конкуренции.

Затем на вход сети подается входной вектор X, который должен быть классифицирован. Этот вектор должен иметь одну или более компонент, отличных от нуля, в результате чего и G1, и G2 становятся равными единице. Это «подкачивает» нейроны слоя сравнения, обеспечивая один из двух единичных входов, необходимых для возбуждения нейронов в соответствии с правилом двух третей, тем самым позволяя нейрону возбуждаться, если соответствующая компонента входного вектора X равна единице. Таким образом, в течение данной фазы вектор S в точности дублирует вектор X.

Далее для каждого нейрона в слое распознавания вычисляется свертка вектора его весов Вj и вектора C (рис. 8.4). Нейрон с максимальным значением свертки имеет веса, наилучшим образом соответствующие входному вектору. Он выигрывает конкуренцию и возбуждается, одновременно затормаживая все остальные нейроны этого слоя. Таким образом, единственная компонента rj вектора R (рис. 8.1) становится равной единице, а все остальные компоненты становятся равными нулю.

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

Фаза сравнения. Единственный возбужденный в слое распознавания нейрон возвращает единицу обратно в слой сравнения в виде своего выходного сигнала rj. Эта единственная единица может быть визуально представлена в виде «веерного» выхода, подающегося через отдельную связь с весом tij на каждый нейрон в слое сравнения, обеспечивая каждый нейрон сигналом рj, равным величинеtij (нулю или единице) (рис. 8.5).

Рис. 8.5. Путь сигнала отдельного возбужденного нейрона в слое распознавания

Алгоритмы инициализации и обучения построены таким образом, что каждый весовой вектор Тj имеет двоичные значения весов; кроме того, каждый весовой вектор Вj представляет собой масштабированную версию соответствующего вектора Тj. Это означает, что все компоненты P (вектора возбуждения слоя сравнения) также являются двоичными величинами.

Так как вектор R не является больше нулевым, сигнал G1 устанавливается в нуль. Таким образом, в соответствии с правилом двух третей, возбудиться могут только нейроны, получающие на входе одновременно единицы от входного вектора X и вектора P.

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

Если имеются существенные различия между X и P (малое количество совпадающих компонент векторов), несколько нейронов на фазе сравнения будут возбуждаться и C будет содержать много нулей, . в то время как X содержит единицы. Это означает, что возвращенный вектор P не является искомым и возбужденные нейроны в слое распознавания должны быть заторможены. Это торможение производится блоком сброса (рис. 8.1), который сравнивает входной вектор X и вектор C и вырабатывает сигнал сброса, если степень сходства этих векторов меньше некоторого уровня. Влияние сигнала сброса заключается в установке выхода возбужденного нейрона в нуль, отключая его на время текущей классификации.

Фаза поиска. Если не выработан сигнал сброса, сходство является адекватным, и процесс классификации завершается. В противном случае другие запомненные образы должны быть исследованы с целью поиска лучшего соответствия. При этом торможение возбужденного нейрона в распознающем слое приводит к установке всех компонент вектора R в 0, G1 устанавливается в 1 и входной вектор X опять прикладывается в качестве C. В результате другой нейрон выигрывает соревнование в слое распознавания и другой запомненный образ P возвращается в слой сравнения. Если P не соответствует X, возбужденный нейрон в слое распознавания снова тормозится. Этот процесс повторяется до тех пор, пока не встретится одно из двух событий:

Найден запомненный образ, сходство которого с вектором X выше уровня параметра сходства, т. е. S>. Если это происходит, проводится обучающий цикл, в процессе которого модифицируются веса векторов Tj и Bj, связанных с возбужденным нейроном в слое распознавания.

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

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

Время, необходимое для стабилизации сети с латеральным торможением, может быть длительным при моделировании на последовательных цифровых компьютерах. Чтобы выбрать победителя в процессе латерального торможения, все нейроны в слое должны быть вовлечены в одновременные вычисления и передачу. Это может потребовать проведения большого объема вычислений перед достижением сходимости. Латеральные тормозящие сети, аналогичные используемым в неокогнитронах, могут существенно сократить это время (гл. 10).

11.2 РЕАЛИЗАЦИЯ APT

Обзор

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

Функционирование сетей APT

Рассмотрим более детально пять фаз процесса функционирования APT: инициализацию, распознавание, сравнение, поиск и обучение.

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

Веса векторов Bj все инициализируются в одинаковые малые значения. Согласно [2], эти значения должны удовлетворять условию

?для всех i, j, (8.1)

где т - количество компонент входного вектора, L - константа, большая 1 (обычно L = 2).

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

Веса векторов Tj все инициализируются в единичные значения, так что

tij = 1?для всех j,i. (8.2)

Эти значения также являются критическими; в [2] показано, что слишком маленькие веса приводят к отсутствию соответствия в слое сравнения и отсутствию обучения.

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

Распознавание. Появление на входе сети входного вектора X инициализирует фазу распознавания. Так как вначале выходной вектор слоя распознавания отсутствует, сигнал G1 устанавливается в 1 функцией ИЛИ вектора X, обеспечивая все нейроны слоя сравнения одним из двух входов, необходимых для их возбуждения (как требует правило двух третей). В результате любая компонента вектора X, равная единице, обеспечивает второй единичный вход, тем самым заставляя соответствующий нейрон слоя сравнения возбуждаться и устанавливая его выход в единицу. Таким образом, в этот момент времени вектор С идентичен вектору X.

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

NETj = (Bj * C), (8.3)

где Вj - весовой вектор, соответствующий нейрону j в слое распознавания; С - выходной вектор нейронов слоя сравнения; в этот момент С равно X; NETj - возбуждение нейрона j в слое распознавания.

F является пороговой функцией, определяемой следующим образом:

OUTj = 1, если NETj>T, (8.4)

OUTj = 0 в противном случае,

где Т представляет собой порог.

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

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

Блок сброса сравнивает вектор С и входной вектор X, вырабатывая сигнал сброса, когда их сходство S ниже порога сходства. Вычисление этого сходства упрощается тем обстоятельством, что оба вектора являются двоичными (все элементы либо 0, либо 1). Следующая процедура проводит требуемое вычисление сходства:

Вычислить D - количество единиц в векторе X.

Вычислить N - количество единиц в векторе С.

Затем вычислить сходство S следующим образом:

S=N/D. (8.5)

Например, примем, что

Х = 1 0 1 1 1 0 1 D = 5

С = 0 0 1 1 1 0 1 N = 4

S=N/D=0,8

S может изменяться от 1 (наилучшее соответствие) до 0 (наихудшее соответствие).

Заметим, что правило двух третей делает С логическим произведением входного вектора Х и вектора Р. Однако Р равен Тj, весовому вектору выигравшего соревнование нейрона. Таким образом, D может быть определено как количество единиц в логическом произведении векторов Тj и X.

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

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

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

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

В работе [2] различают два вида обучения: медленное и быстрое. При медленном обучении входной вектор предъявляется настолько кратковременно, что веса сети не имеют достаточного времени для достижения своих ассимптотических значений в результате одного предъявления. В этом случае значения весов будут определяться скорее статистическими характеристиками входных векторов, чем характеристиками какого-то одного входного вектора. Динамика сети в процессе медленного обучения описывается дифференциальными уравнениями.

Быстрое обучение является специальным случаем медленного обучения, когда входной вектор прикладывается на достаточно длительный промежуток времени, чтобы позволить весам приблизиться к их окончательным значениям. В этом случае процесс обучения описывается только алгебраическими выражениями. Кроме того, компоненты весовых векторов Тj принимают двоичные значения, в отличие от непрерывного диапазона значений, требуемого в случае быстрого обучения. В данной работе рассматривается только быстрое обучение, интересующиеся читатели могут найти превосходное описание более общего случая медленного обучения в работе [2].

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

Пусть вектор весов Вj (связанный с возбужденным нейроном j распознающего слоя) равен нормализованной величине вектора С. В [2] эти веса вычисляются следующим образом:

(8.6)

где сi - i-я компонента выходного вектора слоя сравнения;

j - номер выигравшего нейрона в слое распознавания;

bij - вес связи, соединяющей нейрон i в слое сравнения с нейроном j в слое распознавания;

L - константа > 1 (обычно 2).

Компоненты вектора весов Тj, связанного с новым запомненным вектором, изменяются таким образом, что они становятся равны соответствующим двоичным величинам вектора С:

tij = сi для всех i, (8.7)

где tij является весом связи между выигравшим нейроном j в слое распознавания и нейроном i в слое сравнения.

11.3 ПРИМЕР ОБУЧЕНИЯ СЕТИ APT

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

Рис. 8.6. Процесс обучения APT

На рис. 8.6 показан типичный сеанс обучения сети APT. Буквы показаны состоящими из маленьких квадратов, каждая буква размерностью 8x8. Каждый квадрат в левой части представляет компоненту вектора Х с единичным значением, не показанные квадраты являются компонентами с нулевыми значениями. Буквы справа представляют запомненные образы, каждый является набором величин компонент вектора Тj.

Вначале на вход заново проинициированной системы подается буква «С». Так как отсутствуют запомненные образы, фаза поиска заканчивается неуспешно; новый нейрон выделяется в слое распознавания, и веса Тj устанавливаются равными соответствующим компонентам входного вектора, при этом веса Вj представляют масштабированную версию входного вектора.

Далее предъявляется буква «В». Она также вызывает неуспешное окончание фазы поиска и распределение нового нейрона. Аналогичный процесс повторяется для буквы «Е». Затем слабо искаженная версия буквы «Е» подается на вход сети. Она достаточно точно соответствует запомненной букве «Е», чтобы выдержать проверку на сходство, поэтому используется для обучения сети. Отсутствующий пиксель в нижней ножке буквы «Е» устанавливает в 0 соответствующую компоненту вектора С, заставляя обучающий алгоритм установить этот вес запомненного образа в нуль, тем самым воспроизводя искажения в запомненном образе. Дополнительный изолированный квадрат не изменяет запомненного образа, так как не соответствует единице в запомненном образе.

Четвертым символом является буква «Е» с двумя различными искажениями. Она не соответствует ранее запомненному образу (S меньше чем ), поэтому для ее запоминания выделяется новый нейрон.

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

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

В работе [2] предложена процедура с использованием обратной связи для настройки коэффициента сходства, вносящая, однако, некоторые искажения в результате классификации как «наказание» за внешнее вмешательство с целью увеличения коэффициента сходства. Такие системы требуют правил определения, является ли производимая ими классификация корректной.

11.4 ХАРАКТЕРИСТИКИ APT

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

Инициализация весовых векторов Т

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

Это объясняет, почему веса tij должны инициализироваться единичными значениями. Если бы они были проинициализированы нулевыми значениями, все компоненты вектора С были бы нулевыми независимо от значений компонент входного вектора, и обучающий алгоритм предохранял бы веса от изменения их нулевых значений.

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

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

Настройка весовых векторов Вj

Выражение, описывающее процесс настройки весов (выражение (8.6) повторено здесь для справки) является центральным для описания процесса функционирования сетей APT.

(8.6)

Сумма в знаменателе представляет собой количество единиц на выходе слоя сравнения. Эта величина может быть рассмотрена как «размер» этого вектора. В такой интерпретации «большие» векторы С производят более маленькие величины весов bij, чем «маленькие» вектора С. Это свойство самомасштабирования делает возможным разделение двух векторов в случае, когда один вектор является поднабором другого; т. е. когда набор единичных компонент одного вектора составляет подмножество единичных компонент другого.

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

Заметим, что Х1 является поднабором Х2. В отсутствие свойства масштабирования веса bij и tij получат значения, идентичные значениям входных векторов. Если начальные значения выбраны равными 1,0, веса образов будут иметь следующие значения:

Если Х прикладывается повторно, оба нейрона в слое распознавания получают одинаковые активации; следовательно, нейрон 2, ошибочный нейрон, выиграет конкуренцию.

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

Масштабирование весов bij предотвращает это нежелательное поведение. Предположим, что в выражении (8.2) используется значение L=2, тем самым определяя следующую формулу:

Значения векторов будут тогда стремиться к величинам

Подавая на вход сети вектор Х1 , получим возбуждающее воздействие 1,0 для нейрона 1 в слое распознавания и Ѕ для нейрона 2; таким образом, нейрон 1 (правильный) выиграет соревнование. Аналогично предъявление вектора Х2 вызовет уровень возбуждения 1,0 для нейрона 1 и 3/2 для нейрона 2, тем самым снова правильно выбирая победителя.

Инициализация весов bij

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

?для всех i, j, (8.1)

Установка этих весов в малые величины гарантирует, что несвязанные нейроны не будут получать возбуждения большего, чем обученные нейроны в слое распознавания. Используя предыдущий пример с L=2, т=5 и bij<1/3, произвольно установим bij=1/6. С такими весами предъявление вектора, которому сеть была ранее обучена, приведет к более высокому уровню активации для правильно обученного нейрона в слое распознавания, чем для несвязанного нейрона. Например, для несвязанного нейрона Х1 будет производить возбуждение 1/6, в то время как Х2 будет производить возбуждение Ѕ; и то и другое ниже возбуждения для обученных нейронов.

Поиск. Может показаться, что в описанных алгоритмах отсутствует необходимость наличия фазы поиска за исключением случая, когда для входного вектора должен быть распределен новый несвязанный нейрон. Это не совсем так; предъявление входного вектора, сходного, но не абсолютно идентичного одному из запомненных образов, может при первом испытании не обеспечить выбор нейрона слоя распознавания с уровнем сходства большим р, хотя такой нейрон будет существовать.

Как и в предыдущем примере, предположим, что сеть обучается следующим двум векторам:

X1 = 1 0 0 0 0

X2 = 1 1 1 0 0

с векторами весов Вi, обученными следующим образом

B1 = 1 0 0 0 0

B2 = Ѕ Ѕ Ѕ 0 0

Теперь приложим входной вектор X3 = 1 1 0 0 0. В этом случае возбуждение нейрона 1 в слое распознавания будет 1,0, а нейрона 2 только 2/3. Нейрон 1 выйдет победителем (хотя он не лучшим образом соответствует входному вектору), вектор С получит значение 1 1 0 0 0, S будет равно Ѕ. Если уровень сходства установлен в 3/4, нейрон 1 будет заторможен и нейрон 2 выиграет состязание. С станет равным 1 1 0 0 0, S станет равным 1, критерий сходства будет удовлетворен и поиск закончится.

Теоремы APT

В работе [2] доказаны некоторые теоремы, показывающие характеристики сетей APT. Четыре результата, приведенные ниже, являются одними из наиболее важных:

После стабилизации процесса обучения предъявление одного из обучающих векторов (или вектора с существенными характеристиками категории) будет активизировать требуемый нейрон слоя распознавания без поиска. Эта характеристика «прямого доступа» определяет быстрый доступ к предварительно изученным образам.

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

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

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

11.4 ЗАКЛЮЧЕНИЕ

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

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

12. ОПТИЧЕСКИЕ НЕЙРОННЫЕ СЕТИ

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

Задачи передачи данных решаются не просто. Электронные сигналы в интегральных сетях требуют наличия конденсаторов для передачи сигналов от вентиля к вентилю. Хотя конденсаторы имеют микронные размеры, занимаемое пространство (с учетом пространства, необходимого для изоляции одного конденсатора от другого) может стать настолько большим, что на пластине кремния не останется места для размещения вычислительных цепей. Несмотря на то, что существует технология реализации обыкновенных цифровых компьютеров в виде больших функциональных блоков с относительно небольшим количеством конденсаторов, эта технология не годится в случае массового параллелизма. Аналогичное решение для искусственных нейронных сетей в настоящее время неизвестно. Мощность нейронных сетей определяется большим количеством связей; взятые отдельно элементы имеют относительно малые вычислительные возможности.

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

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

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

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

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

12.1 ВЕКТОРНО-МАТРИЧНЫЕ УМНОЖИТЕЛИ

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

Символически

NET = XW,

OUT = F(NET),

где NET - вектор в виде строки, сформированный взвешенными суммами входов;

OUT - выходной вектор;

Х - входной вектор;

W - матрица весовых коэффициентов.

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

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

Электронно-оптические матричные умножители

Электронно-оптические нейронные сети обеспечивают средства для выполнения параллельного умножения матриц. Рассмотренные в работах [3,6,7] такие сети работают со скоростью , ограниченной только доступными электронно-оптическими компонентами; время вычислений потенциально располагается в субнаносекундном диапазоне.

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

Таким образом, луч 1 освещает и w11 w12 w15. В качестве маски может быть использована фотопленка, у которой прозрачность каждого квадрата пропорциональна весу. С левой стороны расположена вторая цилиндрическая линза, фокусирующая свет от каждого столбца маски на соответствующий фотодетектор. Таким образом, световой поток на фотодетекторе 1 является суммой произведений световых интенсивностей на передаточную функцию столбца 1. В символьной форме

,

где NETj - выход NET нейрона j (выход фотодетектора j);

Wij - вес связи от нейрона i к нейрону j (величина обратно пропорциональная прозрачности весовой маски в строке i, столбце j);

Xi - i-я компонента входного вектора i (выход источника света i).

Рис. 9.1. Электронно-оптический векторно-матричный умножитель

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

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

Сети Хопфилда на базе электронно-оптических матричных умножителей

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

Для удовлетворения требований стабильности массив весов должен быть симметричным с нулевыми коэффициентами для квадратов главной диагонали (w11, w12, wmn).

Электронно-оптическая двунаправленная ассциативная память (ДАП). Если две системы, показанные на рис. 9.1, соединены в каскад (выход второй системы подается на вход первой), реализуется электронно-оптическая ДАП. Для обеспечения стабильности вторая весовая маска должна являться транспозицией первой.

В [9] описана компактная система, в которой для реализации электронно-оптической ДАП требуется только одна маска и оптическая система (рис. 9.2). Здесь каждые фотодетектор и световой источник заменяются парой фотодетектор - световой источник. Функционирует данная система аналогично ранее описанному простому фотооптическому умножителю, за исключением того, что выход каждого фотодетектора управляется связанным с ним световым источником.

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

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

Рис. 9.2. Электронно-оптическая двунаправленная ассоциативная память

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

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

Рис. 9.3. Массив линейных пространственно-световых модуляторов

На рис. 9.4 показана упрощенная конструкция из линейных модуляторов, используемая в качестве оптического умножителя матриц. Горизонтальные полосы оптических модуляторов управляются электронным способом. Светопроводность каждой полосы соответствует величине соответствующей компоненты входного вектора X, тем самым определяя величину светового потока через соответствующую строку весовой матрицы. В этой системе нет отдельных световых потоков для каждой световой строки; один источник света через коллиматор создает световой поток, входящий справа и проходящий через каждую полосу модулятора на весовую маску. Свет, проходящий через эту маску, попадает на вертикальные светочувствительные столбцы. Каждый столбец производит выход, пропорциональный суммарному световому потоку, проходящему через соответствующий столбец весовой маски. Таким образом, результат аналогичен описанному ранее для линзовой системы, концентрирующей свет на маленьком фотодетекторе; данная система производит умножение матриц с точно таким же результатом.

Рис. 9.4. Линейный модулятор, используемый в качестве оптического матричного умножителя

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


Подобные документы

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

    реферат [88,7 K], добавлен 17.05.2010

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

    презентация [108,3 K], добавлен 14.08.2013

  • Использование эконометрических моделей в оценке цены на недвижимость. Методы искусственных нейронных сетей и влияние экзогенных переменных. Анализ чувствительности, который позволяет оценить влияние входных переменных на рыночную цену недвижимости.

    практическая работа [1,0 M], добавлен 01.07.2011

  • Построение схемы сети. Расчет интенсивностей входных потоков для каждой СМО. Проверка стационарности сети. Модель сети на языке моделирования GPSS. Сравнение расчетных и экспериментальных данных по критерию Стьюдента. Проверка адекватности модели.

    контрольная работа [94,6 K], добавлен 28.07.2013

  • Характеристика развития You Tube каналов и партнерских сетей. Частные партнерские сети: преимущества, особенности функционирования. Построение рекомендаций для помощи принятия управленческого решения менеджерам партнерской сети. Монетизация You Tube.

    дипломная работа [374,6 K], добавлен 19.06.2017

  • Математический аппарат для моделирования динамических дискретных систем. Направление развития теории сетей Петри. Построение сети, в которой каждой позиции инцидентно не более одной ингибиторной дуги. Появление и устранение отказов оборудования.

    реферат [116,2 K], добавлен 21.01.2015

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

    курсовая работа [860,1 K], добавлен 13.07.2012

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

    дипломная работа [1,2 M], добавлен 17.10.2016

  • Изучение на практике современных методов управления и организации производства, совершенствование применения этих методов. Описание ориентированной сети, рассчет показателей сети для принятия управленческих решений. Проблема выбора и оценка поставщика.

    курсовая работа [137,6 K], добавлен 21.08.2010

  • Анализ возможности применения нейронных сетей в оценке вероятности наступления банкротства предприятия в современных условиях хозяйствования. Проблема рисков в экономике. Финансовые коэффициенты, применяемые в российских методиках оценки банкротства.

    курсовая работа [451,6 K], добавлен 14.08.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.