Лекция 6 - DNA punctuation

advertisement
Скрытые Марковские
Модели
0
1
1
1
…
1
2
2
2
…
2
…
…
…
K
K
K
x1
x2
x3
…
…
K
xL
H1
H2
Hi
HL-1
HL
X1
X2
Xi
XL-1
XL
0
Вероятности и вероятностные
модели
Вероятностная модель с множеством дискретных исходов
1. Бросание кости
6
p1,p2,….p6
Spi =1
i=1
Вероятность последовательности выпадения значений
P[5,3,2] = p1 p3 p2
2. Случайные последовательности (аминокислоты или нуклеотиды)
q1,q2, .qn – вероятности символов в последовательности
Вероятность последовательности
P(q1q2….qn) =
П qi
Условные, совместные и полные
вероятности
Две кости D1 и D2. Одна кость – честная, другая - нечестная
P(i|Dj) – вероятность выпадения i при условии, что была выбрана кость j
P(Dj) – вероятность выбора кости
P(i,Dj)=P(i|Di)P(Dj)
условная вероятность
совместная вероятность
или в общем виде - P(X,Y)=P(X|Y) P(Y)
P(X) =
S P(X,Y) = S P(X|Y)P(Y)
Y
полная вероятность
Y
Продемонстрировать на
доске на примере пирога
жизни
Вероятность и правдоподобие
Вероятность (probability) и правдоподобие (likelihood)
Функция правдоподобия L(Q|x) – это совместное распределение выборки из
параметрического распределения, рассматриваемая как функция параметра.
Сравните два вопроса:
•«Какова вероятность выпадения подряд трех шестерок из трех бросков?»
•«Насколько правдоподобно, что кости не шулерские, если из трех бросков
выпало три шестерки?»
Здесь параметр – шулерская или не шулерская кость
Вероятность позволяет нам предсказывать неизвестные результаты,
основанные на известных параметрах
Правдоподобие позволяет нам оценивать неизвестные параметры, основанные
на известных результатах.
Правдоподобие – это всегда условная вероятность
Теорема Байеса и нечестное казино
P(честная кость) =0.99
P(нечестная кость) =0.01
p1=p2=p3=p4=p5=p6=1/6
P6=1/2
p1=p2=p3=p4=p5=1/10
Как проверить, какая кость была здесь взята, честная или нет?
Какова вероятность гипотезы о том, что в данном случае кость нечестная?
P(3 шестерки|D нечестная) -?
Эта вероятность и есть правдоподобность гипотезы
Теорема Байеса и нечестное казино
Более правдоподобно, что мы выбрали честную кость, несмотря на то, что
получили три шестерки
Цепи Маркова
• Основное свойство – состояние системы в
момент времени t+1 зависит ТОЛЬКО от
состояния системы в момент t.
P[X t 1  x t 1 | X t  x t , X t -1  x t -1 , . . . , X1  x1 , X 0  x 0 ]
 P[X t 1  x t 1 | X t  x t ]
Xt=1
Xt=2
Xt=3
Xt=
4
Xt=5
Пример с погодой
• дождь сегодня
дождь завтра
prr = 0.4
• дождь сегодня
нет дождя завтра
prn = 0.6
• нет дождя сегодня
дождь завтра
• нет дождя сегодня
нет дождя завтра prr = 0.8
pnr = 0.2
Матрица переходов
Стохастическая матрица
 0.4 0.6 

P  
 0.2 0.8 
