Нейронная сеть хебба реферат

Обновлено: 08.07.2024

1. Нейроподобный элемент (нейрон).

На нейроподобный элемент поступает набор входных сигналов x1, x2, . xM (или входной вектор X), представляющий собой выходные сигналы других нейроподобных элементов. Каждый входной сигнал умножается на соответствующий вес связи w1, w2, . wM - аналог эффективности синапса. Вес связи является скалярной величиной, положительной для возбуждающих и отрицательной для тормозящих связей. Взвешенные весами связей входные сигналы поступают на блок суммации, соответствующий телу клетки, где осуществляется их алгебраическая суммация и определяется уровень возбуждения нейроподобного элемента S:

Выходной сигнал нейрона y определяется путем пропускания уровня возбуждения S через нелинейную функцию f:

где q - некоторое постоянное смещение (аналог порога нейрона). Обычно используются простейшие нелинейные функции: бинарная (рис. 1.2, а)

или сигмоидная (рис. 1.2, б)

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

2. Нейроподобная сеть.

2.1. Модели нейронных сетей.

Рассматриваемые нами модели нейронных сетей объединены в три группы. В п. 2.1.1. рассматриваются сети персептронного типа, для которых характерно отсутствие обратных связей между нейроподобными элементами, организованными в слои. Отличительной особенностью сетей, представленных в п. 2.1.2, являются симметричные (равные по величине и противоположные по направлению) связи между любыми двумя соединенными нейронами. В нейросетевых архитектурах, описанных в п. 2.1.3, между нейронами одного слоя имеются постоянные тормозящие связи (латеральное торможение).

2.1.1. Сети с прямыми связями.

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

матрицы бинарных входов r1, r2, . rn (сенсорных нейронов или "сетчатки", куда подаются входные образы);

набора бинарных нейроподобных элементов x1, x2, . xm (или предикатов в наиболее общем случае) с фиксированными связями к подмножествам сетчатки ("детекторы признаков");

бинарного нейроподобного элемента с модифицируемыми связями к этим предикатам ("решающий элемент").

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

Таким образом, модель персептрона характеризуется наличием только прямых связей, один из слоев которых является модифицируемым. В постейшем случае, когда n = m и xi = ri, детекторы признаков могут рассматриваться как входной слой. Тогда персептрон становится одним бинарным нейроподобным элементом. Это классическая модель М-входового нейрона, приведенная на рис. 1.1, или простой персептрон Розенблатта. В общем случае каждый элемент xi может рассматриваться как булева функция, зависящая от некоторого подмножества сетчатки. Тогда величина выходных сигналов этих обрабатывающих элементов является значением функции xi, которое равно 0 или 1.

Устройство реагирует на входной вектор генерацией выходного сигнала y решающего элемента по формуле (1.3). Таким образом, персептрон формирует гиперплоскость, которая делит многомерное пространство x1, x2, . xm на две части и определяет, в какой из них находится входной образ, выполняя таким образом, его классификацию. Возникает вопрос, как определить значения весов, чтобы обеспечить решение персептроном конкретной задачи. Это достигается в процессе обучения.

Один из алгоритмов обучения приведен в параграфе 2.2.

Многослойный персептрон. Как отмечалось выше, простой персептрон с одним слоем обучаемых связей формирует границы областей решений в виде гиперплоскотей. Двухслойный персептрон может выполнять может выполнять операцию логического "И" над полупространствами, образованными гиперплоскостями первого слоя весов. Это позволяет формировать любые, возможно неограниченные, выпуклые области в пространстве входных сигналов. С помощью трехслойного персептрона, комбинируя логическими "ИЛИ" нужные выпуклые области, можно получить уже области решений произвольной формы и сложности, в том числе невыпуклые и несвязные. То, что многослойные персептроны с достаточным множеством внутренних нейроподобных элементов и соответствующей матрицей связе в принципе способны осуществлять любое отображение вход - выход, отмечали еще Минский и Пейперт, однако они сомневались в том, что можно открыть для них мощный аналог процедуры обучения простого персептрона. В настоящее время в результате возрождения интереса к многослойным сетям предложено несколько таких процедур. Часть из них приведена в параграфе 2.2.

