mikhail roytberg - sequence analysis (from biology to linguistics) part3

94
Анализ Анализ символьных последовательностей символьных последовательностей от от биоинформатики биоинформатики до лингвистики до лингвистики М.А. Ройтберг Занятие 3 Екатеринбург 23 апреля 2011 12:00 – 15:00

Upload: uralcsclub

Post on 11-Jul-2015

276 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Анализ Анализ символьных последовательностейсимвольных последовательностей

отот биоинформатик и биоинформатик и до лингвистики до лингвистики

М.А. Ройтберг

Занятие 3

Екатеринбург 23 апреля 2011

12:00 – 15:00

Page 2: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

2

Это было вчераЭто было вчера

0. Задача про триангуляцию – правильное решение1. Динамическое программирование на графах. 1.1. Вычисление рангов для графов и гиперграфов 1.2. Совместный алгоритм (накопление результата) 1.3. Подсчет сумм Больцмана для всех точек2. Построение оптимального выравнивания. 2.1. Биологическое введение. 2.2. Глобальное выравнивание: алгоритм для

простейшего случая (повторение) 2.3. Удаление фрагментов 2.4. Качество выравниваний (сравнение с эталоном) 2.5* Другие варианты постановок задач (субоптималь- ные выравнивания, суммы Больцмана, векторные

веса, веса удалений концов)

Page 3: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

3

Это будет сегодняЭто будет сегодня

1. Построение всех «разумных» сходств1.1. Постановка задачи 1.2. Использование затравок (seed)1.3. Избирательность и чувствительность3.4. Типы затравок (seed model)

2. Скрытые марковские модели3. Предсказание вторичной структуры РНК4. РНК и гиперграфы5. Суммы Больцмана для всех вершин гиперграфа

0. Задача про триангуляцию

Page 4: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Раздел 1. Поиск локальных сходств Немного повторения.

– Использование затравок (seed)

– Избирательность и чувствительность

– Типы затравок (seed model)

Page 5: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Dot plot

ctcgactcgggctcacgctcgcaccgggttacagcggtcgattgctaggcctcgggct cgcgctcgcgcg ctagacaccggg ttacagcgt

Detected local similarity

Затравки: фильтрация пространства поиска

Сначала ищем небольшие и легко диагностируемые участки сходства («затравочные сходства», seed similarities).

Далее ищем сходства только в окрестностях затравочных сходств (одного или нескольких).

Detected seeds

Page 6: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

«Классическая затравка» (пример: 6 совпадений подряд)

Точные совпадения :

Затравка («затравочное слово», описание затравочных сходств) : ######