Ряд суммируется в 1
0.6
0.4
rain
no rain
0.2
8
0.8
Пример с погодой
0.6
0.4
rain
X(0)=(1,0)
X(1)=X(0)*P = (1,0) x
0.8
no rain
0.2
0.4 0.6
= (0.4 , 0.6)
0.2 0.8
X(2)=X(1)*P= X(0) x P 2 = ( 1,0) x
0.4 0.6 2
0.28 0.72
= (1,0) x
= (0.28,0.72)
0.2 0.8
0.24 0.76
X(3) = ……………………………………………………………………………………………= (0.256, 0.744)
n
X(n)= X(0) x P = (1,0) x
0.4 0.6 n
= ……………………………………….= (0.25, 0.75)
0.2 0.8
Предсказание – 25% дней с дождем, 75% без дождя
Coke vs. Pepsi
Если посетитель последний раз купил кока-колу,
то вероятность того, что в следующий раз он
опять купит кока-колу составляет 90%.
Если же этот посетитель в последний раз купил
пепси, то вероятность того, что в следующий раз
он опять купит пепси составляет 80%.
0.1
0.9
0.8
coke
pepsi
0.2
10
Coke vs. Pepsi
Вопрос: исходя из того, что человек постоянно покупает пепси,
какова вероятность того, что он начиная с настоящего времени
два раза купит кока-колу?
0.1
0.9
0.8
coke
Матрица переходов:
0.9 0.1
P

0.2 0.8
pepsi
0.2
(это значение соответствует
вероятности 1 покупки вперед)
0.9 0.1 0.9 0.1 0.83 0.17
P 





0.2 0.8 0.2 0.8 0.34 0.66
2
11
Coke vs. Pepsi
Вопрос: исходя из того, что человек постоянно
покупает пепси, какова вероятность того, что
он начиная с настоящего времени три раза
купит кока-колу
0.9 0.1 0.83 0.17  0.781 0.219
P 





0.2 0.8 0.34 0.66 0.438 0.562
3
12
Coke vs. Pepsi
Предположим, что каждый человек один раз в
неделю покупает кока-колу. Предположим, что в
настоящее время 60% всех людей пьет кока-колу, и
40% пьют пепси.
Какой процент людей будет пить кока-колу через три
недели?
Пусть (Q0,Q1)=(0.6,0.4) начальные вероятности.
кока-кола = 0
пепси = 1
0.9 0.1
P

0
.
2
0
.
8


 0.781 0.219
P 

0
.
438
0
.
562


3
1
( 3)
P( X 3  0)   Qi pi(03)  Q0 p00
 Q1 p10(3)  0.6  0.781  0.4  0.438  0.6438
i 0
13
Equilibrium (Stationary) Distribution
• Предположим, что в настоящее время 60% всех людей пьет
кока-колу, и 40% пьют пепси.
• Какой процент людей будет пить кока-колу через
10,100,1000,10000 недель?
• Для каждой недели вероятности хорошо определены.
Сходятся ли они к какому-то равновесному распределению
[p0,p1]
• Если да, то должно иметь место
9p0+.2p1 =p0, .8p1+.1p0 =p1
Решение: p0= 2/3, p1=1/3
14
0.9 0.1
P

0
.
2
0
.
8


Markov Process
Coke vs. Pepsi Example (cont)
Simulation:
2/3
3
Pr[Xi = Coke]
2
1
0.9 0.1 2
3 
  3
0
.
2
0
.
8


1
3
stationary distribution
0.1
0.9
coke
0.8
pepsi
0.2
week -15i