2.1.2. Сети с симметричными связями.

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

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

Идеи Хебба оказали большое воздействие на представления о работе мозга и послужили основой для создания нейронных моделей долговременной памяти. Действительно, ансамблевую нейронную сеть можно рассматривать как структуру, реализующую функции распределенной ассоциативной памяти. Формирование ансамблей в такой сети соответствует запоминанию образов (признаков, объектов, событий, понятий), закодированных паттерном активности нейронов, а сформированные ансамбли являются их внутренним представлением. Процесс возбуждения всего ансамбля при активации части его нейронов можно интерпретировать как извлечение запомненной информации по ее части - ключу памяти.

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

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

В 1982 г. американский биофизик Джон Хопвилд опубликовал статью, где поведение модели полносвязной сети бинарных нейроподобных элементов с симметричными связями (w ij = w ji). элементы функционировали в асинхронном режиме, т.е. каждый нейрон в случайные моменты времени с некоторой средней частотой определял свое состояние с правилом (1.3). Это позволило описать поведение сети ка релаксационный процесс, при котором минимизируется функция (гамильтониан) модели.

Машина Больцмана представляет собой стохастический вариант сети Хопфилда. Бинарные нейроподобные элементы (блоки) трактуются здесь представители элементарных гипотез, а веса - как слабые парные взаимоограничения между ними. Положительный вес связи указывает, что две гипотезы стремятся поддерживать друг друга, а отрицательный - на их несовместимость. Симметрия связей позволяет проанализировать поведение сети с использованием энергетической функции (гамильтониана). Энергию определенного паттерна активности можно интерпретировать как степень нарушения ограничений, присутствующих в проблемной области, со стороны конкретной комбинации гипотез или как стоимостную функцию, которая должна быть минимизирована для решения оптимизационной задачи. Существует возможность, однако, попадания сети в локальный мимнимум, что крайне не желательно для оптимизационных задач. Чтобы сеть могла выбраться из локального энергетического минимума, в машине Больцмана применяется вероятностное правило срабатывания блоков:

где pi - вероятность нахождения i-го блока в единичном состоянии;

P (x) - сигмоидная функция (рис. 1.2. б);

T - параметр, аналогичный температуре. При T® 0 это правило переходит в правило срабатывания детерминированных элементов (1.3), а при повышении температуры увеличивается вероятность перехода системы в состояние с большей энергией.

Обучение машины Больцмана описано в параграфе 2.2.

2.1.3. Сети с латеральным торможением.

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

Структура нейронной сети, в которой реализуется формирование карт признаков, приведена на рис. 2.1. Нейроны, имеющие сигмоидную характеристику, расположены в виде одно- и двумерного слоя слоя по аналогии со слоистым строением коры. На каждый нейрон поступают два вида связей: mij, которые интерпретируются как связи от сенсорных входов или из других областей, и w jk - латеральные связи от нейронов одного слоя, характер которых зависит от расстояния между нейронами. Функция взаимодействия нейронов одного слоя имеет вид "мексиканской шляпы" (рис. 2.2.), что соответствует некоторым нейробиологическим данным. Близко расположенные нейроны возбуждают друг друга, с увеличением расстояния возбуждение сменяется торможением, а затем опять появляются слабые возбуждающие связи, которые по-видимому, выполняют ассоциативные функции и в данной модели не используются.

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

Теория адаптивного резонанса. Пожалуй, одна из самых развитых и продуманных с биологической точки зрения концепций нейросетевой обработки информации предложена в работах Гроссберга. Ее стержнем является модель нейронной сети и алгоритмы теории адаптивного резонанса, которая была разработана в начале 70-х годов и детализирована в 80-х.

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

2.2. Обучение нейронной сети.

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

где w ij(t) и w ij(t+1) - значение связи от i-го к j-му нейрону соответственно до и после его изменения, a - скорость обучения. В настоящее время существует множество разнообразных обучающих правил (алгоритмов обучения). Некоторые из них приведены ниже.