Вес : 6 [количество #]

Пример : 16 совпадений из 20

ATCAGT||||||ATCAGT

######ATCAGTGCAATGCTCATGAA|||.|.|||||||:||.|||ATCGGCGCAATGCGCAAGAA

Page 7: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Затравка ловит сходство(затавка соответствует сходству)

Затравка ##### seed Затравочное сходство (… выравнивание)

ATGCAA

ATGCAA

Затравка соответствует сходству в позиции 10 Затравка не соответствует сходству в позиции 1

Затравка ловит сходство

###### ###### 1 10

Page 8: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Скорость поиска затравочных сходств(точных сходств)

T~ L1+L2 + R L1, L2 – длины последовательностей R – количество найденных сходств

Page 9: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

ctcgactcgggctcacgctcgcaccgggttacagcggtcgattgctaggcctcgggct cgcgctcgcgcg ctagacaccggg ttacagcgt

Detected local similarity

Недостатки подхода

Найденные затравки

СлучайноеСлучайное сходствосходство

Пропущенное Пропущенное сходство: не сходство: не содержит содержит затравокзатравок

######ATCAGTGCAATGCTCATGAA::|::::||||||:::..::CCCGACACAATGCGTGACCC

##### [16 of 20!]ATCAGTGCGATGCTCATGAA|||.|||||:|||:||.|||ATCGGTGCGGTGCGCAAGAA

Page 10: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Две проблемы

“Избирательность”Затравка может НЕ быть частью важного (для нас) сходства

“Чувствительность” Важное (для нас) сходство может

НЕ содержать ни одной затравки

Page 11: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Что может быть мерой избирательности и чувствительности

Избирательность затравки: ~ 4-weight

вероятность ее обнаружения при сравнении независимых случайных последовательностей

Чувствительность затравки: вероятность того, что затравка попадет в

важное сходство.

Нужно уточнить:• Что такое «важное сходство»?• Каково распределение вероятностей

для важных сходств?

Page 12: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Множество важных [целевых] выравниваний и их вероятности

Выравнивания фиксированной длины без удалений

L=18

Вероятностная модель: Бернулли ;Случайные вырaвнивания: Prob(match) =0.25

Целевые выравнивания: Prob(match) >> 0.25 Обобщения: Markov models, HMM

{not in this talk}

GCTACGACTTCGAGCTGC...CTCAGCTATGACCTCGAGCGGCCTATCTA...

Page 13: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Разреженные затравки Ma, Tromp, Li 2002 (PatternHunter)

Затравка: ###--#-## ‘#’ : должно быть совпадение

‘-’ : «джокер» (“все равно, что” )

Вес : 6 [количество #] Пример:

###--#-##ATCAGTGCAATGCTCAAGA|||||.||.||||:|||||ATCAGCGCGATGCGCAAGA

Page 14: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Spaced Seeds: the background

For spaced seeds, hits at subsequent positions are “more independent events”

For contiguous vs. spaced seeds of the same weight, the expected number of hits is (basically) the same but the probabilities of having at least one hit are very different

Page 15: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Sensitivity: PH weight 11 seed vs BLAST 11 & 10[after Ma, Tromp and Li]

Page 16: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Повторение кончилось.

А что дальше?

Page 17: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

single filter based on several distinct seed patterns

each seed pattern detects a part of interesting similarities but together they detect [almost] all of them

Li, Ma, Kisman, Tromp 2004 (PatternHunter II) Kucherov, Noe, Roytberg, 2005 Sun, Buhler, RECOMB 2004

Семейства затравок

Page 18: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Пример: ВСЕ (18,3)

Обнаружить Обнаружить всевсе сходства длины сходства длины 1818, , в которых не болеев которых не более 33 несовпаденийнесовпадений

Чувствительность = 1.0

Избирательность (вероятность случайного появления

затравочного сходства) -> MIN

Page 19: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Пример: ВСЕ (18,3) Обнаружить Обнаружить всевсе сходства длины сходства длины 1818, , в которых не болеев которых не более 33 несовпаденийнесовпадений

Множественная затравка F решает проблему ВСЕ(18, 3)

Затравка F состоит из двух простых затравок, каждая из них имеет вес 7

##-#-#######---#--##-#

F

Page 20: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

##-##-########-####--#####-##---#-#####----####-######---#-#-##-#####-#-#-#-----###

Пример: ВСЕ (18.3)

##-#-#######---#--##-#

###-##---#-###

###---#--##-# ###---#--##-#

w=7

w=9

Page 21: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

####

###-##

##-##-########-####--#####-##---#-#####----####-######---#-#-##-#####-#-#-#-----###

Пример: ВСЕ (18.3). Избирательности

##-#-#######---#--##-#

w=4 ~39. 10-4

w=5 ~9.8 10-4

w=7 ~1.2 10-4

w=9 ~0.23 10-4

Избирательность семейства затравок – вероятность встретить хотя бы одну из них в случайном месте (p(match) = 1/4)

Page 22: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

ДАЛЬШЕ НЕ СМОТРЕЛ

А – примеры белков и заголовков В, С – перевести слайд про преимущества

разреж. затравок

Page 23: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Different mutational events have different probabilities

Transitions are usually over-represented.

ATCAGTGCAATGCTCAAGA|||||.||.||||:|||||ATCAGCGCGATGCGCAAGA

Subset seeds

A T

G Ctransitions

transversions

.: ATCAGTGCAATGCTCAAGA

|||||.||.||||:|||||ATCAGCGCGATGCGCAAGA

Page 24: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Extended seed alphabet seed: ##@#-#@-###

‘#’ : obligatory match position‘-’ : joker position (“don’t care”

position)‘@’ : transition-constrained positionposition that corresponds to either a match or a transition.

##@#-#@-###ATCAGTGCAATGCTCAAGA|||||.||.||||:|||||ATCAGCGCGATGCGCAAGA

Page 25: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Subset letters and seeds

Seed letter is a subset of aligned pairs. # = {(A,A), (C,C), (G,G), (T,T)} @ = { (A,A), (C,C), (G,G), (T,T),

(A,G), (G,A), (T,C), (C,T)} - = {all pairs}

##@#-#@-###ATCAGTGCAATGCTCAAGA|||||.||.||||:|||||ATCAGCGCGATGCGCAAGA

Page 26: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Weight of subset seed

Selectivity: probability of random occurrences of a seed Match-mismatch case:

weight – number of #; S = 4-weight

