74
Естественные модели параллельных вычислений Лекция 6 :: Искусственные нейронные сети Ершов Н.М. [email protected] Проект комиссии Президента РФ по модернизации и техническому развитию экономики России Создание системы подготовки высококвалифицированных кадров в области суперкомпьютерных технологий и специализированного программного обеспечения Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 1 / 61

Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

  • Upload
    others

  • View
    12

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Естественные моделипараллельных вычислений

Лекция 6 :: Искусственные нейронные сети

Ершов Н.М.

[email protected]

Проект комиссии Президента РФпо модернизации и техническому развитию экономики России

«Создание системы подготовки высококвалифицированных кадров вобласти суперкомпьютерных технологий и специализированного

программного обеспечения»

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 1 / 61

Page 2: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

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

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 2 / 61

Page 3: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Биологический прототип

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

нейронов, участвующих в примерно 1015 передающих связях,имеющих длину метр и более.

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 3 / 61

Page 4: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Нейроны

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 4 / 61

Page 5: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Схема строения нейрона

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 5 / 61

Page 6: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Синапсы

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 6 / 61

Page 7: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Схема устройства синапса

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 7 / 61

Page 8: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Искусственный нейрон

Искусственный нейрон имитирует в первом приближении свойствабиологического нейрона.На его вход поступают несколько сигналов, каждый из которыхявляется выходом другого нейрона (или входным сигналом всейсети).Каждый вход xi умножается на некоторый вес wi , аналогичныйсинаптической силе, все произведения суммируются, определяяуровень N активации нейрона.Полученное значение далее преобразуется активационнойфункцией нейрона f , которая и дает выход нейрона y = f (N).Таким образом, выходной сигнал y нейрона, имеющего n входовx1, . . . , xn, определяется формулой

y = f

(n∑

i=1

wixi

).

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 8 / 61

Page 9: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Схема устройства искусственного нейрона

xn

...

x2

x1

wn

...

w2

w1

∑f

Ny

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 9 / 61

Page 10: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Активационная функция нейрона

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 10 / 61

Page 11: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Линейная функция с насыщением

x

f

0

1

f (x) =

0, если x < 0,1, если x > a,x/a, иначе;

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 11 / 61

Page 12: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Пороговая функция

x

f

0

1

f (x) ={

0, если x ≤ 0,1, иначе;

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 12 / 61

Page 13: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Сигмоидальная функция

x

f

0

1

f (x) =1

1+ e−kx .

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 13 / 61

Page 14: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Искусственная нейронная сеть

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

I входные нейроны являются аналогами рецепторов и служат дляввода информации в нейронную сеть, активационная функциятаких нейронов f (x) = x ;

I внутренние нейроны служат для нелинейного преобразованиясвоих входных сигналов в выходные;

I выходные нейроны сети — это нейроны, служащие для выводаинформации.

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 14 / 61

Page 15: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Сети прямого распространения

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 15 / 61

Page 16: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Рекуррентные сети

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 16 / 61

Page 17: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

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

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

I обучение с учителем;I обучение без учителя;I обучение с подкреплением.

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 17 / 61

Page 18: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Обучение с учителем

При обучении с учителем (англ. supervised learning)предполагается, что имеется набор обучающих примеров.Каждый пример представляет собой пару

вход → желаемый выход.

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 18 / 61

Page 19: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Обучение без учителя

При обучении без учителя (англ. unsupervised learning) наборобучающих примеров состоит только из входных сигналов.Такое обучение сводится к самоорганизации сети с цельюсоздания некоторой внутренней модели внешнего мира,представленного в виде набора входных сигналов.Например, такого рода сети используются в задачахклассификации (кластеризации) данных, когда заранее неизвестнани структура, ни количество классов (самоорганизующиеся картыКохонена — SOM).

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 19 / 61

Page 20: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Обучение с подкреплением

При обучении с подкреплением (англ. reinforcement learning)обучающие примеры также состоят только из входных сигналов ине содержат желаемых откликов на эти сигналы.Однако, имеется некоторая обратная связь — каждый выходнейронной сети оценивается как плохой (неправильный) илихороший (правильный).Такой тип обучения применяется в тех случаях, когда нейроннаясеть служит моделью объектов, существующих в некоторой среде.Среда воздействует на объекты посредством входных сигналов.Выходные сигналы меняют тем или иным образом состояниеобъекта (например, его положение в пространстве). Каждоедействие объекта оценивается в соответствии с некоторымкритерием по шкале «плохо–хорошо». Целью обучения являетсягенерация «хороших» выходных сигналов.

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 20 / 61

Page 21: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Перцептроны

Перцептрон (англ. perceptron) представляет собой простейшийспособ организации нейронной сети прямого распространения.Все нейроны перцептрона разбиты по слоям, причем связаннымиявляются только нейроны соседних уровней: каждый нейрон k-гоуровня преобразует свои входные сигналы и подает выходнойсигнал на все нейроны (k + 1)-го уровня.Первый уровень, как правило, образуют входные нейроны, работакоторых заключается в рассылке входных сигналов нейронамвторого уровня.Выход нейронов последнего уровня является выходомперцептрона.

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 21 / 61

Page 22: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Перцептрон Розенблатта

Перцептрон Розенблатта был по сути первоймоделью искусственной нейронной сети.Эта модель была разработана в конце 1950-хгодов американским Фрэнком Розенблаттом,который предложил схему устройства,моделирующего процесс человеческоговосприятия, и назвал его «перцептроном»В 1957 году было завершено компьютерноемоделирование работы перцептрона, а двагода спустя был продемонстрирован ипервый нейрокомпьютер — «Марк-1»,который был способен распознаватьнекоторые из букв английского алфавита.

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 22 / 61

Page 23: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Устройство перцептрона Розенблатта

Перцептрон Розенблатта представляет собой трехслойнуюнейронную сеть.Первый слой образован из входных нейронов, называемыхS-элементами (сенсорные элементы).Второй слой состоит из нейронов, называемых A-элементами(ассоциативные элементы).В третьем слое в простейшем случае располагается всего одиннейрон, называемый R-элементом (решающий элемент).

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 23 / 61

Page 24: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Функционирование перцептрона

Работа сенсорных элементов заключается в чтении входногобинарного сигнала и передаче его нейронам второго слоя.Работа A-элемента выполняется по описанной выше схеме: всесигналы от входных нейронов суммируются с весами измножества {−1, 0, 1} и эта сумма преобразуется активационнойфункцией вида

fθ(x) ={

1, если x > θ,0, если x ≤ θ.

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 24 / 61

Page 25: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Формальное описание перцептрона Розенблатта

Формально перцептрон Розенблатта определяется двумячисловыми параметрами: n — число входов, m — числоассоциативных элементов, матрицей G = (gij ∈ {−1, 0, 1}) весовсвязей между входными и ассоциативными элементами, ивектором W = (wj ∈ Z ) весов между ассоциативнымиэлементами и выходным нейроном.Пусть на вход перцептрона подается сигнал X = (xi ∈ {0, 1}).Тогда выход ассоциативного слоя вычисляется по формуле

zj = fθ

(n∑

i=1

gijxi

),

а выход решающего элемента (т. е. выход перцептрона) равен

y = f0

m∑j=1

wjzj

.

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 25 / 61

Page 26: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Обучение перцептрона Розенблатта

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 26 / 61

Page 27: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Метод коррекции ошибки

Пусть имеется обучающий набор, содержащий множество входныхсигналов (объектов) с указанием номера класса (0 или 1),которому принадлежит каждый объект.Для обучения перцептрона применяется следующий алгоритм(метод коррекции ошибки).1) Значения wj полагаем равными нулю (инициализация).2) Перебираем в некотором порядке все объекты из обучающего

набора, подавая их на вход перцептрона:F если объект принадлежит классу 1, то все веса, ведущие от

возбужденных ассоциативных элементов, увеличиваются на 1;F если объект принадлежит классу 0, то все веса, ведущие от

возбужденных ассоциативных элементов, уменьшаются на 1.

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 27 / 61

Page 28: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Теорема сходимости

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 28 / 61

Page 29: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Многослойные перцептроны

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 29 / 61

Page 30: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Двуслойный перцептрон

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 30 / 61

Page 31: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Двуслойный перцептрон

x y

W V

входнойслой

скрытыйслой

выходнойслой

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 31 / 61

Page 32: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Двуслойный перцептрон

x y

W V

входнойслой

скрытыйслой

выходнойслой

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 31 / 61

Page 33: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Двуслойный перцептрон

x y

W V

входнойслой

скрытыйслой

выходнойслой

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 31 / 61

Page 34: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Двуслойный перцептрон

x y

W V

входнойслой

скрытыйслой

выходнойслой

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 31 / 61

Page 35: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Двуслойный перцептрон

x y

W V

входнойслой

скрытыйслой

выходнойслой

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 31 / 61

Page 36: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Двуслойный перцептрон

x y

W V

входнойслой

скрытыйслой

выходнойслой

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 31 / 61

Page 37: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Двуслойный перцептрон

x y

W V

входнойслой

скрытыйслой

выходнойслой

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 31 / 61

Page 38: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Двуслойный перцептрон

x y

W V

входнойслой

скрытыйслой

выходнойслой

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 31 / 61

Page 39: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Двуслойный перцептрон

x y

W V

входнойслой

скрытыйслой

выходнойслой

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 31 / 61

Page 40: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Формальное описание двуслойного перцептрона

Формально, двухслойный перцептрон характеризуется тремячислами n, m и k , и двумя матрицами W и V :

I N — число входных нейронов, другими словами, размерностьвходного сигнала;

I M — число скрытых нейронов;I K — число выходных нейронов, размерность выходного сигнала;I W = {wij ∈ R, i = 1 . . .N, j = 1 . . .M} — матрица синаптических

весов, связывающих входные и скрытые нейроны;I V = {vjk ∈ R, j = 1 . . .M, k = 1 . . .K} — матрица синаптических

весов, связывающих скрытые и выходные нейроны.

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 32 / 61

Page 41: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Функционирование двуслойного перцептрона

Пусть входной сигнал представляет собой вектор

X = {x1, . . . , xN}.

Тогда работа перцептрона описывается следующими формулами:

1) pj =N∑

i=1wijxi — взвешенное суммирование j-ым скрытым нейроном

входных сигналов;2) zj = f (pj) — преобразование суммы активационной функцией,

выход j-го скрытого нейрона;

3) qk =M∑j=1

vjkzj — взвешенное суммирование выходов скрытого слоя

k-ым выходным нейроном;4) yk = f (qk) — преобразование суммы активационной функцией,

выход k-го выходного нейрона.

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 33 / 61

Page 42: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Выбор активационной функции

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

f (x) =1

1+ e−x .

Эта функция интересна тем, что ее производная вычисляетсялегко через значение самой функции:

f ′(x) = f (x)(1− f (x)),

что является полезным с точки зрения некоторых алгоритмовобучения.

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 34 / 61

Page 43: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Обучение многослойных перцептронов

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 35 / 61

Page 44: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Схема метода

Пусть обучающий набор состоит из пар (x , t), где x — некоторыйсигнал, t — желаемый отклик сети на сигнал x . Будем подавать внекотором порядке сигналы из обучающего набора на входперцептрона. На каждый из них сеть выдает некоторый отклик y ,разность e = y − t — это вектор ошибки (для одного примера).Образуем скалярную функцию ошибки, зависящую от весов W иV , и равную среднеквадратичному всех компонент вектора e:

E (W ,V ) =12

K∑k=1

(yk − tk)2.

В этой формуле yk является функцией входов xi и весов W и V .Несложно найти частные производные функции E относительнопеременных всех имеющихся переменных (основная формула —производная сложной функции).

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 36 / 61

Page 45: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Вычисление градиента функции ошибки

1)∂E∂yk

= yk − tk = ek ; pj =N∑

i=1wijxi ;

zj = f (pj);

qk =M∑j=1

vjkzj ;

yk = f (qk);

E =12

K∑k=1

(yk − tk)2.

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 37 / 61

Page 46: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Вычисление градиента функции ошибки

1)∂E∂yk

= yk − tk = ek ;

2)∂E∂qk

=∂E∂yk

∂yk

∂qk= ek f ′(qk) = δqk ;

pj =N∑

i=1wijxi ;

zj = f (pj);

qk =M∑j=1

vjkzj ;

yk = f (qk);

E =12

K∑k=1

(yk − tk)2.

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 37 / 61

Page 47: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Вычисление градиента функции ошибки

1)∂E∂yk

= yk − tk = ek ;

2)∂E∂qk

=∂E∂yk

∂yk

∂qk= ek f ′(qk) = δqk ;

3)∂E∂vjk

=∂E∂qk

∂qk

∂vjk= δqk zj ;

pj =N∑

i=1wijxi ;

zj = f (pj);

qk =M∑j=1

vjkzj ;

yk = f (qk);

E =12

K∑k=1

(yk − tk)2.

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 37 / 61

Page 48: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Вычисление градиента функции ошибки

1)∂E∂yk

= yk − tk = ek ;

2)∂E∂qk

=∂E∂yk

∂yk

∂qk= ek f ′(qk) = δqk ;

3)∂E∂vjk

=∂E∂qk

∂qk

∂vjk= δqk zj ;

4)∂E∂zj

=K∑

k=1

∂E∂qk

∂qk

∂zj=

K∑k=1

δqkvjk = δzj ;

pj =N∑

i=1wijxi ;

zj = f (pj);

qk =M∑j=1

vjkzj ;

yk = f (qk);

E =12

K∑k=1

(yk − tk)2.

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 37 / 61

Page 49: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Вычисление градиента функции ошибки

1)∂E∂yk

= yk − tk = ek ;

2)∂E∂qk

=∂E∂yk

∂yk

∂qk= ek f ′(qk) = δqk ;

3)∂E∂vjk

=∂E∂qk

∂qk

∂vjk= δqk zj ;

4)∂E∂zj

=K∑

k=1

∂E∂qk

∂qk

∂zj=

K∑k=1

δqkvjk = δzj ;

5)∂E∂pj

=∂E∂zj

∂zj

∂pj= δzj f ′(pj) = δpj ;

pj =N∑

i=1wijxi ;

zj = f (pj);

qk =M∑j=1

vjkzj ;

yk = f (qk);

E =12

K∑k=1

(yk − tk)2.

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 37 / 61

Page 50: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Вычисление градиента функции ошибки

1)∂E∂yk

= yk − tk = ek ;

2)∂E∂qk

=∂E∂yk

∂yk

∂qk= ek f ′(qk) = δqk ;

3)∂E∂vjk

=∂E∂qk

∂qk

∂vjk= δqk zj ;

4)∂E∂zj

=K∑

k=1

∂E∂qk

∂qk

∂zj=

K∑k=1

δqkvjk = δzj ;

5)∂E∂pj

=∂E∂zj

∂zj

∂pj= δzj f ′(pj) = δpj ;

6)∂E∂wij

=∂E∂pj

∂pj

∂wij= δpj xi .

pj =N∑

i=1wijxi ;

zj = f (pj);

qk =M∑j=1

vjkzj ;

yk = f (qk);

E =12

K∑k=1

(yk − tk)2.

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 37 / 61

Page 51: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Обновление синаптических весов

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

wij ← wij − η∂E∂wij

и vjk ← vjk − η∂E∂vjk

,

где η — параметр, регулирующий скорость изменения весов.

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 38 / 61

Page 52: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Обратное распространение ошибки

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 39 / 61

Page 53: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Недостатки метода Backpropagation

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 40 / 61

Page 54: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Рекуррентные сети

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

1) подавать на вход некоторый сигнал и дожидаться стабилизациивыходного сигнала сети;

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 41 / 61

Page 55: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Рекуррентные перцептроны

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 42 / 61

Page 56: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Сеть Джордана

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 43 / 61

Page 57: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Устройство сети Джордана

контекстныйслой

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 44 / 61

Page 58: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Сеть Элмана

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 45 / 61

Page 59: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Устройство сети Элмана

контекстныеслои

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 46 / 61

Page 60: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Обучение рекуррентных сетей

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 47 / 61

Page 61: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

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

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 48 / 61

Page 62: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

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

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

входного сигнала совпадает с размером сети);I далее в течение некоторого количества временных шагов

происходит асинхронная обработка сигнала (каждый нейрон внекотром случайном порядке обрабатывает свои входы, генерируетвыход и рассылает его всем другим нейроном);

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 49 / 61

Page 63: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Нейроны в сети Хопфилда

Каждый нейрон в сети Хопфилда может находится в двухсостояниях, обозначаемых +1 и −1.Матрица W синаптических весов является симметричной снулевой диагональю и целочисленными коэффициентами.Активационная функция нейронов имеет вид

f (x) ={

+1, если x ≥ 0,−1, если x < 0.

Таким образом, сеть Хопфилда является еще одним примеромдискретной нейронной сети (как и перцептрон Розенблатта).

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 50 / 61

Page 64: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Обучение сети Хопфилда

Обучение сети Хопфилда на множестве обучающих примеров Pсводится к установлению синаптических весов согласно формуле

wij =∑p∈P

pipj .

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 51 / 61

Page 65: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Обучение сети Хопфилда

Несмотря на то, что в обучающих примерах нет явного указанияжелаемого отклика сети на заданный входной сигнал,предполагается, что выход для примеров из обучающего примерадолжен быть равен входу. Т. е. обучение сети Хопфилда являетсявсе-таки обучением с учителем.Цель обучения — при предъявлении сети некоторого сигнала xсеть должна за конечное число шагов сойтись к некоторомуустойчивому состоянию — наиболее близкому к x сигналу из P .Таким образом, сеть Хопфилда выполняет функциюассоциативной памяти. Ёмкость такой памяти примерно равнавеличине 0.14n, где n — число нейронов сети. Причем, в случае«запоминания» близких сигналов, возможно образование ложныхассоциаций, когда сеть на сигнал x ∈ P выдает не x , а другойсигнал y ∈ P .

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 52 / 61

Page 66: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Пример сети Хопфилда

Обучающий набор для сети Хопфилда(два образа для запоминания)

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 53 / 61

Page 67: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Пример сети Хопфилда

Распознавание зашумленных образов сетью Хопфилда

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 54 / 61

Page 68: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Приложения искусственных нейронных сетей

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

I приближение функций: регрессионный анализ, предсказаниевременных рядов (финансовые приложения);

I распознавание образов: радары, распознование лиц, почерка, речи,медицинская диагностика и т. д.;

I обработка данных: классификация, кластеризация, фильтрация,сжатие данных;

I управление: технологические процессы и системы, транспортныесредства, манипуляторы, робототехника;

I системы принятия решений: игры, экспертные системы.

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 55 / 61

Page 69: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Алгоритмические возможности нейронных сетей

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

y

x 2

2

x ∧ y3 y

x 2

2

x ∨ y1

x −2 x̄−1

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 56 / 61

Page 70: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Параллельная реализация

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 57 / 61

Page 71: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Параллельная реализация

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 58 / 61

Page 72: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Параллельная реализация

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

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 59 / 61

Page 73: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Библиография

1 Ф. Розенблатт, Принципы нейродинамики: Перцептроны и теориямеханизмов мозга — М.: Мир, 1965.

2 М. Минский, С. Пейперт, Персептроны — М.: Мир, 1971.

3 Ф. Уоссермен, Нейрокомпьютерная техника: Теория и практика —М.: Мир, 1992.

4 С. Хайкин, Нейронные сети: Полный курс — М.: «Вильямс», 2006.

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 60 / 61

Page 74: Лекция 6 :: Искусственные нейронные сетиhpc-education.ru/files/lectures/2011/ershov/ershov_2011...Биологический прототип Биологическимпрототипомискусственныхнейронныхсетей

Спасибо за внимание!

Ершов Н.М. (ВМК МГУ) Лекция 6 :: Нейронные сети ЕМПВ :: 2011 61 / 61