2.2.1. "Back propagation" (алгоритм обратного распространения ошибки).

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

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

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

2.2.2. Обучение без "воспитателя".

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

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

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

Теоретический. Работы, в которых в той или иной форме (математической, алгоритмической, словесной и т.д.) представлено описание моделей нейронных сетей.

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

Программно-аппаратный. Сопроцессоры для ускорения моделирования нейронных сетей.

Аппаратный. Физически реализованные модели нейронных сетей.

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

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

В 1949 физиолог Дональд Олдингс Хебб (как же беднягу, наверное, обзывали в школе!) написал книгу "Организация сознания". В этой книге он попытался объяснить, как нейроны человеческого мозга могут обучаться. Его теория получила впоследствии название "Обучение Хебба".

Основное утверждение теории: два нейрона мозга могут иметь связь (соединение) друг с другом. Нейроны могут принимать активное или пассивное состояние. Если оба нейрона активны в одно и то же время, то сила связи между ними возрастает. Если хотя бы один нейрон не активен, то сила связи не увеличивается. Такая теория приобрела название Усиления Длительной Связи (Long Term Potentiation).

Впоследствии эта предельно простая теория была расширена как самим Хеббом, так и другими исследователями. Еще одно правило было добавлено - "нехеббовское обучение" (antihebbian learning). Здесь добавлено предположение, что если из двух нейронов только один активен, то сила связи не только не увеличивается, но и уменьшается. Если оба нейрона неактивны, то сила связи не изменяется (Подавление Длительной Связи – Long Term Depression).

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

В виде таблицы взаимоотношение нейронов можно представить так:

состояние первого нейрона состояние второго нейрона влияние на связь между нейронами
неактивен неактивен не влияет
неактивен активен подавление
активен неактивен подавление
активен активен усиление

Вообще говоря, Хебб пошел в своих идеях еще дальше модифицирования связей. Он предположил, что отдельные нейроны или отдельные группы нейронов могут передавать сигнал со своих выходных элементов на свои же входные элементы, формируя тем самым реверберирующие структуры: нейрон A возбуждает нейрон B, который возбуждает нейрон C, который в свою очередь возбуждает нейрон A. Такие структуры могут объяснить явление накопления усталости нейронов. Также Хеббу принадлежит и идея о группировании клеток, которой посвящено отдельное направление исследований.

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

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

Мы хотим заставить хеббовскую сеть различать выражения лица, т.е. на выходе имеется значение 1 для веселого типа и 0 - для грустного. Здесь требуются хеббовские связи между 25 входными элементами и 1 входным. Чуть позже будет описана ситуация с несколькими выходными элементами.

Вся сеть смоделирована 25 числами, каждое из которых инициализируется каким-то случайным числом, например между 0 и 1:

Функция random(1000) возвращает случайное число в диапазоне от 0 до 999, выражение random(1000)/1000 позволяет получить дествительное число в диапазоне от 0 до 0.999. Будьте внимательны, если работаете в C++ или подобном языке – как random(1000), так и 1000 - целые числа, так что компилятор может автоматически выбрать целочисленное деление, а результат такого деления в данном случае - 0. Любителям языка C++ лучше писать строку как random(1000)/1000.0 .

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

в данном случае

dw – изменение веса связи между i входным элементом и выходным элементом j,
ai – уровень сигнала на входном элементе i,
aj – уровень сигнала на выходном элементе j,
n – постоянный множитель, предохраняющий от слишком значительных изменений весов связей.

Понятно, что при значениях входных и выходных данных, больших 0, весовые коэффициенты не могут уменьшаться, - они принимают все большие и большие значения. Здесь правило Хебба необходимо расширить. Если вышеприведенную формулу привести к виду:

то веса будут уменьшаться при активностях входных элементов, меньших 0.5 ( 2ai-1 будет давать отрицательное число). Эта ситуация называется Post-Not-Pre LTD (пост-непре-синаптическое подавление длительной связи) в том смысле что вес связи будет уменьшаться при неактивном пресинаптическом нейроне и активном постсинаптическом.