General case: S = 4-weight (by definition)

seed: ##@#-#@-### Weight : 8[number of # + half number of @]

@ carries 1 bit of information whereas # carries 2 bits.

Page 27: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Seeds for proteins

PAM250 matrix recommended by Gonnet et al. Science, June 5, 1992Values rounded to nearest integerC S T P A G N D E Q H R K M I L V F Y W

C 12 0 0 -3 0 -2 -2 -3 -3 -2 -1 -2 -3 -1 -1 -2 0 -1 0 -1S 0 2 2 0 1 0 1 0 0 0 0 0 0 -1 -2 -2 -1 -3 -2 -3T 0 2 2 0 1 -1 0 0 0 0 0 0 0 -1 -1 -1 0 -2 -2 -4P -3 0 0 8 0 -2 -1 -1 0 0 -1 -1 -1 -2 -3 -2 -2 -4 -3 -5A 0 1 1 0 2 0 0 0 0 0 -1 -1 0 -1 -1 -1 0 -2 -2 -4G -2 0 -1 -2 0 7 0 0 -1 -1 -1 -1 -1 -4 -4 -4 -3 -5 -4 -4N -2 1 0 -1 0 0 4 2 1 1 1 0 1 -2 -3 -3 -2 -3 -1 -4D -3 0 0 -1 0 0 2 5 3 1 0 0 0 -3 -4 -4 -3 -4 -3 -5E -3 0 0 0 0 -1 1 3 4 2 0 0 1 -2 -3 -3 -2 -4 -3 -4Q -2 0 0 0 0 -1 1 1 2 3 1 2 2 -1 -2 -2 -2 -3 -2 -3H -1 0 0 -1 -1 -1 1 0 0 1 6 1 1 -1 -2 -2 -2 0 2 -1R -2 0 0 -1 -1 -1 0 0 0 2 1 5 3 -2 -2 -2 -2 -3 -2 -2K -3 0 0 -1 0 -1 1 0 1 2 1 3 3 -1 -2 -2 -2 -3 -2 -4M -1 -1 -1 -2 -1 -4 -2 -3 -2 -1 -1 -2 -1 4 2 3 2 2 0 -1I -1 -2 -1 -3 -1 -4 -3 -4 -3 -2 -2 -2 -2 2 4 3 3 1 -1 -2L -2 -2 -1 -2 -1 -4 -3 -4 -3 -2 -2 -2 -2 3 3 4 2 2 0 -1V 0 -1 0 -2 0 -3 -2 -3 -2 -2 -2 -2 -2 2 3 2 3 0 -1 -3F -1 -3 -2 -4 -2 -5 -3 -4 -4 -3 0 -3 -3 2 1 2 0 7 5 4Y 0 -2 -2 -3 -2 -4 -1 -3 -3 -2 2 -2 -2 0 -1 0 -1 5 8 4W -1 -3 -4 -5 -4 -4 -4 -5 -4 -3 -1 -2 -4 -1 -2 -1 -3 4 4 14

Match-mismatch model is inadequate

Page 28: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

BLASTP: vector seeds

Seed alignment: any 3-letter alignment with total score exceeding a given cut-off

N L CS S C1+1+12 = 14

G D IG Q V7+1+3 = 11

P C PP K P8-3+8 = 13

An amino-acid triple T has a lot of neighbors, i.e. other triples forming a seed alignment with T

Page 29: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Improvements…

Spaced vector seeds Kisman, Ma, Li, Wang 2005; Brown, 2005

Subset seeds Kucherov, Noe, Roytberg, et al, 2007

Multiple seeds [both cases]

Page 30: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Partition subset seeds Partition subset seeds: each subset letter can be described by a partition of the set

of aminoacid letters DNA: @=<[A,G];[T,C]>={(A,A), (A,G), (G,A), (G,G),

(T,T), (T,C), (C,T), (C,C)} Proteins:1)[C] [G] [P] [IVLM] [AST] [HWFY] [NDRKQE]

2)[C] [G] [P] [IV] [LM] [A] [ST] [H] [WFY] [N] [D] [RK] [QE]

3)[C] [G] [P] [IV] [LM] [A] [S] [T] [H] [W] [FY] [N] [D] [RK] [QE]

Page 31: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Partition subset seeds (cont)

Motivation: In case of vector (BLAST-like) and general subset seeds each amino-acid triple T has a lot of neighbors, i.e. other triples forming a seed alignment with T

Partition seeds significantly decrease the number of neighbors of an amino-acid tuple