Равновесное (Стационарное) Распределение
Является ли распределение стационарным, и является
ли оно при этом единственным, определяется
некоторыми свойствами процесса.
Неприводимость - любое состояние достижимо из
любого другого состояния
Апериодичность – существует хотя бы одно состояние
для которого возможен переход в самого себя.
Положителная рекуррентность – для каждого
состояния существует конечное число переходов.
0.1
0.9
0.8
coke
pepsi
16
0.2
Равновесное (Стационарное)
Распределение
• Если Цепь Маркова положительно
рекуррентная, то существует стационарное
распределение
• Если Цепь Маркова положительно
рекуррентная и неприводимая, то существует
единственное стационарное распределение.
• Более того, если процесс был построен таким
образом, что стационарное распределение
было взято в качестве начального, то такой
процесс является эргодическим.
17
Равновесное (Стационарное)
Распределение
• Пусть P – матрица переходов, а стационарное
распределение – это вектор π ,
удовлетворяющий уравнению
– Pπ = π .
• В данном случае стационарное распределение
π есть собственный вектор матрицы
переходов, соответствующий собственному
значению 1.
18
СКРЫТЫЕ
Модели Маркова
Hidden Markov
Models
Скрытые Марковские Модели
(вероятностные конечные автоматы)
Очень часто у нас возникают ситуации, когда
состояния не наблюдаются непосредственно.
Поэтому: Hidden Markov Models (HMM)
a22
a11
a12
b11
b13
b12
1
a44
a33
a34
a23
b14
4
2
Наблюдаемые
3 a вероятности переходов для состояний.
ij
bik - вероятности наблюдаемых
(выходные вероятности).
20
b11 + b12 + b13 + b14 = 1,
b21 + b22 + b23 + b24 = 1, etc.
Hidden Markov Models - HMM
Hidden variables
H1
H2
Hi
HL-1
HL
X1
X2
Xi
XL-1
XL
Observed data
21
Пример: Нечестное казино
Собственно, что скрыто в данной модели?
22
Пример подбрасывания монеты
Start
1/2
1/2
tail
1/2
Fair
0.9
1/2
0.1
0.1
tail
1/4
loaded
0.9
3/4
head
head
Fair/Loade
d
L tosses
H1
H2
Hi
HL-1
HL
X1
X2
Xi
XL-1
XL
Head/Tail
Вопрос1: Какова вероятность наблюдать такую последовательность
(например, HHHTHTTHHT), при условии
выбора данной моделиl?
23
Nucleotide frequencies in the human
genome
A
C
T
G
29.5 20.4 20.5 29.6
CpG Островки
CpG islands: части ДНК, обогащённые C и G
q/4
A
P
q/4
G
P
Regular
T
q
change
P
DNA
q
q
P q
q/4
C
q/4
p/6
(1-P)/4
A
p/3
G
(1-q)/6
(1-q)/3
p/3
P/6
C-G island
25
T
C
Example: CpG islands
• In human genome, CG dinucleotides are
relatively rare
– CG pairs undergo a process called methylation that
modifies the C nucleotide
– A methylated C mutate (with relatively high chance)
to a T
• Promotor regions are CG rich
– These regions are not methylated, and thus mutate
less often
– These are called CpG islands
26
CpG Islands
• We construct Markov
chain for CpG rich and
poor regions
• Using maximum likelihood
estimates from 60K
nucleotide, we get two
models
27
Ratio Test for CpC islands
Для конкретной последовательности X1,…,Xn мы
рассчитываем логарифм отношения правдоподобия
P ( X1 , , Xn | )
S ( X1 , , Xn )  log
P ( X1 , , Xn | )
A  X i Xi  1
  log 
A Xi X i  1
i
   X i Xi  1
i
28
Empirical Evalation
Гистограмма распределения весов, нормированных на длину. CpG островки – темносерые, а не . CpG островки – светло-серые
Биты – так как логарифм по основанию 2
Finding CpG islands
Simple Minded approach:
• Pick a window of size N
(N = 100, for example)
• Compute log-ratio for the sequence in the
window, and classify based on that
Problems:
• How do we select N?
• What do we do when the window intersects the
boundary of a CpG island?
30
A Different C-G Islands Model
G
A
change
C
T
Отличие скрытой от
обычной
A
G
T
C
C-G
island?
H1
H2
Hi
HL-1
HL
X1
X2
Xi
XL-1
XL
A/C/G/T
31
Alternative Approach
• Build a model that include “+” states and “-” states
маленькая вероятность
перехода из одной цепи
в другую
• A state “remembers” last nucleotide and the type of region
• A transition from a - state to a + describes a start of CpG island
32
Формальное определение HMM
• Различаем последовательности состояний и
последовательности символов
• x – это последовательность символов, испускаемая моделью
– Xi – это символ, испущенный в момент времени i
• Пусть путь π - путь последовательности состояний. Сам путь
проходит по обычной цепи Маркова.
- i-ое состояние на пути  - это i
• Цепь характеризуется параметрами
вероятности перехода между состояниями
akr  Pr( i  r |  i 1  k )
вероятность, что символ b возникает (испущен) в состоянии k, или
эмиссионные вероятности
ek (b )  Pr(xi  b |  i  k )
Пример: Нечестное казино
p1=p2=p3=p4=p5=p6=1/6
•
•
•
•
P6=1/2
p1=p2=p3=p4=p5=1/10
Часто говорят, что P(x) –
вероятность того, что x
сгенерирован данной
моделью
Известно:
– Структура модели
– Вероятности переходов
Скрыто: Что делает казино
– FFFFFLLLLLLLFFFF...
Наблюдаемые: последовательность бросков кости
– 3415256664666153...
Что нам нужно вычислить?:
– Когда использовалась честная кость?
– Когда использовалась нечестная кость?
• Ответ представляет собой последовательность
FFFFFFFLLLLLLFFF... 34
Имея модель, мы можем сгенерировать последовательность:
первое состояние выбирается из распределения вероятностей
состояний - a,
• в этом состоянии наблюдение генерируется (испускается, emitted) по
вероятностям e
• Модель присваивает вероятность каждому объяснению наблюдений:
P(326|FFL)
= P(3|F)·P(FF)·P(2|F)·P(FL)·P(6|L)
= 1/6 · 0.99 · 1/6 · 0.01 · ½
• Максимальное правдоподобие: нахождение более вероятного
объяснения
– Найти путь, который с наибольшей вероятностью сгенерирует
наблюдаемую последовательность
• Полная вероятность: вероятность, что наблюдаемая
последовательность была сгенерирована HMM
– Рассмотреть все пути, которые могли бы сгенерировать
наблюдаемую последовательность
A “parse” of a sequence
0
1
1
1
…
1
2
2
2
…
2
…
…
…
K
K
K
x1
x2
x3
0
…
…
L
K
xL
Pr(x ,  )  a0 1  e i (xi )  a i  i 1
i 1
Совместная вероятность последовательности наблюдений x и
последовательности состояний π
The occasionally dishonest casino
x  x1, x2, x3  6,2,6
Pr(x ,  (1) )  a0F eF (6)aFF eF (2)aFF eF (6)
 (1)  FFF

( 2)
 LLL
1
1
1
 0.99   0.99 
6
6
6
 0.00227
 0.5 
Pr(x ,  (2) )  a0 LeL (6)aLLeL (2)aLLeL (6)
 0.5  0.5  0.8  0.1  0.8  0.5
 0.008

( 3)
 LFL
Pr(x ,  (3) )  a0LeL (6)aLF eF (2)aFL eL (6)aL 0
 0.5  0.5  0.2 
 0.0000417
1
 0.01  0.5
6
The most probable path
The most likely path * satisfies
 *  arg max Pr(x ,  )

To find *, consider all possible ways the last
symbol of x could have been emitted
Let
v k (i )  Prob. of path  1 , ,  i most likely
Then
to emit x1 , , xi such that  i  k
v k (i )  ek (xi ) max v r (i  1)ark 
r
The Viterbi Algorithm
• Initialization (i = 0)
v 0 (0)  1, vk (0)  0 for k  0
• Recursion (i = 1, . . . , L): For each state k
v k (i )  ek (xi ) max v r (i  1)ark 
r
• Termination:
Pr(x ,  * )  max vk (L)ak 0 
k
To find *, use trace-back, as in dynamic programming
Viterbi: Example
B

F
L
x

6
2
1
0
0
0
0
(1/6)(1/2)
= 1/12
(1/6)max{(1/12)0.99,
(1/4)0.2}
= 0.01375
(1/6)max{0.013750.99,
0.020.2}
= 0.00226875
0
(1/2)(1/2)
= 1/4
(1/10)max{(1/12)0.01,
(1/4)0.8}
= 0.02
(1/2)max{0.013750.01,
0.020.8}
= 0.08
v k (i )  ek (xi ) max v r (i  1)ark 
r
6
The Viterbi Algorithm
ìïmax V ( j , k - 1) P (q | q ) P ( x , q ) if k > 0,
t
i
j
e
k
i
V (i, k ) = í j
ïîPt (qi | q0 ) Pe ( x0 | qi )
if k = 0.
. . . k-2
k-1
states
sequence
k
(i,k)
...
f max =
arg max
f i,L-1
V (i, L -1)Pt (q0 | qi )
k+1 . . .
Viterbi: Traceback
ì max
ï
V ( j,k - 1)Pt (qi | qj )Pe (xk | qi )
V (i,k ) = í j
ïî Pt (qi | q0 )Pe (x0 | qi )
if k > 0,
if k = 0.
ì argmax
ï
V ( j,k - 1)Pt (qi | qj )Pe (xk | qi ) if k > 0,
T (i,k ) = í
j
ïî 0
if k = 0.
T( T( T( ... T( T(i, L-1), L-2) ..., 2), 1), 0) = 0
Viterbi gets it right more often than not
GpC islands
• (С+,G+,C+,G+)
• (С-,G-,C-,G-) – меньше, чем первая, так как
переход из С в G меньше в “-”состоянии,
чем в “+”.
• (С+,G-,C-,G+) – будет произведение
маленьких вероятностей переключения
туда и обратно (10-4).
Нужно найти
 *  arg max Pr(x ,  )

An HMM for CpG islands
A: 1
C: 0
G: 0
T: 0
A+
A: 0
C: 1
G: 0
T: 0
A: 0
C: 0
G: 1
T: 0
A: 0
C: 0
G: 0
T: 1
C+
G+
T+
A-
C-
G-
T-
A: 1
C: 0
G: 0
T: 0
A: 0
C: 1
G: 0
T: 0
A: 0
C: 0
G: 1
T: 0
A: 0
C: 0
G: 0
T: 1
+
Emission probabilities are 0 or 1.
E.g. eG-(G) = 1, eG-(T) = 0
объединяем
An HMM for CpG islands
стрелки - переходы из состояние в состояние
Алгоритм Витерби для CpG
Полная вероятность
Для обычных цепей Маркова вероятность
последовательности -
Для HMM – много различных путей может приводить к
наблюдению последовательности x.
Вероятность, что наша модель испустит x
Суммируем по
всем путям
Pr(x )   Pr(x ,  )

Полная
Вероятность
Количество возможных путей экспоненциально растет с ростом длины
последовательности
Полная вероятность
Полная вероятность Pr(x) может быть
вычислена таким же способом, как и наиболее
вероятный путь, заменив процедуру взятия
максимума суммированием.
Пусть
fk (i )  Prob. of observing x1 ,, xi
assuming that πi  k
Тогда
и
fk (i )  ek (xi )fr (i  1)ark
r
Pr(x )  fk (L)ak 0
k
Алгоритм просмотра вперед
Алгоритм просмотра вперед
The Forward Algorithm
• Инициализация (i = 0)
f0 (0)  1, fk (0)  0 for k  0
• Рекурсия (i = 1, . . . , L): Для каждого состояния k
fk (i )  ek (xi )fr (i  1)ark
r
• Завершение:
Pr(x )  fk (L)ak 0
k
The Forward Algorithm : Probability of a Sequence
V ( j, k -1)Pt (qi | q j )Pe (xk | qi )
Viterbi: max
j
the single most
probable path
|Q|-1
Forward: å F( j, k -1)Pt (qi | q j )Pe (xk-1 | qi )
sum over all
paths
j=0
i.e.,
å P(S, f )
all
paths
f
. . . k-2
k-1
states
sequence
k
(i,k)
k+1 . . .
...
Апостериорная вероятность
состояний
•
Сгенерированная последовательность известна – x1…..xL
• Какова вероятность того, что наблюдение xi появилось в
состоянии k при данной последовательности
наблюдений?
Вероятность генерации всей последовательности,
причем символ i сгенерирован в состоянии k
Все, что сгенерировано после состояния k, зависит
только от того, что сгенерировано в состоянии k
Апостериорная вероятность
состояний
Вероятность генерации всей последовательности,
причем символ i сгенерирован в состоянии k
Все, что сгенерировано после состояния k, зависит
только от того, что сгенерировано в состоянии k
Этот множитель вычисляется с
помощью алгоритма просмотра
вперед
Этот множитель вычисляется с
помощью алгоритма просмотра
назад
Алгоритм просмотра назад
Апостериорное дешифрование
Используется в добавление к дешифрованию Витерби
Применяется, когда множество разных путей имеют практически ту же
вероятность, что и наиболее вероятный путь.
Download