Формула также может быть написана в другом виде:

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

При желании можно пойти дальше, и объединить оба случая в одном уравнении:

но по скорому размышлению мы понимаем ошибочность такого объединения, - если входной нейрон неактивен и неактивен выходной нейрон (те имеют уровни активности в диапазоне от 0 до 0.5), произведение отрицательных чисел дает положительное число, и вес связи увеличивается! Поэтому используйте только одну модель, в зависимости от того, какая больше подходит под конкретную ситуацию.

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

Должны ли веса связей принимать значения в диапазоне от 0 до 1? В правилах Хебба нет ни слова о том, что веса связей не могут принимать отрицательные значения или увеличиваться до бесконечности. Если возникла необходимость ограничения, следует дописать пару строчек кода (выделены курсивом):

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

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

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

Двухмерные сети Хебба. Довольно легко увеличить количество выходных элементов, для этого выходная переменная opt заменяется на массив opt[], представляющий выходную сетку:

На этом рисунке я показал связи, идущие от входных элементов к одному выходному потому, что иначе рисунок был бы слишком неразборчив. На самом деле все выходные элементы связаны со входными, и массив весов связей strengths[] теперь имеет 4 измерения, а не 2. Так strengths[a,b,c,d] будет обозначать вес связи между входным элементом [a,b] и выходным элементом [c,d]. Несмотря на это, новый код немногим отличается от прежнего:

Вы видите, что выходная сетка необязательно должна быть того же размера (и может иметь иные очертания), что и входная. В приведенном примере выходная сетка имеет размерность 3-на-3, а входная – 5-на-5.

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

Что яйцеголовые говорят о связях Хебба? Вы хотите прочесть книгу Хебба? Должен Вас предупредить, что она написана весьма занудным стилем. Есть также и другие книги Хебба, датированные после 1949 года.

Мне также известно, что Хебб был заслуженным профессором в 1949, - представьте, сколько ему исполнилось в 1980!

Hebb, D. O. (1949) "Organisation of Behavior", pub. John Wiley & Sons, New York.
Hebb, D. O. (1980) Essay on Mind pub. Erlbaum, Hillsdale, NJ.

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

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 01.03.2017
Размер файла 734,5 K

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

HTML-версии работы пока нет.
Cкачать архив работы можно перейдя по ссылке, которая находятся ниже.

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

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

реферат [347,6 K], добавлен 17.12.2011

Способы применения технологий нейронных сетей в системах обнаружения вторжений. Экспертные системы обнаружения сетевых атак. Искусственные сети, генетические алгоритмы. Преимущества и недостатки систем обнаружения вторжений на основе нейронных сетей.

контрольная работа [135,5 K], добавлен 30.11.2015

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

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

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

презентация [582,1 K], добавлен 25.06.2013

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

курсовая работа [377,4 K], добавлен 26.02.2015

Нейронные сети как средство анализа процесса продаж мобильных телефонов. Автоматизированные решения на основе технологии нейронных сетей. Разработка программы прогнозирования оптово-розничных продаж мобильных телефонов на основе нейронных сетей.

дипломная работа [4,6 M], добавлен 22.09.2011

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

На нейроподобный элемент поступает набор входных сигналов x1 , x2 , . xM (или входной вектор X), представляющий собой выходные сигналы других нейроподобных элементов. Каждый входной сигнал умножается на соответствующий вес связи w1 , w2 , . wM - аналог эффективности синапса. Вес связи является скалярной величиной, положительной для возбуждающих и отрицательной для тормозящих связей. Взвешенные весами связей входные сигналы поступают на блок суммации, соответствующий телу клетки, где осуществляется их алгебраическая суммация и определяется уровень возбуждения нейроподобного элемента S:



(1.1)

Выходной сигнал нейрона y определяется путем пропускания уровня возбуждения S через нелинейную функцию f:


(1.2)