Page 32: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Sensitivity of different seed models

Sensitivity (%)BLAST cut-off

BLAST (1 seed)

Partition seed (M)

Subset seed (M)

Vector seed (M)

10 97.6 97.7 98.3 98.411 94.8 95.6 96.2 96.212 89.5 91.5 93.1 93.1

Lost similarities (%) = 100-SensitivityBLAST cut-off

BLAST (1 seed)

Partition seed (M)

Subset seed (M)

Vector seed (M)

10 2.4 2.3 1.7 1.611 5.2 4.4 3.8 3.812 10.5 8.5 6.9 6.9

Page 33: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Затравки. Выводы.

Классические заправки не оптимальны Применяя затравки, разберитесь, насколько

они адекватны интересующему Вас классу сходств.

О чем мы не говорили: Как строить хорошие затравки? Как вычислить чувствительность затравки? И еще о многом…

Page 34: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Раздел 2.Скрытые Марковские модели (СMM)

Hidden Markov Models(HMM)

1. Все модели порождают слова (=символьные последовательности) в некотором алфавите А. 2. Каждое слово w порождается с некоторой вероятностью Prob(w) 3. Для любой длины L суммарная вероятность всех слов длины L равна 1. 4. Вероятность слова определяется как произведение вероятностей его букв.

Page 35: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

2.0. Повторение

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

Prob(‘aba’) = p(a)*p(b)*p(a)

1. Все модели порождают слова (=символьные последовательности) в некотором алфавите А.

2. Каждое слово w порождается с некоторой вероятностью Prob(w)

3. Для любой длины L суммарная вероятность всех слов длины L равна 1.

4. Вероятность слова определяется как произведение вероятностей его букв.

Page 36: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Повторение

Марковская модель: вероятность буквы зависит от K предшествующих букв. Для слов длины не более K вероятность задается отдельно.

Пример. А = {0, 1}P(0|1) = P(1|0) = 0 P(0|0) = P(1|1) = 1P(‘0’) = P(‘1’) = 0.5

Распределение вероятностей для слов длины 5?

Page 37: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Повторение

Марковская модель: вероятность буквы зависит от K предшествующих букв. Для слов длины не более K вероятность задается отдельно.

Пример. А = {0, 1}P(0|1) = P(1|0) = 0; P(0|0) = P(1|1) = 1P(‘0’) = P(‘1’) = 0.5

Распределение вероятностей для слов длины 5?== P(‘00000’) = P(‘11111’) =0.5

Для остальных слов w: P(w)=0

Page 38: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

2.1. Определение скрытой марковской модели

A - алфавит Q – множество состояний; Q = {1,…, N } φ: ({0}ỤQ) x Q -> [0, 1]

– вероятность перехода из i в j (i > 0); - вероятность старта в состоянии j (i = 0).

Σj=1.. N φ(i, j) = 1 σ: QxA -> [0, 1] – вероятность порождения символа

Σa € Aσ(i, a) = 1

Page 39: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

ПРИМЕР (временами фальшивая монета, ВФМ)

– Прямоугольники означают состояниясостояния– Кружки означают результат бросания

(эмиссииэмиссии)– Стрелки – возможные переходыпереходы между

состояниями– Числа около кружков – вероятности эмиссии σi

– числа около стрелок – вероятности переходов между состояниями φik

0

1

0.5

0.5

0

1

0.9

0.1

0.9

0.1

0.8

0.2

•Сумма весов исходящих стрелок равна 1•Сумма весов эмиссии в каждом состоянии рана 1

Page 40: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3
Page 41: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Вероятности

Вероятность порождения слова v = a1…аm

при условии прохождения по траектории состояний t = {q0=0, q1 , …, qm}:

P(v|t) = Πi=1.. n φ(qi-1, qi)▪σ (qi, ai)

Вероятность порождения слова v = a1…аm

P(v) = Σt P(v|t)

* Утв. СММ задает распределение вероятностей на

словах данной длины m:

Σv – слово длины m P(v) = 1

Упражнение 4.1. Доказать !!!

Page 42: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Эквивалентные СММ

СММ H1 и H2 называются эквивалентными, если они задают одно и то же распределение вероятностей.

Пример – «раздвоение» состояний

Page 43: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

2.2. Графы, связанные с СММ

Пусть дана СММ H = <A, Q, φ, σ >.

Основной граф. Множество вершин Q = {0, 1, …, N}. Множество ребер E = {(i, j, a)} - для каждой пары

вершин есть |A| ребер, ведущих из i в j; каждое из ребер помечено своей буквой.

