дбс1 1

40
Динамические байесовские сети и их приложения. Смирнова Н.В. ИПУ РАН, 2011 1

Upload: natalia-smirnova

Post on 08-Jul-2015

486 views

Category:

Technology


0 download

DESCRIPTION

dynamic bayesian network, particle filter algorithm

TRANSCRIPT

Page 1: дбс1 1

Динамические байесовские сети и

их приложения.

Смирнова Н.В.

ИПУ РАН, 2011 1

Page 2: дбс1 1

Определение БС - 1

БС – графическая вероятностная модель

A, B булевские (принимают значения из {true, false}

(могут быть непрерывными, дискретными) 2

A

B

( ) 0.5P a

( | ) 0.9P b a

( | ) 0.3aP b

Page 3: дбс1 1

Используемые обозначения - 1

( )P A true ( )P a

( )P A false ( )P a

( ) ( ), ( )aP A P a P

( )P A - вектор,

3

Априорная вероятность всех возможных значений

сл. величины:

Page 4: дбс1 1

Используемые обозначения - 2

- вектор, полное совместное распределение ( , , )P A B C

случайных величин , ,A B C

( , , ) ( , , ), ( , , ),..., ( , , )c a b cP A B C P a b c P a b P

|( | ) ( | ), ( | ), ( | ), ( )a b a bP A B P a b P b P a P

4

Page 5: дбс1 1

Определение вероятности, используемое в байесовских сетях-1

«пациент болеет бронхитом»

( , )( )

( | ) P d sP s

P d s

5

D

S«у пациента есть одышка»

( , ), ( )P d s P s - такая информация обычно недоступна.

Классический подход:

Page 6: дбс1 1

Определение вероятности, используемое в байесовских сетях-2

независимых

6

n

nиспытаний,

Объективная

частота

оценки

совместного

появления событий

Субъективная

вероятность

Page 7: дбс1 1

Определение вероятности, используемое в байесовских сетях-3

7

D

S

( ) 0.3P d

( | ) 0.9P s d

( | ) 0.3dP s

болеет бронхитом

жалуется на одышку

( , )( | )( , ) ( , )

P d sP d sP d s P d s

( , ) ( | ) ( )P d s P s d P d ( , ) ( | ) ( )P d s P s d P d

Page 8: дбс1 1

Эффект

«оттеснения других объяснений»-1

A

( ) 0.7P a

0.9( | , )P c a b

, 0.4( | )a bP c

бронхит

B

туберкулез

С

кашель

( ) 0.3P b

0.7( | , )bP c a

, 0.1( | )a bP c

Page 9: дбс1 1

Эффект

«оттеснения других объяснений»-2

9

A бронхит

B

туберкулез

С

кашель

( | ) 0.903P a c ( | ) 0.382P b c ( | , ) 0.355P b a c ( | , ) 0.84P a b c

Эффект: формальная запись

Неформальная запись:

Известно: одышка, бронхит, тогда P(туберкулез)

Известно: одышка, туберкулез, тогда P(бронхит)

Page 10: дбс1 1

Эффект

«оттеснения других объяснений»-3

10

, ,

( , ) ( , , ) ( , , ) ( , , )A a B C c

P a c P A B C P a b c P a b c

( , ) 0.532P a c

( , , ) 0.189, ( , , ) 0.343P a b c P a b c

( , , ) ( ) ( ) ( | , )P a b c P a P b P c a b

( , )( | )( , ) ( , )

P a cP a cP a c P a c

( , , ) 0.036, ( , , ) 0.021P a b c P a b c

( , ) 0.057P a c

0.532( | ) 0.9030.532 0.057

P a c

(Расчеты к

предыдущему

примеру)

Page 11: дбс1 1

Эффект

«оттеснения других объяснений»-4

11

, ,

( , ) ( , , ) ( , , ) ( , , )A B b C c

P b c P A B C P a b c P a b c

( , ) 0.225P b c

( , , ) 0.189, ( , , ) 0.036P a b c P a b c

( , , ) ( ) ( ) ( | , )P a b c P a P b P c a b

( , )( | )( , ) ( , )

P b cP b cP b c P b c

( , , ) 0.343, ( , , ) 0.021P a b c P a b c

( , ) 0.364P b c

0.225( | ) 0.3820.225 0.364

P b c

(Расчеты к

предыдущему

примеру)

Page 12: дбс1 1

Эффект

«оттеснения других объяснений»-5

12

( , , ) 0.189, ( , , ) 0.343P b a c P b a c

( , , )( | , )( , , ) ( , , )

P b a cP b a cP b a c P b a c

0.189( | , ) 0.3550.189 0.343

P b a c

(Расчеты к

предыдущему

примеру)

( , , )( | , )( , , ) ( , , )

P a b cP a b cP a b c P a b c

0.189( | , ) 0.840.189 0.036

P a b c

Page 13: дбс1 1

Определение ДБС-1 ДБС определяется как БС следующего вида:

… 0X

1X

nX

1E

nE

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

состояний, изменяющихся с течением

времени

Каждое состояние зависит только

от предыдущего

Каждое состояние

характеризуется скрытыми и

наблюдаемыми переменными

tX - скрытые,

tE - наблюдаемые

переменные

Page 14: дбс1 1

Определение ДБС-2. Пример «с

зонтиком» Охранник никогда не выходит на улицу.

По утрам охранник видит директора (иногда с зонтиком)

Какова вероятность дождя на улице?

1tRain

1tUmbrella

tX

tE

… tRain

tUmbrella

1tRain

1tUmbrella

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

,...,1 t

X X ,1 : t

X ,...,1 t

x x 1 : t

x

Page 15: дбс1 1

Определение ДБС-3. Задаваемые

параметры

… 0X

1X

nX

1E

nE

Параметры:

0( )P X

1)( |

t tP X X

( | )t t

P E X

«модель перехода»

«модель наблюдения»

Page 16: дбс1 1

Определение ДБС-4. Пример «с

зонтиком»

0R

1R

1U

0( ) 0.5rP R

1( | ) 0.7

t tr rP R R

1( | ) 0.3

t tr rP R R

( | ) 0.9t t

u rP U R

( | ) 0.2t t

u rP U R

Page 17: дбс1 1

Основные формулы

вероятностного вывода в ДБС

( , )( )

( | ) P A BP B

P A B

1

( ) ( | )( )n

i ii

P A P B AP B

(1)

(2)

(опр. усл. вер.)

(ф-ла полн. вер.)

17

0( ),P X

1,( | )

t tP X X

( | ),

t tP X E

0 : 1 1( | ) ( | ),

t t t tP X X P X X

0 : 0 : 1,( | ) ( | ),

t t t t tP E X E P E X

(параметры ДБС)

(предположения)

0 1 1 0, ,..., ,...,

11

( ) ( ) ( | ) ( | )t

t

i i i ii

P X X E E P X P X X P E X

(3)

Page 18: дбс1 1

Основные задачи вероятностного

вывода в ДБС-1

1 : |( )

t teP X(1)

# вероятность дождя сегодня, если даны все

результаты наблюдений за директором

Фильтрация (текущий контроль):

18

1 : |( ), 0

t k teP X k

(2)

# вероятность дождя через несколько дней,

если даны все результаты наблюдений за

директором

Предсказание:

Page 19: дбс1 1

Основные задачи вероятностного

вывода в ДБС-2

1 : |( ), 0

k teP X k t

(3)

# вероятность того, что дождь шел в прошлую

среду, если даны все результаты наблюдений

за директором

Сглаживание (ретроспективный анализ):

19

1 : 1 :

1 : t

arg max |( )t t

X

eP X

(4)

# если директор приходил с зонтиком первые

три дня, а в четвертый – без зонтика, найти

погоду в каждый из прошедших дней

Наиболее правдоподобное объяснение:

Page 20: дбс1 1

Вероятностный вывод в ДБС. 1

способ (неэффективный)

Воспринимать ДБС как обыкновенную БС:

2 1 : 2( | ) ?P X E

2 1 22 1 2

22 1 2 1 2

( , , )( | , )

( , , ) ( , , )

P x e eP x e e

P x e e P x e e

0X

1X

2X

1E

2E

(опр. усл. вер.

+

прием «нормализация»)

, , , , , , , , , ,2 1 2 0 1 2 1 2 0 2 1 2 1 2 1 21 0

( , ) ( , ) ( , ) ( , )P x e e P x x x e e P x x x e e P x x x e e

, , ,2 1 20 1

( , )P x x x e e (ф-ла полн. вер.)

, , , | | | |0 1 2 1 2 0 1 0 1 1 2 1 2 2

( , ) ( ) ( ) ( ) ( ) ( )P x x x e e P x P x x P e x P x x P e x (декомп.)

Page 21: дбс1 1

Вероятностный вывод в ДБС. 2

способ (эффективный)-1

Два вида шагов:

1. проектирование распределения вероятностей

предыдущего состояния от t к t+1

(используется )

2. Обновление распределения вероятностей текущего

состояния

(используется )

В памяти хранится только:

1( | )

t tP X X

( | )t t

P E X tX

tE

1( | )

t tP X X

( | )t t

P E X

Page 22: дбс1 1

Вероятностный вывод в ДБС. 2

способ (эффективный)-2

Продолжая «пример с зонтиком»: пусть было

Получили: конкретное значение

0

R1

R

1U

(1)

(2)

(1) : 1 1

1

( | ) ( ),

( )t t t t

t t

P R R P RrR R r

P R

(2) : ( , )|

( , ) ( , )( )

t tt t

t t t t

P R r Ur

P R r U P R r UP R U

1U

0R

Достраиваем:

, |( ) ( ) ( )t t t t t

r r rPP R U P U R R

Получили: Ждем 1R

2...U

цикл

Page 23: дбс1 1

Дано: - случайная величина с областью значения

Вероятностный вывод в ДБС.

Алгоритм фильтрации частиц-1

Операция сэмплирования : ( )sample X

X

1,...,{ }

nx x

,1k

x k n

Выбор осуществляется с помощью k

x ( ) ( ( ))i i

P X x P x

ix

( )i

P X x

1 2 3

0.3 0.6 0.1#

Page 24: дбс1 1

Вероятностный вывод в ДБС.

Алгоритм фильтрации частиц-2

0 1

1( )P x

2( )P x 3

( )P x

Возможный способ осуществления :

генерируется случайное число

( )sample X

[0, 1]s

(1)

(2)

(3) 1

2

3

, 1

, 1 2

, 2 3

если [0, )

( ) если [ , )

если [ , ]

x s p

sample X x s p p

x s p p

1p

2p

Page 25: дбс1 1

Результатом является совокупность

конкретных значений всех узлов байесовской сети

Вероятностный вывод в ДБС.

Алгоритм фильтрации частиц-3

( )sample BN

0R

1R

1U

# 0 1 1( ) { , , }sample BN R r R r U u

последовательное применение

к каждому узлу сети

в топологическом порядке

Реализация :

( )sample X

Для наблюдаемых переменных берется наблюденное

значение

( )sample BN

Page 26: дбс1 1

а)

возвращает:

Вероятностный вывод в ДБС.

Алгоритм фильтрации частиц-4

1X

2X

-совокупность конкретных значений (выборку) БС,

-вес выборки (насколько согласуется с наблюдениями)

1( ) 0.3P x

2 1( | ) 0.8P x x

2 1( | ) 0.7xP x

Операция : ( )Weighted sample BN

Пусть известно наблюдение

1 2{ , },x x тогда вес выборки

2 1( | ) 0.8W P x x

#

2 2X x и получена выборка

б) 1 2{ , },x x тогда вес выборки

2 1( | ) 0.7W P x x

Page 27: дбс1 1

Вероятностный вывод в ДБС.

Алгоритм фильтрации частиц-5

Теперь объяснение всего алгоритма фильтрации на

«примере с зонтиком»

0R

1R

1U

1 1( | ) ?P R U u

Шаг 1. С помощью

формируем N взвешенных выборок

ДБС (пусть N=10 для наглядности)

( )Weighted sample BN

1 0 1 1 1 1 1{ , , }, ( ) ( | )S R r R r U u W S P U u R r

1 0 1 1 1 1 1{ , , }, ( ) ( | )S R r R r U u W S P U u R r

1 0 1 1 1 1 1{ , , }, ( ) ( | )S R r R r U u W S P U u R r

#

Page 28: дбс1 1

Вероятностный вывод в ДБС.

Алгоритм фильтрации частиц-6

1 0 1 1 1 1 1{ , , }, ( ) ( | )S R r R r U u W S P U u R r

2 0 1 1 2 1 1{ , , }, ( ) ( | )S R r R r U u W S P U u R r

3 0 1 1 3 1 1{ , , }, ( ) ( | )S R r R r U u W S P U u R r

4 0 1 1 4 1 1{ , , }, ( ) ( | )S R r R r U u W S P U u R r

5 0 1 1 5 1 1{ , , }, ( ) ( | )S R r R r U u W S P U u R r

6 0 1 1 6 1 1{ , , }, ( ) ( | )S R r R r U u W S P U u R r

7 0 1 1 7 1 1{ , , }, ( ) ( | )S R r R r U u W S P U u R r

8 0 1 1 8 1 1{ , , }, ( ) ( | )S R r R r U u W S P U u R r

10 0 1 1 10 1 1{ , , }, ( ) ( | )S R r R r U u W S P U u R r

9 0 1 1 9 1 1{ , , }, ( ) ( | )S R r R r U u W S P U u R r

Page 29: дбс1 1

6 выборок типа с весом 0.1

(веса см. по таблицам условных вероятностей)

2 выборки типа с весом 0.8

2 выборки типа с весом 0.8

Вероятностный вывод в ДБС.

Алгоритм фильтрации частиц-7

1 0 1 1{ , , }S R r R r U u

2 0 1 1{ , , }S R r R r U u

3 0 1 1{ , , }S R r R r U u

Далее формируем случайную величину : S

is

( )i

P S s

1#S

0.16 0.42 0.42

2#S

3#S

1

0.1 6( )0.1 6 2 0.8 2 0.8

P S s

Page 30: дбс1 1

Вероятностный вывод в ДБС.

Алгоритм фильтрации частиц-8

N раз применяем операцию сэмплирования к : S

is

( )i

P S s

1#S

0.16 0.42 0.42

2#S

3#S

Получаем (например):

1 выборка типа

3 выборки типа

6 выборок типа

1S

2S

3S

Page 31: дбс1 1

Вероятностный вывод в ДБС.

Алгоритм фильтрации частиц-9

Теперь можем вычислить ответы на поставленные

вопросы.

Имеем: 1 выборка типа

3 выборки типа

6 выборок типа

1S

2S

3S

1 0 1 1{ , , }S R r R r U u

2 0 1 1{ , , }S R r R r U u

3 0 1 1{ , , }S R r R r U u

11

1

(выборок, где )( | )

(выборок)

N R rP R r U u

N

1 11 1

1 3 6 9( | ) , ( | )10 10 10

P R r U u P R r U u

Page 32: дбс1 1

Вероятностный вывод в ДБС.

Алгоритм фильтрации частиц-10

Шаги алгоритма:

1. формируется N взвешенных выборок ДБС

2. на основе этих данных составляется случайная

величина S, значениями которой являются ссылки на

сгенерированные типы выборок

3. N раз Sample(S) – получаем N «новых» выборок

4. с помощью простой формулы на «новых» выборках

вычисляем ответы на интересующие нас вопросы

Page 33: дбс1 1

Применение ДБС-1. Задача

локализации робота.

Page 34: дбс1 1

Применение ДБС-2. Задача

локализации робота.

Два основных вопроса:

1) Как представлять состояние робота

(требуется много памяти или нет?)

2)Что представляют собой «модели наблюдения»

и «модели перехода»?

2): не хранятся в памяти в виде таблиц.

Рассчитываются по формулам!

1) см. далее.

Page 35: дбс1 1

Применение ДБС-3. Задача

локализации робота.

0.0 0.1

0.0 0.0

0.0

0.2

0.0 0.2 0.5

Состояние робота представляется с

помощью частиц

Частица: ( , ): ( , ) 0x y P X x Y y

В памяти компьютера:

(1,2),

(2,3), (2,3),

(3,2), (3,2),

(3,3), (3,3), (3,3), (3,3), (3,3)

Page 36: дбс1 1

Применение ДБС-4. Задача

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

Page 37: дбс1 1

Применение ДБС-5. Задача

локализации робота. Частицы взвешиваются согласно модели наблюдений

Page 38: дбс1 1

Применение ДБС-6. Задача

локализации робота. Генерируются новые частицы с помощью операции

сэмплирования:

(у новых частиц

веса все равны 1)

Наиболее

вероятное

местоположение

робота

Page 39: дбс1 1

Спасибо за

внимание!

39

Page 40: дбс1 1

Инф. источники:

Большое количество слайдов/

Рассел, Норвиг «Искусственный интеллект: современный подход»

Слайд 5-8,9/

http://sapr.mgsu.ru/biblio/ex-syst/Glava9/Index4.htm

Слайд 24/

Д. Кнут. Том 2. Глава 3

Слайды 33, 35-38/

CS 221: Artificial Intelligence. Lecture 5: Hidden Markov Models and

Temporal Filtering (Thrun, Norvig)