где q - некоторое постоянное смещение (аналог порога нейрона). Обычно используются простейшие нелинейные функции: бинарная (рис. 1.2, а)



(1.3)

или сигмоидная (рис. 1.2, б)


(1.4)

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

2. Нейроподобная сеть.

2.1. Модели нейронных сетей.

Рассматриваемые нами модели нейронных сетей объединены в три группы. В п. 2.1.1. рассматриваются сети персептронного типа, для которых характерно отсутствие обратных связей между нейроподобными элементами, организованными в слои. Отличительной особенностью сетей, представленных в п. 2.1.2, являются симметричные (равные по величине и противоположные по направлению) связи между любыми двумя соединенными нейронами. В нейросетевых архитектурах, описанных в п. 2.1.3, между нейронами одного слоя имеются постоянные тормозящие связи (латеральное торможение).

2.1.1. Сети с прямыми связями.

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

1. матрицы бинарных входов r1 , r2 , . rn (сенсорных нейронов или “сетчатки”, куда подаются входные образы);

2. набора бинарных нейроподобных элементов x1 , x2 , . xm (или предикатов в наиболее общем случае) с фиксированными связями к подмножествам сетчатки (“детекторы признаков”);

3. бинарного нейроподобного элемента с модифицируемыми связями к этим предикатам (“решающий элемент”).

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

Таким образом, модель персептрона характеризуется наличием только прямых связей, один из слоев которых является модифицируемым. В постейшем случае, когда n = m и xi = ri , детекторы признаков могут рассматриваться как входной слой. Тогда персептрон становится одним бинарным нейроподобным элементом. Это классическая модель М-входового нейрона, приведенная на рис. 1.1, или простой персептрон Розенблатта. В общем случае каждый элемент xi может рассматриваться как булева функция, зависящая от некоторого подмножества сетчатки. Тогда величина выходных сигналов этих обрабатывающих элементов является значением функции xi , которое равно 0 или 1.

Устройство реагирует на входной вектор генерацией выходного сигнала y решающего элемента по формуле (1.3). Таким образом, персептрон формирует гиперплоскость, которая делит многомерное пространство x1 , x2 , . xm на две части и определяет, в какой из них находится входной образ, выполняя таким образом, его классификацию. Возникает вопрос, как определить значения весов, чтобы обеспечить решение персептроном конкретной задачи. Это достигается в процессе обучения.

Один из алгоритмов обучения приведен в параграфе 2.2.

Многослойный персептрон. Как отмечалось выше, простой персептрон с одним слоем обучаемых связей формирует границы областей решений в виде гиперплоскотей. Двухслойный персептрон может выполнять может выполнять операцию логического “И” над полупространствами, образованными гиперплоскостями первого слоя весов. Это позволяет формировать любые, возможно неограниченные, выпуклые области в пространстве входных сигналов. С помощью трехслойного персептрона, комбинируя логическими “ИЛИ” нужные выпуклые области, можно получить уже области решений произвольной формы и сложности, в том числе невыпуклые и несвязные. То, что многослойные персептроны с достаточным множеством внутренних нейроподобных элементов и соответствующей матрицей связе в принципе способны осуществлять любое отображение вход - выход, отмечали еще Минский и Пейперт, однако они сомневались в том, что можно открыть для них мощный аналог процедуры обучения простого персептрона. В настоящее время в результате возрождения интереса к многослойным сетям предложено несколько таких процедур. Часть из них приведена в параграфе 2.2.

2.1.2. Сети с симметричными связями.

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

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

Идеи Хебба оказали большое воздействие на представления о работе мозга и послужили основой для создания нейронных моделей долговременной памяти. Действительно, ансамблевую нейронную сеть можно рассматривать как структуру, реализующую функции распределенной ассоциативной памяти. Формирование ансамблей в такой сети соответствует запоминанию образов (признаков, объектов, событий, понятий), закодированных паттерном активности нейронов, а сформированные ансамбли являются их внутренним представлением. Процесс возбуждения всего ансамбля при активации части его нейронов можно интерпретировать как извлечение запомненной информации по ее части - ключу памяти.

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

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

