Нейроинформатика персептрон и его развитие 1 Мозг и компьютер - davaiknam.ru o_O
Главная
Поиск по ключевым словам:
Похожие работы
Название работы Кол-во страниц Размер
Чтения 11-го Изначального Синтеза «Воинство идиво» 11-12. 01. 1 57.6kb.
Мозг, хорошо устроенный, стоит больше, чем мозг, хорошо наполненный 6 1018.7kb.
Задачи. 3 курс, шестой семестр, специальность «Юриспруденция» 1 36.67kb.
Примерные темы реферативных работ приведены ниже: Интерфейс мозг-компьютер 1 59.36kb.
Поварницына Елена Степановна, учитель – исследователь, моу «Лицей... 1 60.61kb.
Петр Ташков Сбои и ошибки пк. Лечим компьютер сами. Начали! 5 1108.04kb.
К дидактике обучаемого тандема "студент + компьютер" 1 16.3kb.
Хронология Вычислительных Машин 1 157.88kb.
Методы решения неопределенных уравнений Рузаевка 2013 3 414.41kb.
Наш помощник компьютер 1 124.48kb.
Е. Н. Емельянова левшата в школе и дома. Взгляд изнутри 1 61.48kb.
Лекции по теории и приложениям искусственных нейронных сетей 13 1179.24kb.
Направления изучения представлений о справедливости 1 202.17kb.

Нейроинформатика персептрон и его развитие 1 Мозг и компьютер - страница №1/6

ГЛАВА 3. НЕЙРОИНФОРМАТИКА
3.1. ПЕРСЕПТРОН И ЕГО РАЗВИТИЕ
3.1.1. Мозг и компьютер

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

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

Таблица 3.1. Сопоставление принципов построения и свойств современного компьютера (машины фон Неймана) и человеческого мозга



Параметр

Машина фон Неймана

Человеческий мозг

Процессор

Сложный

Простой

Высокоскоростной

Низкоскоростной

Один или несколько

Большое количество

Память

Отделена от процессора

Интегрирована в процессор

Локализованная

Распределенная

Адресация не по содержанию

Адресация по содержанию

Вычисления

Централизованные

Распределенные

Последовательные

Параллельные

По хранимым программам

По самообучающимся программам

Надежность

Высокая уязвимость

Живучесть

Среда функционирования

Строго определенная

Плохо определенная

Строго ограниченная

Без ограничений

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

Мозг человека состоит из белого и серого вещества: белое – это тела нейронов, а серое – соединяющие их нервные волокна. Каждый нейрон состоит из трех частей: тела клетки, дендритов и аксона.

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



Простейший нейрон может иметь до 10000 дендритов, принимающих сигналы от других клеток. В человеческом мозге содержится приблизительно 1011 нейронов. Каждый нейрон связан с 103  104 другими нейронами. Таким образом, биологическая нейронная сеть, составляющая мозг человека, содержит 10141015 взаимосвязей.

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

Нейроны взаимодействуют между собой посредством коротких серий импульсов продолжительностью несколько микросекунд. Частота импульсов составляет от нескольких единиц до сотен герц, что в миллион раз медленнее, чем в современных электронных схемах. Тем не менее, такие сложные операции, как распознавание зрительного образа, человек выполняет за несколько сотен микросекунд. Если учесть, что скорость выполнения операций нейронами составляет единицы микросекунд, то вся операция распознавания требует около 100 последовательных нейронных операций. Это значит, что при распознавании образов человеческий мозг запускает параллельные программы, каждая из которых имеет не более ста шагов. Сделанный вывод известен под названием «правило ста шагов».

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

Исторически первой работой, заложившей теоретический фундамент для создания интеллектуальных устройств, не только функционально, но и структурно моделирующих человеческий мозг, принято считать опубликованную в 1943 году статью Уоррена Мак-Каллока и Вальтера Питтса. Ее авторы выдвинули гипотезу математического нейрона – устройства, моделирующего нейрон мозга человека. Математический нейрон тоже имеет несколько входов и один выход. Через входы, число которых обозначим J, математический нейрон принимает входные сигналы xj, которые суммирует, умножая каждый входной сигнал на некоторый весовой коэффициент wj:



(3.1)

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



y = 1, если S  ; (3.2)

y = 0, если S < , (3.3)

где  – порог чувствительности нейрона.

Таким образом, математический нейрон, как и его биологический прототип, существует в двух состояниях. Если взвешенная сумма входных сигналов S не достигает некоторой пороговой величины , то математический нейрон не возбужден и его выходной сигнал равен нулю. Если же входные сигналы достаточно интенсивны и их сумма достигает порога чувствительности, то нейрон переходит в возбужденное состояние и на его выходе образуется сигнал y = 1. Весовые коэффициенты wj, имитируют электропроводность нервных волокон – силу синаптических связей между нейронами. Чем они выше, тем больше вероятность перехода нейрона в возбужденное состояние. Логическая функция (3.2), (3.3), называемая активационной функцией нейрона, графически изображена на рис. 3.2.

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



Математический нейрон обычно изображают кружочком, возбуждающий вход – стрелкой, а тормозящий – маленьким кружочком. Рядом может записываться число, показывающее значение порога . Как показано на рис. 3.4, математические нейроны могут реализовывать различные логические функции.



Так, математический нейрон, имеющий два входа с единичными силами синаптических связей w1 = w2 = 1, согласно формулам (3.1) – (3.3) реализует функцию логического умножения «И» при  = 2 и функцию логического сложения «ИЛИ» при  = 1. Нейрон с одним входом, у которого


w = –1, реализует логическую функцию «НЕТ» при  = 0.
3.1.3. Персептрон Розенблатта и правило Хебба

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

Идея Мак-Каллока – Питтса была материализована в 1958 году Фрэнком Розенблаттом сначала в виде компьютерной программы для ЭВМ IBM-794, а затем, спустя два года, в виде электронного устройства, моделирующего человеческий глаз. Это устройство, имеющее в качестве элементной базы модельные нейроны Мак-Каллока – Питтса и названное персептроном, удалось обучить решению сложнейшей интеллектуальной задачи – распознаванию букв латинского алфавита. Таким образом, удалось проверить основные гипотезы функционирования человеческого мозга и сам механизм его обучаемости. «Нельзя сказать, что мы точно воспроизводим работу человеческого мозга, – признавал Ф. Розенблатт, – но пока персептрон ближе всего к истине».

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

Представим себе матрицу из 12 фотоэлементов, расположенных в виде четырех горизонтальных рядов, в каждом из которых три фотоэлемента. На матрицу фотоэлементов накладывается карточка с изображением цифры (на рис. 3.5 – это цифра 4). Если на фотоэлемент попадает какой-либо фрагмент цифры, то данный фотоэлемент вырабатывает сигнал в виде двоичной единицы, в противном случае – нуль. На рис. 3.5 первый фотоэлемент выдает сигнал
х1 = 0, второй фотоэлемент – х2 = 1 и т.д. Согласно формулам (3.1) – (3.3) персептронный нейрон выполняет суммирование входных сигналов хj, помноженных на синаптические веса wj, первоначально заданные датчиком случайных чисел. После этого сумма сравнивается с порогом чувствительности , также заданным случайным образом. Цель обучения персептрона состоит в том, чтобы выходной сигнал y был равен единице, если на карточке была изображена четная цифра, и нулю, если цифра была нечетной.

Эта цель достигается путем обучения персептрона, заключающемся в корректировке весовых коэффициентов wj. Если, например, на вход персептрона была предъявлена карточка с цифрой 4 и выходной сигнал y случайно оказался равным единице, означающей четность, то корректировать веса не нужно, так как реакция персептрона правильна. Однако если выход неправилен и у = 0, то следует увеличить веса тех активных входов, которые способствуют возбуждению нейрона. В данном случае увеличению подлежат w2, wj, w11 и др.

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

Шаг 1. Подать входной образ и вычислить выход персептрона у.

Шаг 2а. Если выход правильный, то перейти на шаг 1.

Шаг 2б. Если выход неправильный и равен нулю, то увеличить веса активных входов, например, добавить все входы к соответствующим им весам: wj(t + 1) = wj(t) + xj.

Шаг 2в. Если выход неправильный и равен единице, то уменьшить веса активных входов, например, вычесть каждый вход из соответствующего ему веса: wj(t + 1) = wj(t) – xj.

Шаг 3. Перейти на шаг 1 или завершить процесс обучения.

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

Возникает вопрос: «Всегда ли алгоритм обучения персептрона приводит к желаемому результату?». Ответ на этот вопрос дает теорема сходимости персептрона, формулируемая следующим образом.



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

Интересно отметить, что по числу выполненных доказательств теорема сходимости персептрона занимает одно из первых мест в мире. Ранее самой доказанной в мире теоремой считалась теорема Пифагора.


3.1.4. Дельта-правило и распознавание букв

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

 = (dy). (3.4)

Тогда случай  = 0 соответствует шагу 2а, когда выход правилен; случай  > 0 – шагу 2б; случай  < 0 – шагу 2в.

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

wj(t + 1) = wj(t) + wj; (3.5)

wj = хj, (3.6)

где wj(t) и wj(t + 1) – соответственно старое и новое значения весовых коэффициентов персептрона; j – номер входного сигнала. Кроме того, можно получить аналогичную итерационную формулу для подстройки порогового значения нейрона , если учесть, что его можно интерпретировать как вес дополнительного входа х0, значение которого равно –1:

(t + 1) = (t) + ; (3.7)

 = –. (3.8)

В итерационные формулы можно ввести коэффициент скорости обучения , с помощью которого можно управлять величиной коррекции весов:

wj = хj; (3.9)

 = –. (3.10)

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

На рис. 3.6 приведена схема персептрона, предназначенного для распознавания букв русского алфавита. В отличие от предыдущей схемы такой персептрон имеет 33 нейрона, таким образом, каждой букве алфавита соответствует свой нейрон. Полагается, что выход первого нейрона у1 должен быть равен единице, если персептрону предъявлена буква «А», и нулю для всех остальных букв. Выход второго нейрона у2 должен быть равен единице, если персептрону предъявлена буква «Б», и нулю во всех остальных случаях. И так далее до буквы «Я».



Алгоритм обучения данного персептрона выглядит следующим образом.

Шаг 1. Датчиком случайных чисел всем весовым коэффициентам wij и пороговым значениям нейронов i (i = 1, …, 33, j = 1, …, 12) присваиваются некоторые малые значения.

Шаг 2. Персептрону предъявляется какая-либо буква алфавита, и системой фотоэлементов вырабатывается входной вектор хj (j = 1, …, 12).

Шаг 3. Каждый нейрон выполняет взвешенное суммирование входных сигналов

и вырабатывает выходной сигнал yi = 1, если Si  i; yi = 0, если Si < i.

Шаг 4. Для каждого нейрона вычисляется ошибка

i = (diyi),

где di – вектор правильных ответов персептрона (например, для буквы «A»:
d1 = 1, d2 = 0, …, d33=0 и т.д.).

Шаг 5. Производится корректировка весовых коэффициентов персептрона и пороговых значений нейронов:



wij(t + 1) = wij(t) + wij; wij = i хj;

i(t + 1) = i(t) + i; i = –i,

где t – номер итерации, или эпохи.

Шаг 6. Повторение шагов 2 – 5 необходимое число раз.


3.1.5. Адалайн, мадалайн и обобщенное дельта-правило

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



, (3.11)

график которой изображен на рис. 3.7. Эту функцию назвали сигмоидой из-за того, что ее графическое изображение напоминает латинскую букву «S». Другое название сигмоиды – логистическая функция.



Подобно обычной пороговой функции активации, сигмоида отображает точки области определения (–, +) на интервал (0, +1). Практически сигмоида обеспечивает непрерывную аппроксимацию классической пороговой функции. Для сигмоиды принято обозначение у = f(S).

Персептроны с сигмоидными активационными функциями с одним выходом назвали адалайн, с несколькими выходами – мадалайн (от английских слов ADAptive LInear NEuron и Many ADALINE). Появление персептронов с непрерывными активационными функциями обусловило и новые подходы к их обучению. Уидроу и Хофф предложили минимизировать среднеквадратичную ошибку, определяемую как разность между требуемыми di и реальными yi выходными сигналами персептрона:

 = . (3.12)

Рассмотрим алгоритм коррекции весовых коэффициентов персептрона, имеющего J входов и I выходов (рис. 3.8). Среднеквадратичная ошибка  является многомерной функцией весовых коэффициентов, т.е.  = (wij), и в пространстве координат wij представляется в виде некоторой многомерной поверхности – гиперповерхности. Если оставить только две оси координат, например w11 и w12, то эта поверхность будет иметь вид фигуры, напоминающей параболоид (рис. 3.9), который, однако, может иметь как один, так и несколько минимумов. Поэтому такую поверхность будем называть псевдопараболоидом. Обучение персептрона можно представить как задачу отыскания такого сочетания весовых коэффициентов wij, которому соответствует самая нижняя точка гиперпсевдопараболоида. Такую задачу называют оптимизационной и говорят, что она состоит в минимизации функционала  = (wij) в пространстве параметров wij.

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



, (3.13)

где  – коэффициент скорости обучения.

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

. (3.14)

Здесь yi = f(Si), где . Следовательно,



. (3.15)

Кроме того, если продифференцировать (3.12) по уn, где n  [1, I], то получится , а значит,



. (3.16)

Подставив (3.15) и (3.16) в (3.14) и затем полученное выражение в (3.13), окончательно будем иметь



. (3.17)

Это выражение получено для нейронов с активационными функциями любого вида. Однако, если – сигмоида, заданная формулой (3.11), то



. (3.18)

Подставив это выражение в (3.17), получим



. (3.19)

Итак, мы получили итерационную формулу для обучения однослойного персептрона



wij(t + 1) = wij(t) + wij, (3.20)

в которой

wij = i xj; (3.21)

i = (diyi) yi (1 – yi). (3.22)

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

Как уже отмечалось ранее, Ф. Розенблатту удалось обучить свой персептрон распознавать буквы алфавита. Это был колоссальный успех. Электронное устройство, созданное по образу и подобию человеческого мозга, обученное подобно человеку, успешно моделировало интеллектуальные функции человека. Это был шаг вперед в познании самой природы человеческого мышления. Мозг начал раскрывать свои тайны. Появилась возможность исследовать мозг методами моделирования, не прибегая к сложнейшим антигуманным и мало что дающим натурным экспериментам. Это была сенсация, приковавшая к себе внимание мыслящих людей всего мира. Казалось, что ключ к интеллекту был найден и полное воспроизведение человеческого мозга и всех его функций – всего лишь вопрос времени. Ученым, инженерам, бизнесменам, политикам виделись самые радужные перспективы практического применения систем искусственного интеллекта. Правительство США выделило крупные субсидии на развитие нового перспективного научного направления.

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

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

«Исключающее ИЛИ» – это булева функция двух аргументов, каждый из которых может иметь значение «истинно» либо «ложно». Сама она принимает значение «истинно», когда только один из аргументов имеет значение «истинно». Во всех остальных случаях функция принимает значение «ложно»:

у = (х1 AND NOT х2) OR (x2 AND NOT x1). (3.23)

Задача состоит в том, чтобы реализовать функцию (3.23) с помощью однонейронного персептрона с двумя входами х1 и х2 и одним выходом у


(рис. 3.10).

Закодировав значение «истинно» единицей, а «ложно» – нулем, все возможные комбинации входных сигналов можно представить на плоскости


x1х2 в виде четырех точек: А1 А2, В1, В2, как показано на рис. 3.11. Например, точке А1 соответствуют входные сигналы x1 = 0 и х2 = 0, а точке А2 соответствуют входные сигналы x1 = 1 и х2 = 1.

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

Таблица 3.2. Таблица истинности функции «Исключающее ИЛИ»


следующая страница >>



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