2. Определение БС - 1
БС – графическая вероятностная модель
A P(a) 0.5
P(b|a) 0.9
B P(b|a) 0.3
A, B булевские (принимают значения из {true, false}
(могут быть непрерывными, дискретными)
2
3. Используемые обозначения - 1
P( A true) P(a)
P( A false) P(a)
Априорная вероятность всех возможных значений
сл. величины:
P( A) - вектор,
P( A) P(a), P(a)
3
4. Используемые обозначения - 2
P( A, B,C) - вектор, полное совместное распределение
случайных величин A, B,C
P( A, B,C) P(a,b,c),P(a,b,c),..., P(a,b,c)
P( A|B) P(a |b), P(a |b), P(a |b), P(a |b)
4
5. Определение вероятности,
используемое в байесовских сетях-1
Классический подход:
P(d |s) P(d ,s)
P(s)
D «пациент болеет бронхитом»
S «у пациента есть одышка»
P(d ,s), P(s) - такая информация обычно недоступна.
5
6. Определение вероятности,
используемое в байесовских сетях-2
Объективная Субъективная
частота вероятность
n независимых оценки
испытаний, совместного
n появления событий
6
8. Эффект
«оттеснения других объяснений»-1
P(a) 0.7 P(b) 0.3
A B
бронхит туберкулез
С P(c|a,b) 0.9
кашель P(c|a,b) 0.4
P(c|a,b) 0.7
P(c|a,b) 0.1
9. Эффект
«оттеснения других объяснений»-2
A B
бронхит туберкулез
С
кашель
Эффект: формальная запись
P(a|c) 0.903 P(a|b,c) 0.84 P(b|c) 0.382 P(b|a,c) 0.355
Неформальная запись:
Известно: одышка, бронхит, тогда P(туберкулез)
Известно: одышка, туберкулез, тогда P(бронхит)
13. Определение ДБС-1
ДБС определяется как БС следующего вида:
Последовательность скрытых
X0 X1 Xn состояний,
… изменяющихся с течением
времени
E1 En Каждое состояние зависит только
от предыдущего
X t - скрытые, Каждое состояние
характеризуется скрытыми и
Et - наблюдаемые наблюдаемыми переменными
переменные
14. Определение ДБС-2. Пример «с
зонтиком»
Охранник никогда не выходит на улицу.
По утрам охранник видит директора (иногда с зонтиком)
Какова вероятность дождя на улице?
Xt Raint 1 Raint Raint 1
…
Et Umbrellat 1 Umbrellat Umbrellat 1
Далее будет использоваться обозначение:
X1,..., X t X1 : t , x1,..., xt x1 : t
15. Определение ДБС-3. Задаваемые
параметры
X0 X1 Xn
…
E1 En
Параметры:
P( X 0)
P( X t | X t 1) «модель перехода»
P(Et | X t ) «модель наблюдения»
16. Определение ДБС-4. Пример «с
зонтиком»
P(R r) 0.5
0 P(R r | R r) 0.7
t t 1
R0 R1 P(R r | R r) 0.3
t t 1
U1 P(U u| R r) 0.9
t t
P(U u| R r) 0.2
t t
17. Основные формулы
вероятностного вывода в ДБС
(1) P( A| B) P( A,B) (опр. усл. вер.)
P(B)
(2) P(B) P( Ai )P(B| A )
n
(ф-ла полн. вер.)
i
i 1
P( X 0), P( X t | X t 1), P( X t | Et ), (параметры ДБС)
P( X t | X 0 : t 1) P( X t | X t 1), (предположения)
P(Et | X 0 : t , E0 : t 1) P(Et | X t ),
t
(3) P( X 0, X1,..., E1,..., Et ) P( X 0) P( X i| X i 1)P(Ei| X i )
17
i 1
18. Основные задачи вероятностного
вывода в ДБС-1
(1) Фильтрация (текущий контроль): P( X t |e1 : t )
# вероятность дождя сегодня, если даны все
результаты наблюдений за директором
(2) Предсказание: P( X t k |e1 : t ), k 0
# вероятность дождя через несколько дней,
если даны все результаты наблюдений за
директором
18
19. Основные задачи вероятностного
вывода в ДБС-2
(3) Сглаживание (ретроспективный анализ):
P( X k |e1 : t ), 0 k t
# вероятность того, что дождь шел в прошлую
среду, если даны все результаты наблюдений
за директором
(4) Наиболее правдоподобное объяснение:
arg max P( X 1 : t |e1 : t )
X1 : t
# если директор приходил с зонтиком первые
три дня, а в четвертый – без зонтика, найти
погоду в каждый из прошедших дней 19
21. Вероятностный вывод в ДБС. 2
способ (эффективный)-1
Два вида шагов:
1. проектирование распределения вероятностей
предыдущего состояния от t к t+1
(используется P( X t | X t 1) )
2. Обновление распределения вероятностей текущего
состояния
Xt
(используется P(Et | X t ) )
P( X t | X t 1)
В памяти хранится только: P(Et | X t )
Et
22. Вероятностный вывод в ДБС. 2
способ (эффективный)-2
Продолжая «пример с зонтиком»: пусть было
R0
Получили: конкретное значение U1
цикл
Достраиваем:
(1) : P(Rt r) P(Rt |Rt 1)P(Rt 1)
R0 R1 Rt 1,Rt r
(2) : P(Rt r |Ut ) P(Rt r,Ut )
(1) P(Rt r,Ut ) P(Rt r,Ut )
U1
P(Rt r,Ut ) P(Ut | Rt r)P(Rt r)
(2)
Получили: R1 Ждем U 2...
23. Вероятностный вывод в ДБС.
Алгоритм фильтрации частиц-1
Дано: X - случайная величина с областью значения
{x1,..., xn}
Операция сэмплирования sample( X ): xk ,1 k n
Выбор xk осуществляется с помощью P( X xi ) (P( xi ))
xi 1 2 3
#
P( X xi ) 0.3 0.6 0.1
24. Вероятностный вывод в ДБС.
Алгоритм фильтрации частиц-2
Возможный способ осуществления sample( X ):
P( x1) P( x ) P( x3)
(1) 2
0 p1 1
p2
(2) генерируется случайное число s[0, 1]
x1 , если s[0, p1)
(3)
sample( X ) x2 , если s[ p1, p2 )
x3 , если s[ p2 , p3]
25. Вероятностный вывод в ДБС.
Алгоритм фильтрации частиц-3
Результатом sample(BN ) является совокупность
конкретных значений всех узлов байесовской сети
R0 R1 # sample(BN ) {R0 r, R1 r, U1 u}
Реализация sample(BN ):
U1
последовательное применение
sample( X ) к каждому узлу сети
в топологическом порядке
Для наблюдаемых переменных берется наблюденное
значение
26. Вероятностный вывод в ДБС.
Алгоритм фильтрации частиц-4
Операция Weighted sample(BN ) возвращает:
:
-совокупность конкретных значений (выборку) БС,
-вес выборки (насколько согласуется с наблюдениями)
P( x ) 0.3 # Пусть известно наблюдение
X1 1
X 2 x2 и получена выборка
P( x | x ) 0.8
2 1 а) {x1, x2}, тогда вес выборки
X2
P( x | x ) 0.7
2 1
W P( x2 | x1) 0.8
б) { x1, x2}, тогда вес выборки
W P( x2 | x1) 0.7
27. Вероятностный вывод в ДБС.
Алгоритм фильтрации частиц-5
Теперь объяснение всего алгоритма фильтрации на
«примере с зонтиком»
P(R1 |U1 u) ?
R0 R1
Шаг 1. С помощью Weighted sample(BN )
формируем N взвешенных выборок
U ДБС (пусть N=10 для наглядности)
1
# S1 {R0 r, R1 r, U1 u}, W (S1) P(U1 u | R1 r)
S1 {R0 r, R1 r, U1 u}, W (S1) P(U1 u |R1 r)
S1 {R0 r, R1 r, U1 u}, W (S1) P(U1 u |R1 r)
…
28. Вероятностный вывод в ДБС.
Алгоритм фильтрации частиц-6
S1 {R0 r, R1 r, U1 u}, W (S1) P(U1 u | R1 r)
S2 {R0 r, R1 r, U1 u}, W (S2) P(U1 u | R1 r)
S3 {R0 r, R1 r, U1 u}, W (S3) P(U1 u | R1 r)
S4 {R0 r, R1 r, U1 u}, W (S4) P(U1 u | R1 r)
S5 {R0 r, R1 r, U1 u}, W (S5) P(U1 u | R1 r)
S6 {R0 r, R1 r, U1 u}, W (S6) P(U1 u | R1 r)
S7 {R0 r, R1 r, U1 u}, W (S7) P(U1 u | R1 r)
S8 {R0 r, R1 r, U1 u}, W (S8) P(U1 u | R1 r)
S9 {R0 r, R1 r, U1 u}, W (S9) P(U1 u | R1 r)
S10 {R0 r, R1 r, U1 u}, W (S10) P(U1 u | R1 r)
29. Вероятностный вывод в ДБС.
Алгоритм фильтрации частиц-7
6 выборок типа S1 {R0 r, R1 r, U1 u} с весом 0.1
(веса см. по таблицам условных вероятностей)
2 выборки типа S2 {R0 r, R1 r, U1 u} с весом 0.8
2 выборки типа S3 {R0 r, R1 r, U1 u} с весом 0.8
Далее формируем случайную величину S :
si #S1 #S2 #S3 P(S s1) 0.16
P(S si ) 0.16 0.42 0.42 0.1620.820.8
30. Вероятностный вывод в ДБС.
Алгоритм фильтрации частиц-8
N раз применяем операцию сэмплирования к S:
si #S1 #S2 #S3
P(S si ) 0.16 0.42 0.42
Получаем (например):
1 выборка типа S1
3 выборки типа S2
6 выборок типа S3
31. Вероятностный вывод в ДБС.
Алгоритм фильтрации частиц-9
Теперь можем вычислить ответы на поставленные
вопросы.
Имеем:
1 выборка типа S1 S1 {R0 r, R1 r, U1 u}
3 выборки типа S2 S2 {R0 r, R1 r, U1 u}
6 выборок типа S3 S3 {R0 r, R1 r, U1 u}
P(R1 r |U1 u) N (выборок, где R1r)
N (выборок)
P(R1 r |U1 u) 1 , P(R1 r |U1 u) 36 9
10 10 10
32. Вероятностный вывод в ДБС.
Алгоритм фильтрации частиц-10
Шаги алгоритма:
1. формируется N взвешенных выборок ДБС
2. на основе этих данных составляется случайная
величина S, значениями которой являются ссылки на
сгенерированные типы выборок
3. N раз Sample(S) – получаем N «новых» выборок
4. с помощью простой формулы на «новых» выборках
вычисляем ответы на интересующие нас вопросы
34. Применение ДБС-2. Задача
локализации робота.
Два основных вопроса:
1) Как представлять состояние робота
(требуется много памяти или нет?)
2)Что представляют собой «модели наблюдения»
и «модели перехода»?
2): не хранятся в памяти в виде таблиц.
Рассчитываются по формулам!
1) см. далее.
35. Применение ДБС-3. Задача
локализации робота.
0.0 0.1 0.0 Состояние робота представляется с
помощью частиц
0.0 0.0 0.2
0.0 0.2 0.5
Частица: ( x, y): P( X x,Y y) 0
В памяти компьютера:
(1,2),
(2,3), (2,3),
(3,2), (3,2),
(3,3), (3,3), (3,3), (3,3), (3,3)
38. Применение ДБС-6. Задача
локализации робота.
Генерируются новые частицы с помощью операции
сэмплирования:
(у новых частиц
веса все равны 1)
Наиболее
вероятное
местоположение
робота