В 1982 г. американский биофизик Джон Хопвилд опубликовал статью, где поведение модели полносвязной сети бинарных нейроподобных элементов с симметричными связями (wij =wji ). элементы функционировали в асинхронном режиме, т.е. каждый нейрон в случайные моменты времени с некоторой средней частотой определял свое состояние с правилом (1.3). Это позволило описать поведение сети ка релаксационный процесс, при котором минимизируется функция (гамильтониан) модели.

Машина Больцмана представляет собой стохастический вариант сети Хопфилда. Бинарные нейроподобные элементы (блоки) трактуются здесь представители элементарных гипотез, а веса - как слабые парные взаимоограничения между ними. Положительный вес связи указывает, что две гипотезы стремятся поддерживать друг друга, а отрицательный - на их несовместимость. Симметрия связей позволяет проанализировать поведение сети с использованием энергетической функции (гамильтониана). Энергию определенного паттерна активности можно интерпретировать как степень нарушения ограничений, присутствующих в проблемной области, со стороны конкретной комбинации гипотез или как стоимостную функцию, которая должна быть минимизирована для решения оптимизационной задачи. Существует возможность, однако, попадания сети в локальный мимнимум, что крайне не желательно для оптимизационных задач. Чтобы сеть могла выбраться из локального энергетического минимума, в машине Больцмана применяется вероятностное правило срабатывания блоков:


, (2.1)

где pi - вероятность нахождения i-го блока в единичном состоянии;

P (x) - сигмоидная функция (рис. 1.2. б);

T - параметр, аналогичный температуре. При T®0 это правило переходит в правило срабатывания детерминированных элементов (1.3), а при повышении температуры увеличивается вероятность перехода системы в состояние с большей энергией.

Обучение машины Больцмана описано в параграфе 2.2.

2.1.3. Сети с латеральным торможением.

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

Структура нейронной сети, в которой реализуется формирование карт признаков, приведена на рис. 2.1. Нейроны, имеющие сигмоидную характеристику, расположены в виде одно- и двумерного слоя слоя по аналогии со слоистым строением коры. На каждый нейрон поступают два вида связей: mij , которые интерпретируются как связи от сенсорных входов или из других областей, и wjk - латеральные связи от нейронов одного слоя, характер которых зависит от расстояния между нейронами. Функция взаимодействия нейронов одного слоя имеет вид “мексиканской шляпы” (рис. 2.2.), что соответствует некоторым нейробиологическим данным. Близко расположенные нейроны возбуждают друг друга, с увеличением расстояния возбуждение сменяется торможением, а затем опять появляются слабые возбуждающие связи, которые по-видимому, выполняют ассоциативные функции и в данной модели не используются.


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


Теория адаптивного резонанса. Пожалуй, одна из самых развитых и продуманных с биологической точки зрения концепций нейросетевой обработки информации предложена в работах Гроссберга. Ее стержнем является модель нейронной сети и алгоритмы теории адаптивного резонанса, которая была разработана в начале 70-х годов и детализирована в 80-х.

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

2.2. Обучение нейронной сети.

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


(1.5)

где wij (t) и wij (t+1) - значение связи от i-го к j-му нейрону соответственно до и после его изменения, a - скорость обучения. В настоящее время существует множество разнообразных обучающих правил (алгоритмов обучения). Некоторые из них приведены ниже.

2.2.1. Back propagation (алгоритм обратного распространения ошибки).

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

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

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

2.2.2. Обучение без “воспитателя”.

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

3. Нейрокомпьютеры.

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

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

Уровень 0. Теоретический. Работы, в которых в той или иной форме (математической, алгоритмической, словесной и т.д.) представлено описание моделей нейронных сетей.

Уровень 1. Программный. Модели нейронных сетей, программно реализованные на обычных последовательных компьютерах.

Уровень 2. Программно-аппаратный. Сопроцессоры для ускорения моделирования нейронных сетей.

Уровень 3. Аппаратный. Физически реализованные модели нейронных сетей.

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

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

Читайте также: