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

2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

2.4.Нейросетевой подход в распознавании

образов

Идея:

•моделирование процессов, происходящих в нервной

системе живых организмов при обработке

поступающей информации.

•мозг гораздо быстрее и точнее компьютера может

обрабатывать аналоговую информацию: распознавать

изображения, вкус, звуки, читать чужой почерк,

оперировать качественными понятиями.

Page 2: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход
Page 3: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

Мозг человека состоит из белого и серого веществ:

белое – это тела нейронов, а серое – это

соединительная ткань между нейронами, или аксоны

и дендриты. Мозг состоит примерно из 1011

нейронов, связанных между собой.

Нейрон может иметь до 10000

дендритов. Таким образом,

мозг содержит примерно 1015

взаимосвязей.

Нейроны взаимодействуют

посредством серий

импульсов, длящихся

несколько миллисекунд,

каждый импульс - сигнал с

частотой 1-100 герц.

Page 4: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

Нейронная сеть • Совокупность соединенных между собой нейронов;

• Сеть осуществляет преобразование входного

сигнала с рецепторов в выходной, являющейся

реакцией организма на внешнюю среду.

Мозг – система из параллельных «процессоров».

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

Page 5: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

Модель кибернетического

нейрона

McCulloch, W. and Pitts, W. (1943)

1x2x

...

dx

1w

2w

...

dw

fy

Вход

ной

си

гнал

Синаптические

веса

Блок суммирования

Блок

преобразования

Выходной

сигнал

1

d

i i

i

y f w x

f – переходная

функция, функция

активации

Потенциал

нейрона

1

2

...

d

x

x

x

Page 6: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

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

и т.д.

rectifier linear

unit (ReLU)

Page 7: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

ЛЛииннееййнныыйй ддииссккррииммииннааннтт ФФиишшеерраа:: 0( ) j j

j

f x sign w x w

Модель линейного персептрона (персептрон Розенблатта):

0( , ) ( )j j

j

f x w w x w ,

где ( ) функция активации (в частности, sign). Можно ввести

0 1x

1x

2x

f

nx

0

1 0

,n n

j j j j

j j

w x w w x w x

Page 8: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

Пример. Функции И, ИЛИ, НЕ от булевых переменных 1X и 2X :

1 2 1 2

30 ;

2X X X X

1 2 1 2

10 ;

2X X X X

1 1

10 ;

2X X

([ ] ) – индикаторная функция.

X1

X2 X2 X1

Page 9: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

ЗЗааддааччаа ооббууччеенниияя ппееррссееппттррооннаа:: - подобрать веса w так, чтобы ошибка на обучающей выборке была минимальной.

Алгоритм Розенблатта (коррекции ошибок):

Пусть 1,2,...t - номер шага (эпохи);

1. Случайным образом задаются веса (0)w ;

2. По очереди предъявляются объекты выборки;

для каждого объекта ( )ix вычисляется выход (расстояние до разделяющей гиперплоскости с учетом знака)

( ) ( ),i iy w x ;

3. Если ( ) ( ) 0i iy y , то веса не изменяются;

4. Если ( ) 0iiy y , то проводится коррекция (правило Хебба):

( )( 1) ( )iiw t w t x y ,

где 0 - параметр (темп обучения).

При этом будет выполняться: ( ) ( ) ( ) ( ) ( )( 1) ( 1), ( ) ,i i ii i i i iy t y w t x y w t x y x y

( ) ( ) ( ) ( )( ), , || ||;i i i i ii i i iw t x y x y x y y y x

0сдвиг в «правильном»

направлении

Page 10: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

5. Повторяются 2)-4) пока не выполнится правило останова: а) веса ( )w t перестали изменяться; или

б) ошибка распознавания стала меньше заданного параметра.

Page 11: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

ТТееооррееммаа ((ННооввииккоовв,, 11996622))..

Пусть выборка 1

,N

i i

i

x y

линейно разделима, т.е.

, 0 : ,

i iw w x y для всех 1,...,i N .

Тогда алгоритм Розенблатта находит вектор весов w:

разделяющий обучающую выборку без ошибок;

при любом (0)w ;

при любом темпе обучения 0 ;

независимо от порядка объектов;

за конечное число итераций;

если (0) 0w , то число итераций max 2

1max || ||

it x

.

Page 12: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

Правило Розенблатта (“delta-rule”, “error-correcting learning”)

( ) ( )( 1) ( ) i iw t w t x ,

где ( ) ( ) ( )i ii t y y t .

Веса изменяются так, чтобы уменьшить разницу между

выходом (( )iy ) и целевым значением (

( )iy ).

Качество персептрона (суммарная ошибка): 2( ) ( )1 1

( ) ( ) min2 2

i ii

i i

Q w Q y y

чтобы локально минимизировать Q , на каждом шаге нужно

корректировать веса: ( 1) ( ) ij j

j

Qw t w t

w

;

( )

( )( ) ( ) ( )

( )( ) ( )

i

ii i ii i

ij j

Q Q yy y x

w wy

( ) ( )( 1) ( ) i iw t w t x

Page 13: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

Направления дальнейшего развития

алгоритма Розенблатта:

• использование произвольной функции потерь

(частота ошибки => риск);

• поиск наилучшего способа инициализации весов;

• изменить порядок рассмотрения объектов:

•а) случайный;

•б) оказывать большее внимание объектам,

которые дают ошибку;

•в) не рассматривать объекты – выбросы;

• изменение темпа обучения (ηt=1/t); скорейший

градиентный спуск; пробные случайные шаги;

Page 14: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

Основной недостаток линейного персептрона:

• алгоритм работает только для линейно разделимых

образов

?

Выход: использовать многослойный персептрон

Page 15: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

Пример: функция XOR Функция 1 2 1 2[ ]X X X X не реализуется одним

нейроном. Два способа реализации - добавление нелинейного признака:

1 2 1 2 1 2[ 2 1 2 0]X X X X X X ;

- Сеть (суперпозиция) функций И, ИЛИ, НЕ:

1 2 1 2 1 2[( ) ( ) 1 2 0]X X X X X X

Page 16: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

Верхние индексы в скобках (m), m=1,2 - номер слоя нейрона.

Для обозначения структуры сети используется кодировка

“n-L-K".

K= число образов.

Структурная

схема

двухслойного

персептрона.

n

1n

Ln

~

~

1L

K

KL

K

Page 17: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

Выходные сигналы нейронных слоев:

Функции активации всех нейронов сети одинаковы.

(1)

0

, 1,...,n

l l j j

j

g f w x l L

(2) (2) (1)

0 0 0

, 1,...,L L n

q ql l ql l j j

l l j

y f w g f w f w x q K

Page 18: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

Можно ли произвольную функцию представить нейросетью? Утверждение. Любая булева функция представима в виде ДНФ, следовательно, и в виде двухслойной сети.

Решение тринадцатой проблемы Гильберта:

Теорема (Колмогоров, 1957) Любая непрерывная функция n аргументов на

единичном кубе [0,1]n представима в виде суперпозиции

непрерывных функций одного аргумента и операции сложения:

2 1

1 ,1 1

( ,..., ) ( )n n

n k i k ik i

f x x h x

,

где ,,k i kh - непрерывные функции одного аргумента.

Page 19: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

С помощью суперпозиции

линейных функций и нелинейной

функции активации можно

аппроксимировать любую

непрерывную функцию с любой

заданной точностью

Page 20: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

Обучение многослойного персептрона

Задача: найти такие веса, чтобы суммарная ошибка

обучения была минимальной

2

( ) ( )

1 1

1( ) ( ) min

2

N Ki i

q qw

i q

Q w y x yΣ

.

Page 21: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

ААллггооррииттмм ссттооххаассттииччеессккооггоо

ггррааддииееннттаа::

1.Задать случайные веса (1) (2)( (0), (0)), 1,..., , 1,...,lj qlw w l L q K ;

2.Повторять для 1,2,...t :

3.Вычислить критерий ( )Q w tΣ

;

4.Для каждого i -го объекта ( 1,...,i N ): положим

( ) ( )

( )

( ( ))( 1) ( )

( )

h h

mk mk h

mk

Q w tw t w t

w t

;

5.Продолжать 2)-4), пока либо критерий, либо веса не стабилизируются.

Page 22: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

ННааххоожжддееннииее ггррааддииееннттаа –– ттррууддооееммккааяя ооппеерраацциияя..

ММееттоодд ооббррааттннооггоо рраассппррооссттррааннеенниияя оошшииббоокк –– ппооззввоолляяеетт

ээффффееккттииввнноо ееггоо ввыыччиисслляяттьь..

Суммарная ошибка для объекта ( )ix : 2

( ) ( )

1

1( ) ( )

2

Ki i

q q

q

Q y y x y

.

Частная производная:

( ) ( )( ) i i

q q q

q

Q yy y

y

- ошибка для объекта ( )ix на выходе

сети.

Частные производные по выходам скрытого слоя:

2

(2) ( ) ( ) (2)

1 0 1

( ) 1

2

qy

K L Ki i

ql l q q q q ql

q l ql l

Q gf w g y y y f w

g g

( ) (2) ( )

def1

Ki i

q q ql l

q

f w

- ошибка на l -м выходе скрытого слоя,

1,...,l L .

Page 23: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

Таким образом, ( )i

l можно вычислить по ( ) , 1,...,i

q q K :

( ) ( ) (2)

1

Ki i

l q q ql

q

f w

.

То есть как бы в обратном направлении:

( )i

l Σ

( )

1 1

i f

( )i

K Kf

...

(2)

1lw

(2)

Klw

Нахождение производной f :

например, для сигмоидальной переходной функции:

2

1 1 1( ) 1 ( ) 1 ( )

1 1 11

u

u u uu

ef u f u f u

e e ee

.

Page 24: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

Найдем частные производные по весам (как производные сложной функции):

( )

(2) (2)

( ( )) ( ), 1,..., , 1,...,

q i

q q l

ql q ql

yQ y w Q yf g q K l L

w y w

,

( )

(1) (1)

( ( )) ( ), 1,..., , 0,1,...,il

l l j

l j l l j

gQ g w Q gf x l L j n

w g w

,

где

(2)

0

L

q ql l

l

f f w g

,

(1)

0

n

l l j j

j

f f w x

.

Page 25: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

ААллггооррииттмм ооббррааттннооггоо рраассппррооссттррааннеенниияя

1. Задать случайным образом начальные веса (0)h

mkw ;

2. Для 1,2,...t повторять:

3. Для всех объектов , 1,...,

ix i N повторять:

4. Прямой ход: (1) ( )

0

, 1,...,n

i

l l j j

j

g f w x l L

;

(2) ( ) ( ) ( )

0

, , 1,...,L

i i i

q ql l q q q

l

y f w g y y q K

;

2

( )

1

( )K

i

q

q

Q w t

;

5. Обратный ход: ( ) ( ) (2)

1

, 1,...,K

i i

l q q ql

q

f w l L

;

(2) (2) ( )( 1) ( ) , 1,..., , 1,...,i

ql ql q q lw t w t f g q K l L ;

(1) (1) ( ) ( )( 1) ( ) , 1,..., , 0,1,...,i i

lj lj l l jw t w t f x l L j n .

6. Повторять 2)-5) пока либо критерий Q, либо веса w не

стабилизируются.

Page 26: 2.4.Нейросетевой подход в распознавании образовmath.nsc.ru/AP/datamine/stud/mmadChapter2Neural.pdf · 2.4.Нейросетевой подход

Достоинства алгоритма

• градиент вычисляется за небольшое число шагов;

• алгоритм можно обобщить на произвольную

функцию потерь и произвольную функцию активации;

• можно обучаться в динамике;

• можно распараллелить процесс обучения.

Недостатки алгоритма

• возможна медленная сходимость; «застревание» в

локальном минимуме;

• зависимость от порядка объектов;

• проблема переобучения;

• непонятно, как задавать архитектуру сети, параметры

алгоритма обучения;

• персептрон – «черный ящик»!