Вероятности: Каждому ребру (i, j, a) приписана вероятность

p(i, j, a) = φ(i, j)▪ σ(j, a) * Ребра, имеющие вероятность 0, можно опускать

Основной граф, как правило, содержит циклы.

Page 44: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Графы, связанные с СММ

Пусть дана СММ H = <A, Q, φ, σ >. Граф m-траекторий Tr(H, m) – развернутый граф.

Множество вершин: {0} + Qx{1,…, m}. Множество ребер: {(i, j, a, k)}; ребро (i, j, a, k) ведет из (i, k) в (j, k+1) и помечено буквой a; Вероятности: Каждому ребру (i, j, a, k) приписана

вероятность p(i, j, a, k) = φ(i, j)▪ σ(j,a)

* Развернутый граф – ациклический! * В развернутом графе ~ N▪m▪|A| ребер

Page 45: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Задачи на развернутом графе Вероятности.

1. Найти вероятность данного слова v = a1…аm .

Решение. Рассмотрим граф Tr(H, m, v) – редукцию развернутого графа, в котором для каждой тройки (i, j, k) оставлено только ребро

(i, j, аk, k). Решаем задачу Больцмана для Tr(H, m, v)

Время ~ N▪m 2. Дан набор V слов длины m. Найти суммарную

вероятность слов из набора V.Время ~ N▪m▪|V|

3.* Набор слов V длины m задан конечным автоматом с r состояниями. Найти суммарную вероятность слов из набора V.

Время - ?

Page 46: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Вероятности

3.* Набор слов V длины m задан конечным автоматом с r состояниями. Найти суммарную вероятность слов из набора V.

Время - ?Пример. Набор V задается профилем

(позиционно-зависимой системой весов).

Напомним: Для любого конечного множества слов можно построить автомат, допускающий это множество и содержащий ~ L состояний, где L – суммарная длина слов (автомат Ахо-Корасик).

Page 47: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Задачи на развернутом графе.Разметка

Дано слово v = a1…аm. 4. Найти траекторию t = {q0, q1, …, qm} для

которой вероятность P(v|t) максимальна.– Решение. Задача Беллмана на графе Tr(H, m, v).

[Viterby]

Обозначение: TrMaxGlob(v). TrMaxGlob(v) = argmax{t| P(v, t)}

Обозначение: T(v, k) – вершина k-го слоя, через которую проходит траектория TrMaxGlob(v)

TrMaxGlob(v) = = {0, B(v, 1), …, B(v, m)}

**Варианты: все наилучшие траектории, все траектории, которые ненамного отличаются от лучшей.

Page 48: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Задачи на развернутом графеРазметка

Дано слово v = a1…аm. 5. Для каждой вершины (i, k) найти P(i,k | v) –

сумму вероятностей P(v|t) по всем траекториям, проходящим через вершину (i,k).- Решение. Задача о вероятности прохождении

через вершину для графа вероятностей Tr(H, m, v) – вычисление сумм Больцмана для

всех вершин [forward-backward]Термин: апостериорная вероятность вершины (i, k).Обозначение: B(v, k) = argmax{i|P(i,k | v)}.(вершина, имеющая максимальную ап.в. в своем

слое).Обозначение: TrMaxLoc(v) =

= {0, B(v, 1), …, B(v, m)}

Page 49: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

2.3. Оценка параметров CMM

Есть две постановки задачи.

1)Обучающая выборка - множество пар <v, t> (v – слово, t – траектория).

2) Обучающая выборка - множество слов (траектории неизвестны).

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

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

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

Page 50: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Оценка параметров СMM при известных траекториях

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

Пусть дан набор независимых наблюдений{x1, …, xn}; все xi – независимые наблюдения.Пусть вероятность наблюдения x задаются формулой Prob(x) = P(x|θ), зависящей от параметра θ.

Наша цель:Найти значение параметра θ, которое «наиболее соответствует» наблюдениям {x1, …, xn};

– . .

Page 51: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Метод наибольшего правдоподобия

Пусть дан набор наблюдений {x1, …, xn}; все xi – независимые наблюдения.

Пусть вероятность наблюдения x задаются формулой Prob(x) = P(x|θ), зависящей от параметра θ.Наша цель:

Найти значение параметра θ, которое «наиболее соответствует» наблюдениям {x1, …, xn}.

ИДЕЯ: θθ** =argmax =argmax θθ l(l(xx11… x… xnn | | θθ) = ) =

argmax argmax θθ {∑ {∑ jj log P( log P(xxj j | | θθ)})}

Неформально: ищем такой набор Неформально: ищем такой набор параметров, при котором обучающая параметров, при котором обучающая выборка имеет максимальную вероятность. выборка имеет максимальную вероятность.

Page 52: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Можно показать, что при большом количестве наблюдений справедливы оценкиaaklkl = A = Aklkl / / ∑∑l'l'AAkl'kl' ; e ; ekk(b) = E(b) = Ekk(b) / (b) / ∑∑b'b'EEkk(b);(b);

– AAkl kl – наблюденное количество переходов из состояния k в состояние j;

– EEkk(b)(b) – количество символов b, порожденных в состоянии k.

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

Page 53: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Если параметры неизвестны

Итеративный алгоритм Баума-Велча.

1. Выберем некоторые наборы параметров СMM (обычно они генерируются случайно).

2. Найдем для них оптимальные пути во всех представленных примерах

3. По найденным оптимальным путям определим новые параметры

4. Перейдем к шагу 2. Показано, что алгоритм сходится (отношение

правдоподобия растет на каждой итерации) Есть опасность нахождения локального, а не глобального

экстремума.

Page 54: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Перевычисление параметров по Бауму-Велчу-1Перелистнем…

Пусть дана СММ H = <A, Q, φ, σ > c N состояниями и набор слов v1,…, vR . Положим:

F(s, t) – это оценка количества переходов из

состояния s в состояние t (исходя из выборки слов v1, …, vR.при заданной СММ H = <A, Q, φ, σ >);

E(s, b) – оценка количества эмиссий символа b, когда СММ находилась в состоянии s (исходя из выборки слов v1, …, vR.при заданной СММ H = <A, Q, φ, σ >).

Page 55: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Перевычисление параметров по Бауму-Велчу-2 Перелистнем…

F(s, t) – это оценка количества переходов из состояния s в состояние t (исходя из выборки слов v1, …, vR.при заданной СММ H = <A, Q, φ, σ >);

E(s, b) – оценка количества эмиссий символа b, когда СММ находилась в состоянии s (исходя из выборки слов v1, …, vR.при заданной СММ H = <A, Q, φ, σ >).

Сведение к оценкам по одному слову:

F(s,t) = Σj=1,…,R F1(s, t, vj);

E(s,b)= Σj=1,…,R E1(s, b, vj).

Page 56: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Перевычисление параметров по Бауму-Велчу-3 Перелистнем…

Оценки по одному слову: F1(s,t;v) = (1/Pr(v))•

• (Σk=0,…,m-1 Pr(v;πk=s, πk+1=t) )

E1(s,t;v) = (1/Pr(v))• (Σk: xk=b Pr(v;πk=s) )

Page 57: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Перевычисление параметров по Бауму-Велчу Перелистнем и это!

Вероятность

Πj=1,.., R Pr(vj)

не убывает !

Page 58: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

СЕГМЕНТАЦИЯ ПОСЛЕДОВАТЕЛЬНОСТЕЙ

ОБЩАЯ ПОСТАНОВКА ЗАДАЧИ:

Дан текст, в котором перемежаются фрагменты с различными свойствами. Определить границы фрагментов.

Page 59: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

СЕГМЕНТАЦИЯ ПОСЛЕДОВАТЕЛЬНОСТЕЙ. Примеры.

Дан текст, в котором перемежаются фрагменты на двух языках с одинаковым алфавитом. Определить границы фрагментов.

Дана аминокислотная последовательность трансмембранного белка. Известно, что частоты встречаемости аминокислот в трансмембранных и в растворимых частях белка различаются (аналог разных монет). Определить по последовательности где находятся трансмембранные участки.

Дана геномная последовательность. Статистические свойства кодирующих областей отличаются от свойств некодирующих областей. Найти кодирующие области.

• • • • • •

Page 60: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

ПОДХОД к РЕШЕНИЮ ЗАДАЧИ

Дана СММ H = {A, Q, φ, σ}, причем Q = Q1+Q2+…+Qk ,

причем (*) вероятности перехода между состояниями,

лежащими в различных классах Qj, существенно меньше, чем вероятности переходов внутри одного класса.

Пусть дана символьная последовательность v, предположительно описываемая данной СММ.

Восстановим по v траекторию состояний (одним из двух способов – как Trmaxglob(v) или Trmaxloс(v)).

В этих траекториях состояния из одного класса будут идти блоками (см. (*) ). Это и будет искомая сегментация (разбиение на блоки).

Page 61: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

УТОЧНЕНИЕ ГРАНИЦ

Обычно, классы Q1, Q2,…,Qk описывают основные «состояния» процесса (текста).

В то же время, вблизи границ свойства процесса (текста) могут меняться.

Чтобы учесть это, приходится вводить новые состояния модели, что увеличивает ее сложность.

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

Page 62: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Оценка качества сегментации

Дано: тестовая выборка пар (слово, траектория). Однородные классы:

Q(v) = Ncorr/L(v)

Неоднородные классы. Positive – редкий, Negative – частый (P, N).

предсказано реально обозн.кол-ва P P TPP N FPN P FNN N TN

Чувствительность: Acc(v) = TP/(TP+FN)Достоверность: Conf(v) = TP/(TP+FP)

Page 63: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Предсказание кодирующих областей в прокариотах

Реальная схема HMM для поиска кодирующих областей сложнее. Например, она учитывает неравномерность следования кодонов друг за другом.

A

C

G

T

eA

eC

eG

eT

A T1 1

A A C

A A GA A T

A A A1 1

Кодоны

pAAA

G1

1

1

T G A1 1

T A AT A G

Стоп

pstart

pstop

11-pstart

Старт

неко

диру

ющ

аяпо

след

оват

ельн

ость

pAAT

Page 64: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Скрытые марковские модели Выводы

1. СММ – удобный и наиболее общий из используемых сейчас способов задавать вероятности.

Алгоритмически – это задачи ДП на ациклическом графе (графе траекторий)

Польза от СММ – точка зрения, которая подсказывает, как подбирать параметры

Page 65: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

An Example: t-RNA

From Paul Higgs

Раздел 3. Предсказание вторичной структуры РНК.

3.1. История

Page 66: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

C A G A G A C G | | C G | G C G | | A U / \ G | A A \ / G C | | C G | | A U / \ / C C G C-A / | | A G-C-A-A-G G C A G-G-U-U-C | | U-G \ C G U | \ \ / A G C | | | U A U | | | C G U | | | A C G / A G A

Элементы вторичной структуры

Петля-шпилька

Внутреняя петля

Выпячивание

Множественная петляСпирали

Псевдоузел

Page 67: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Представление вторичной структуры без псевдоузлов. "Скобочная структура"

gggctaTAGCTCAGcTGGGAGAGCgcctgcTTtgcACgcaggagGTCtgcGGTTCGAtCCCgcatagctccaCCA((((((( (((( )))) ((((( ))))) ((((( )))))))))))

Page 68: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Предсказание вторичной структуры РНК, свободной от псевдоузлов

Задача 1. Найти скобочную структуру, содержащую максимально возможное количество скобок.

T = O(L3)

Page 69: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Уточнение постановки задачи – 1 (согласование с экспериментом)

1а. Разрешать связи, отличные от A-T, G-C. 1б. Считать не количество связей, а их

суммарную энергию, энергия каждой возможной пары считается известной.

С алгоритмической точки зрения задача практически не меняется.

Page 70: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Уточнение постановки задачи – 2(согласование с экспериментом)

Учитывать вклад нуклеотидов, не участвующих в образовании водородных связей (“Nearest Neighbor model”). Приводит к существенному усложне-нию алгоритма, однако порядок сложности не

меняется T = O(L3)

Page 71: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Уточнение постановки задачи – 3 (согласование с экспериментом)

Молекула РНК может принимать не ту структуру, которой мы приписали оптимальную энергию, а несколько иную, например, из-за того, что мы не знаем точных значений энергетических параметров. Поэтому полезно не искать одну «оптимальную» структуру, а проанализировать все возможные структуры и оценить вероятность образования каждой отдельной связи («статистический вес» связи). Это также можно решить методом динамического программирования.

Page 72: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Уточнение постановки задачи – 4 (согласование с экспериментом)

многие авторы пытаются выяснить вторичную структуру РНК, не сводя ее к какой-либо алгоритмической оптимизационной задаче, а путем моделирования реального процесса «сворачивания» молекулы РНК (т. е. установления и исчезновения водородных связей).

Page 73: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

C A G A G A C G | | C G | G C G | | A U / \ G | A A \ / G C | | C G | | A U / \ / C C G C-A / | | A G-C-A-A-G G C A G-G-U-U-C | | U-G \ C G U | \ \ / A G C | | | U A U | | | C G U | | | A C G / A G A

Элементы вторичной структуры

Петля-шпилька

Внутреняя петля

Выпячивание

Множественная петляСпирали

Псевдоузел

Page 74: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

3a. Предсказание вторичной структуры РНК (внутренние петли, неветвящиеся структуры)

Время работы алгоритма:Время: O(M•log(L)).L – длина РНКM – число возможных

спариваний (M < L2)

Page 75: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

3б. Выравнивание последовательностей РНК с заданной вторичной

структурой.

Page 76: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

3б. Выравнивание последовательностей РНК с заданной вторичной структурой.

Весовая система– это пятерка <M, g, d, b, c>, где M – весовая матрица замен; g и d – коэффициенты аффинной весовой функции удалений фрагментов; b – бонус за одновременное сопоставление двух спаренных нуклеотидов, c – штраф за «потерю» спаривания нуклеотидов W(G) = Σk=1..n M(S1[pk], S2[qk]) – g⋅m - d⋅l + b⋅t - c⋅k

Время: O(m2 n log2(n))

Память: O(m2n log (n))

Page 77: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Раздел 3. Предсказание вторичной структуры РНК.

3.2. Оптимальная структура РНК и гиперграфы

Page 78: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Графы и гиперграфыОсновные понятия

Вершина

Ребро Гиперребро

Вершина-источник

Тупиковая вершина (сток)

Путь Гиперпуть

Инициальный (гипер)путь

Терминальный (гипер)путь

Полный (гипер) путь:

Начальная вершина – источник;

Конечные вершины - тупиковые

Page 79: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Графы и гиперграфыОсновные понятия

Вес гипер(ребра)

«Умножение»: как вычислять вес (гипер)пути

«Сложение»: целевая функция [коммутат.]

Дистрибутивность:

a*(b+c) = a*b+a*c; (b+c)*a = b*a+c*a

Вес пути Вес гиперпути

ПРОБЛЕМА:

НАЙТИ «СУММУ» ВЕСОВ ВСЕХ ПОЛНЫХ (ГИПЕР)ПУТЕЙ

Page 80: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

(Ориентированный) Гиперграф: множество вершин и множество гиперребер

Page 81: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Гиперпуть

Вес гиперпути – ПРОИЗВЕДЕНИЕ (*) весов гиперребер

Page 82: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3
Page 83: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Вторичная структура РНК (оптимальная скобочная структура)

Page 84: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

ВТОРИЧНАЯ СТРУКТУРАстроки P[1..N]

Алфавит: {A, T; G, C}Комплементарные буквы:

A <-> T; G <-> C

Пара (=дуга) (i, j) разрешена, если буквы P[i] и P[j] комплементарны

Page 85: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

ВТОРИЧНАЯ СТРУКТУРАстроки P[1..N]

Множество пар S= {(i_1, j_1),…., (i_K, j_K)} такое, что

(iа) 1 <=i_r <j_r <=N (r = l, ..., K); (ib) все пары в S разрешены (ii) если (i,j) ∈ S и ( i ' , j ' ) ∈ S, то отрезки [i, j] и [i’, j’] либо вложены один в другой,

либо не пересекаются

Вес структуры S – количество пар в ней.W(S) = K

Page 86: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

ОПТИМАЛЬНАЯ ВТОРИЧНАЯ СТРУКТУРАстроки P[1..N]

Оптимальная вторичная структура для строки P – вторичная структура для P, имеющая наибольший возможный вес.

W(P) = max{W(S)| S – структура для P} W(P) = 0, если длина P равна 0 или 1ЗАДАЧА: Найти оптимальную структуру

для данной строки

Page 87: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

W(i, j) = max{«склейка» (i, k) допустима| 1+ W(i+1, k-1)+ W(k+1, j)}

Page 88: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

W(i, j) = max{W(i+1, j), max{k: «склейка» (i, k) допустима| 1+ W(i+1, k-1)+ W(k+1, j)

}}

Page 89: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Пример: РНК и гиперпуть

Page 90: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

ё

Тема 4. Специальные суммы Больцмана для

гиперграфовСлайдов не было

Page 91: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Тема 5. Задача о триангуляцииСлайдов не было

Page 92: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Задачи*.Слайдов не было

1. Набор слов V длины m задан конечным автоматом с r состояниями. Найти суммарную вероятность слов из набора V.

2. Дано: слово v, конечный автомат R. Найти ближайшее к v слово, которое

допускается автоматом R.3. Дано слово v и КС-грамматика Г. Найти вывод

слова v в Г (или доказать, что вывода нет).4. Дано слово v и КС-грамматика Г. Найти

ближайшее к v слово, выводимое в Г.

Page 93: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

СПАСИБО

Page 94: Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

КОНЕЦ