SlideShare una empresa de Scribd logo
1 de 94
Descargar para leer sin conexión
АнализАнализ
символьных последовательностейсимвольных последовательностей
отот биоинформатик ибиоинформатик и до лингвистикидо лингвистики
М.А. Ройтберг
Занятие 3
Екатеринбург
23 апреля 2011
12:00 – 15:00
2
Это было вчераЭто было вчера
0. Задача про триангуляцию – правильное решение
1. Динамическое программирование на графах.
1.1. Вычисление рангов для графов и гиперграфов
1.2. Совместный алгоритм (накопление результата)
1.3. Подсчет сумм Больцмана для всех точек
2. Построение оптимального выравнивания.
2.1. Биологическое введение.
2.2. Глобальное выравнивание: алгоритм для
простейшего случая (повторение)
2.3. Удаление фрагментов
2.4. Качество выравниваний (сравнение с эталоном)
2.5* Другие варианты постановок задач (субоптималь-
ные выравнивания, суммы Больцмана, векторные
веса, веса удалений концов)
3
Это будет сегодняЭто будет сегодня
1. Построение всех «разумных» сходств
1.1. Постановка задачи
1.2. Использование затравок (seed)
1.3. Избирательность и чувствительность
3.4. Типы затравок (seed model)
2. Скрытые марковские модели
3. Предсказание вторичной структуры РНК
4. РНК и гиперграфы
5. Суммы Больцмана для всех вершин гиперграфа
0. Задача про триангуляцию
Раздел 1. Поиск локальных сходств
Немного повторения.
– Использование затравок (seed)
– Избирательность и чувствительность
– Типы затравок (seed model)
Dot plot
ctcgactcgggctcacgctcgcaccgggttacagcggtcgattgct
aggcctcgggctcgcgctcgcgcgctagacaccgggttacagcgt
Detected local
similarity
Затравки: фильтрация
пространства поиска
 Сначала ищем небольшие и легко
диагностируемые участки сходства («затравочные
сходства», seed similarities).
 Далее ищем сходства только в окрестностях
затравочных сходств (одного или нескольких).
Detected seeds
«Классическая затравка»
(пример: 6 совпадений подряд)
 Точные совпадения :
Затравка («затравочное слово», описание
затравочных сходств) : ######
Вес : 6 [количество #]
 Пример : 16 совпадений из 20
ATCAGT
||||||
ATCAGT
######
ATCAGTGCAATGCTCATGAA
|||.|.|||||||:||.|||
ATCGGCGCAATGCGCAAGAA
Затравка ловит сходство
(затавка соответствует сходству)
 Затравка #####  seed
Затравочное сходство (… выравнивание)
ATGCAA
ATGCAA
Затравка соответствует сходству в позиции 10
Затравка не соответствует сходству в позиции 1
Затравка ловит сходство
###### ######
1 10
Скорость поиска затравочных сходств
(точных сходств)
T~ L1+L2 + R
 L1, L2 – длины последовательностей
 R – количество найденных сходств
ctcgactcgggctcacgctcgcaccgggttacagcggtcgattgct
aggcctcgggctcgcgctcgcgcgctagacaccgggttacagcgt
Detected local
similarity
Недостатки подхода
Найденные
затравки
СлучайноеСлучайное
сходствосходство
ПропущенноеПропущенное
сходство: несходство: не
содержитсодержит
затравокзатравок
######
ATCAGTGCAATGCTCATGAA
::|::::||||||:::..::
CCCGACACAATGCGTGACCC
##### [16 of 20!]
ATCAGTGCGATGCTCATGAA
|||.|||||:|||:||.|||
ATCGGTGCGGTGCGCAAGAA
Две проблемы
 “Избирательность”
Затравка может НЕ быть частью
важного (для нас) сходства
 “Чувствительность”
Важное (для нас) сходство может
НЕ содержать ни одной затравки
Что может быть мерой
избирательности и чувствительности
 Избирательность затравки: ~ 4-weight
вероятность ее обнаружения при
сравнении независимых случайных
последовательностей
 Чувствительность затравки:
вероятность того, что затравка попадет в
важное сходство.
Нужно уточнить:
• Что такое «важное сходство»?
• Каково распределение вероятностей
для важных сходств?
Множество важных [целевых]
выравниваний и их вероятности
 Выравнивания фиксированной длины без
удалений
L=18
 Вероятностная модель: Бернулли ;
Случайные вырaвнивания: Prob(match) =0.25
Целевые выравнивания: Prob(match) >> 0.25
Обобщения: Markov models, HMM
{not in this talk}
GCTACGACTTCGAGCTGC
...CTCAGCTATGACCTCGAGCGGCCTATCTA...
Разреженные затравки
Ma, Tromp, Li 2002 (PatternHunter)
 Затравка: ###--#-##
‘#’ : должно быть совпадение
‘-’ : «джокер» (“все равно, что” )
Вес : 6 [количество #]
 Пример:
###--#-##
ATCAGTGCAATGCTCAAGA
|||||.||.||||:|||||
ATCAGCGCGATGCGCAAGA
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
Sensitivity: PH weight 11 seed vs BLAST 11 & 10
[after Ma, Tromp and Li]
Повторение кончилось.
А что
дальше?

 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
Семейства затравок
Пример: ВСЕ (18,3)
ОбнаружитьОбнаружить всевсе сходства длинысходства длины 1818,,
в которых не болеев которых не более 33 несовпаденийнесовпадений
Чувствительность = 1.0
Избирательность
(вероятность случайного появления
затравочного сходства) -> MIN
Пример: ВСЕ (18,3)
ОбнаружитьОбнаружить всевсе сходства длинысходства длины 1818,,
в которых не болеев которых не более 33 несовпаденийнесовпадений
Множественная затравка F решает проблему
ВСЕ(18, 3)
Затравка F состоит из двух простых затравок,
каждая из них имеет вес 7
##-#-####
###---#--##-#
F
##-##-#####
###-####--##
###-##---#-###
##----####-###
###---#-#-##-##
###-#-#-#-----###
Пример: ВСЕ (18.3)
##-#-####
###---#--##-#
###-##---#-###
###---#--##-#
###---#--##-#
w=7
w=9
####
###-##
##-##-#####
###-####--##
###-##---#-###
##----####-###
###---#-#-##-##
###-#-#-#-----###
Пример: ВСЕ (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)
ДАЛЬШЕ НЕ
СМОТРЕЛ
 А – примеры белков и заголовков
 В, С – перевести слайд про преимущества
разреж. затравок
Different mutational events have different
probabilities
Transitions are usually over-represented.
ATCAGTGCAATGCTCAAGA
|||||.||.||||:|||||
ATCAGCGCGATGCGCAAGA
Subset seeds
A T
G C
transitions
transversions
.
: ATCAGTGCAATGCTCAAGA
|||||.||.||||:|||||
ATCAGCGCGATGCGCAAGA
Extended seed alphabet
 seed: ##@#-#@-###
‘#’ : obligatory match position
‘-’ : joker position (“don’t care”
position)
‘@’ : transition-constrained position
position that corresponds to either a match or a transition.
##@#-#@-###
ATCAGTGCAATGCTCAAGA
|||||.||.||||:|||||
ATCAGCGCGATGCGCAAGA
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
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.
Seeds for proteins
PAM250 matrix recommended by Gonnet et al. Science, June 5, 1992
Values rounded to nearest integer
C 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 -1
S 0 2 2 0 1 0 1 0 0 0 0 0 0 -1 -2 -2 -1 -3 -2 -3
T 0 2 2 0 1 -1 0 0 0 0 0 0 0 -1 -1 -1 0 -2 -2 -4
P -3 0 0 8 0 -2 -1 -1 0 0 -1 -1 -1 -2 -3 -2 -2 -4 -3 -5
A 0 1 1 0 2 0 0 0 0 0 -1 -1 0 -1 -1 -1 0 -2 -2 -4
G -2 0 -1 -2 0 7 0 0 -1 -1 -1 -1 -1 -4 -4 -4 -3 -5 -4 -4
N -2 1 0 -1 0 0 4 2 1 1 1 0 1 -2 -3 -3 -2 -3 -1 -4
D -3 0 0 -1 0 0 2 5 3 1 0 0 0 -3 -4 -4 -3 -4 -3 -5
E -3 0 0 0 0 -1 1 3 4 2 0 0 1 -2 -3 -3 -2 -4 -3 -4
Q -2 0 0 0 0 -1 1 1 2 3 1 2 2 -1 -2 -2 -2 -3 -2 -3
H -1 0 0 -1 -1 -1 1 0 0 1 6 1 1 -1 -2 -2 -2 0 2 -1
R -2 0 0 -1 -1 -1 0 0 0 2 1 5 3 -2 -2 -2 -2 -3 -2 -2
K -3 0 0 -1 0 -1 1 0 1 2 1 3 3 -1 -2 -2 -2 -3 -2 -4
M -1 -1 -1 -2 -1 -4 -2 -3 -2 -1 -1 -2 -1 4 2 3 2 2 0 -1
I -1 -2 -1 -3 -1 -4 -3 -4 -3 -2 -2 -2 -2 2 4 3 3 1 -1 -2
L -2 -2 -1 -2 -1 -4 -3 -4 -3 -2 -2 -2 -2 3 3 4 2 2 0 -1
V 0 -1 0 -2 0 -3 -2 -3 -2 -2 -2 -2 -2 2 3 2 3 0 -1 -3
F -1 -3 -2 -4 -2 -5 -3 -4 -4 -3 0 -3 -3 2 1 2 0 7 5 4
Y 0 -2 -2 -3 -2 -4 -1 -3 -3 -2 2 -2 -2 0 -1 0 -1 5 8 4
W -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
BLASTP: vector seeds
Seed alignment: any 3-letter alignment
with total score exceeding a given cut-off
N L C
S S C
1+1+12 = 14
G D I
G Q V
7+1+3 = 11
P C P
P K P
8-3+8 = 13
An amino-acid triple T has a lot of neighbors,
i.e. other triples forming a seed alignment
with T
Improvements…
 Spaced vector seeds
Kisman, Ma, Li, Wang 2005; Brown, 2005
 Subset seeds
Kucherov, Noe, Roytberg, et al, 2007
 Multiple seeds [both cases]
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]
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
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.4
11 94.8 95.6 96.2 96.2
12 89.5 91.5 93.1 93.1
Lost similarities (%) = 100-Sensitivity
BLAST
cut-off
BLAST
(1 seed)
Partition
seed (M)
Subset
seed (M)
Vector
seed (M)
10 2.4 2.3 1.7 1.6
11 5.2 4.4 3.8 3.8
12 10.5 8.5 6.9 6.9
Затравки. Выводы.
 Классические заправки не оптимальны
 Применяя затравки, разберитесь, насколько
они адекватны интересующему Вас классу
сходств.
О чем мы не говорили:
 Как строить хорошие затравки?
 Как вычислить чувствительность затравки?
 И еще о многом…
Раздел 2.
Скрытые Марковские модели (СMM)
Hidden Markov Models
(HMM)
1. Все модели порождают слова (=символьные
последовательности) в некотором алфавите А.
2. Каждое слово w порождается с некоторой
вероятностью Prob(w)
3. Для любой длины L суммарная вероятность
всех слов длины L равна 1.
4. Вероятность слова определяется как
произведение вероятностей его букв.
 2.0. Повторение
 Бернуллиевская модель:
вероятность буквы зависит только от
самой буквы и не зависит ни от
номера позиции буквы в слове, ни от
других букв в слове.
 Prob(‘aba’) = p(a)*p(b)*p(a)
 1. Все модели порождают слова (=символьные
последовательности) в некотором алфавите А.
 2. Каждое слово w порождается с некоторой
вероятностью Prob(w)
 3. Для любой длины L суммарная вероятность
всех слов длины L равна 1.
 4. Вероятность слова определяется как
произведение вероятностей его букв.
Повторение
 Марковская модель: вероятность буквы
зависит от K предшествующих букв. Для слов
длины не более K вероятность задается
отдельно.
Пример. А = {0, 1}
P(0|1) = P(1|0) = 0
P(0|0) = P(1|1) = 1
P(‘0’) = P(‘1’) = 0.5
Распределение вероятностей для слов длины 5?
Повторение
 Марковская модель: вероятность буквы
зависит от K предшествующих букв. Для слов
длины не более K вероятность задается
отдельно.
Пример. А = {0, 1}
P(0|1) = P(1|0) = 0; P(0|0) = P(1|1) = 1
P(‘0’) = P(‘1’) = 0.5
Распределение вероятностей для слов длины 5?
== P(‘00000’) = P(‘11111’) =0.5
Для остальных слов w: P(w)=0
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
ПРИМЕР (временами фальшивая монета, ВФМ)
– Прямоугольники означают состояниясостояния
– Кружки означают результат бросания
(эмиссииэмиссии)
– Стрелки – возможные переходыпереходы между
состояниями
– Числа около кружков – вероятности эмиссии σi
– числа около стрелок – вероятности переходов
между состояниями φik
0
1
0.5
0.5
0
1
0.9
0.1
0.9
0.1
0.8
0.2
•Сумма весов исходящих
стрелок равна 1
•Сумма весов эмиссии в
каждом состоянии рана 1
Вероятности
 Вероятность порождения слова 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. Доказать !!!
Эквивалентные СММ
 СММ H1 и H2 называются
эквивалентными, если они задают
одно и то же распределение
вероятностей.
 Пример – «раздвоение» состояний
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, можно опускать
 Основной граф, как правило, содержит циклы.
Графы, связанные с СММ
 Пусть дана СММ 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| ребер
Задачи на развернутом графе
Вероятности.
 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.
Время - ?
Вероятности
 3.* Набор слов V длины m задан конечным
автоматом с r состояниями. Найти суммарную
вероятность слов из набора V.
Время - ?
Пример. Набор V задается профилем
(позиционно-зависимой системой весов).
Напомним: Для любого конечного множества слов
можно построить автомат, допускающий это
множество и содержащий ~ L состояний, где L –
суммарная длина слов (автомат Ахо-Корасик).
Задачи на развернутом графе.
Разметка
 Дано слово 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)}
**Варианты: все наилучшие траектории, все
траектории, которые ненамного отличаются от
лучшей.
Задачи на развернутом графе
Разметка
 Дано слово 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)}
2.3. Оценка параметров CMM
 Есть две постановки задачи.
1)Обучающая выборка - множество пар <v, t>
(v – слово, t – траектория).
2) Обучающая выборка - множество слов
(траектории неизвестны).
В обоих случаях предполагается известными
сами модели,
т.е. конечные автоматы описаны, но неизвестны
вероятности переходов и вероятности эмиссии
букв.
* В крайнем случае, можно считать, что все
переходы допустимы. Это увеличивает
множество параметров, а значит и требует
Оценка параметров СMM при известных
траекториях
 Используется техника оценки параметров методом
наибольшего правдоподобия.
 Пусть дан набор независимых наблюдений
{x1
, …, xn
}; все xi –
независимые наблюдения.
Пусть вероятность наблюдения x задаются формулой
Prob(x) = P(x|θ), зависящей от параметра θ.
Наша цель:
Найти значение параметра θ, которое «наиболее
соответствует» наблюдениям {x1
, …, xn
};
– ..
Метод наибольшего правдоподобия
 Пусть дан набор наблюдений {x1
, …, xn
};
все xi –
независимые наблюдения.
Пусть вероятность наблюдения x задаются формулой
Prob(x) = P(x|θ), зависящей от параметра θ.
Наша цель:
Найти значение параметра θ, которое «наиболее
соответствует» наблюдениям {x1
, …, xn
}.
 ИДЕЯ:
 θθ**
=argmax=argmax θθ l(l(xx11
… x… xnn
|| θθ) =) =
argmaxargmax θθ {∑{∑ jj log P(log P(xxjj
|| θθ)})}
 Неформально: ищем такой наборНеформально: ищем такой набор
параметров, при котором обучающаяпараметров, при котором обучающая
выборка имеет максимальную вероятность.выборка имеет максимальную вероятность.
 Можно показать, что при большом количестве
наблюдений справедливы оценки
aaklkl = A= Aklkl // ∑∑l'l'AAkl'kl' ; e; ekk(b) = E(b) = Ekk(b) /(b) / ∑∑b'b'EEkk(b);(b);
– AAklkl – наблюденное количество переходов из
состояния k в состояние j;
– EEkk(b)(b) – количество символов b, порожденных в
состоянии k.
* При малых размерах выборки используют
технику псовдоотсчетов, добавляя к
наблюденным значениям поправку, связанную с
априорной гипотезой о вероятностях.
Если параметры неизвестны
 Итеративный алгоритм Баума-Велча.
1. Выберем некоторые наборы параметров СMM
(обычно они генерируются случайно).
2. Найдем для них оптимальные пути во всех
представленных примерах
3. По найденным оптимальным путям
определим новые параметры
4. Перейдем к шагу 2.
 Показано, что алгоритм сходится (отношение
правдоподобия растет на каждой итерации)
 Есть опасность нахождения локального, а не глобального
экстремума.
Перевычисление параметров по Бауму-Велчу-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,
φ, σ >).
Перевычисление параметров по Бауму-Велчу-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).
Перевычисление параметров по Бауму-Велчу-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) )
Перевычисление параметров по Бауму-Велчу
Перелистнем и это!

 Вероятность
Πj=1,.., R Pr(vj)
не убывает !
СЕГМЕНТАЦИЯ ПОСЛЕДОВАТЕЛЬНОСТЕЙ
ОБЩАЯ ПОСТАНОВКА ЗАДАЧИ:
 Дан текст, в котором перемежаются фрагменты с
различными свойствами. Определить границы
фрагментов.
СЕГМЕНТАЦИЯ ПОСЛЕДОВАТЕЛЬНОСТЕЙ. Примеры.
 Дан текст, в котором перемежаются фрагменты на двух
языках с одинаковым алфавитом. Определить границы
фрагментов.
 Дана аминокислотная последовательность
трансмембранного белка. Известно, что частоты
встречаемости аминокислот в трансмембранных и
в растворимых частях белка различаются (аналог
разных монет). Определить по
последовательности где находятся
трансмембранные участки.
 Дана геномная последовательность.
Статистические свойства кодирующих областей
отличаются от свойств некодирующих областей.
Найти кодирующие области.
 • • •
 • • •
ПОДХОД к РЕШЕНИЮ ЗАДАЧИ
 Дана СММ H = {A, Q, φ, σ}, причем
Q = Q1+Q2+…+Qk ,
причем
(*) вероятности перехода между состояниями,
лежащими в различных классах Qj,
существенно меньше, чем вероятности
переходов внутри одного класса.
Пусть дана символьная последовательность v,
предположительно описываемая данной СММ.
Восстановим по v траекторию состояний (одним из
двух способов – как Trmaxglob(v) или Trmaxloс(v)).
В этих траекториях состояния из одного класса будут
идти блоками (см. (*) ). Это и будет искомая
сегментация (разбиение на блоки).
УТОЧНЕНИЕ ГРАНИЦ
 Обычно, классы Q1, Q2,…,Qk описывают основные
«состояния» процесса (текста).
В то же время, вблизи границ свойства процесса
(текста) могут меняться.
Чтобы учесть это, приходится вводить новые
состояния модели, что увеличивает ее сложность.
Альтернатива: грубо предсказать положение
границ с помощью основной модели, а потом
уточнять их локально (например, перебором
вариантов максимизируя некоторый критерий).
Оценка качества сегментации
 Дано: тестовая выборка пар (слово, траектория).
 Однородные классы:
Q(v) = Ncorr/L(v)
 Неоднородные классы.
Positive – редкий, Negative – частый (P, N).
предсказано реально обозн.кол-ва
P P TP
P N FP
N P FN
N N TN
Чувствительность: Acc(v) = TP/(TP+FN)
Достоверность: Conf(v) = TP/(TP+FP)
Предсказание кодирующих областей в прокариотах
 Реальная схема HMM для поиска кодирующих областей
сложнее. Например, она учитывает неравномерность
следования кодонов друг за другом.
A
C
G
T
eA
eC
eG
eT
A T
1 1
A A C
A A G
A A T
A A A
1 1
Кодоны
pAAA
G
1
1
1
T G A
1 1
T A A
T A G
Стоп
pstart
pstop
1
1-pstart
Старт
некодирующая
последовательность
pAAT
Скрытые марковские модели
Выводы
 1. СММ – удобный и наиболее общий из
используемых сейчас способов задавать
вероятности.
 Алгоритмически – это задачи ДП на
ациклическом графе (графе траекторий)
 Польза от СММ – точка зрения, которая
подсказывает, как подбирать параметры
An Example: t-
RNA
From Paul Higgs
Раздел 3.
Предсказание вторичной структуры РНК.
3.1. История
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
Элементы вторичной структуры
Петля-шпилька
Внутреняя петля
Выпячивание
Множественная петляСпирали
Псевдоузел
Представление вторичной структуры без псевдоузлов.
"Скобочная структура"
gggctaTAGCTCAGcTGGGAGAGCgcctgcTTtgcACgcaggagGTCtgcGGTTCGAtCCCgcatagctccaCCA
((((((( (((( )))) ((((( ))))) ((((( )))))))))))
Предсказание вторичной структуры РНК,
свободной от псевдоузлов
 Задача 1. Найти скобочную структуру,
содержащую максимально возможное
количество скобок.
 T = O(L3
)
Уточнение постановки задачи – 1
(согласование с экспериментом)
 1а. Разрешать связи, отличные от A-T, G-C.
 1б. Считать не количество связей, а их
суммарную энергию, энергия каждой возможной
пары считается известной.
С алгоритмической точки зрения задача
практически не меняется.
Уточнение постановки задачи – 2
(согласование с экспериментом)
 Учитывать вклад нуклеотидов, не участвующих в
образовании водородных связей (“Nearest
Neighbor model”).
Приводит к существенному усложне-нию
алгоритма, однако порядок сложности не
меняется T = O(L3
)
Уточнение постановки задачи – 3
(согласование с экспериментом)
 Молекула РНК может принимать не ту структуру,
которой мы приписали оптимальную энергию, а
несколько иную, например, из-за того, что мы не знаем
точных значений энергетических параметров. Поэтому
полезно не искать одну «оптимальную» структуру, а
проанализировать все возможные структуры и оценить
вероятность образования каждой отдельной связи
(«статистический вес» связи). Это также можно решить
методом динамического программирования.
Уточнение постановки задачи – 4
(согласование с экспериментом)
 многие авторы пытаются выяснить вторичную
структуру РНК, не сводя ее к какой-либо
алгоритмической оптимизационной задаче, а
путем моделирования реального процесса
«сворачивания» молекулы РНК (т. е.
установления и исчезновения водородных
связей).
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
Элементы вторичной структуры
Петля-шпилька
Внутреняя петля
Выпячивание
Множественная петляСпирали
Псевдоузел
3a. Предсказание вторичной структуры РНК
(внутренние петли, неветвящиеся
структуры)
Время работы алгоритма:
Время: O(M•log(L)).
L – длина РНК
M – число возможных
спариваний (M < L
2
)
3б. Выравнивание последовательностей
РНК с заданной вторичной
структурой.
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(m
2
n log
2
(n))
Память: O(m
2
n log (n))
Раздел 3.
Предсказание вторичной структуры РНК.
3.2. Оптимальная структура РНК и гиперграфы
Графы и гиперграфы
Основные понятия
Вершина
Ребро Гиперребро
Вершина-источник
Тупиковая вершина (сток)
Путь Гиперпуть
Инициальный (гипер)путь
Терминальный (гипер)путь
Полный (гипер) путь:
Начальная вершина – источник;
Конечные вершины - тупиковые
Графы и гиперграфы
Основные понятия
Вес гипер(ребра)
«Умножение»: как вычислять вес (гипер)пути
«Сложение»: целевая функция [коммутат.]
Дистрибутивность:
a*(b+c) = a*b+a*c; (b+c)*a = b*a+c*a
Вес пути Вес гиперпути
ПРОБЛЕМА:
НАЙТИ «СУММУ» ВЕСОВ
ВСЕХ ПОЛНЫХ (ГИПЕР)ПУТЕЙ
(Ориентированный) Гиперграф: множество
вершин и множество гиперребер
Гиперпуть
Вес гиперпути – ПРОИЗВЕДЕНИЕ (*)
весов гиперребер
Вторичная структура РНК
(оптимальная скобочная структура)
ВТОРИЧНАЯ СТРУКТУРА
строки P[1..N]
Алфавит: {A, T; G, C}
Комплементарные буквы:
A <-> T;
G <-> C
Пара (=дуга) (i, j) разрешена, если буквы
P[i] и P[j] комплементарны
ВТОРИЧНАЯ СТРУКТУРА
строки 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
ОПТИМАЛЬНАЯ ВТОРИЧНАЯ СТРУКТУРА
строки P[1..N]
Оптимальная вторичная структура для
строки P – вторичная структура для P,
имеющая наибольший возможный вес.
W(P) = max{W(S)| S – структура для P}
W(P) = 0, если длина P равна 0 или 1
ЗАДАЧА: Найти оптимальную структуру
для данной строки
W(i, j) = max{«склейка» (i, k) допустима|
1+ W(i+1, k-1)+ W(k+1, j)}
W(i, j) = max{W(i+1, j),
max{k: «склейка» (i, k) допустима|
1+ W(i+1, k-1)+ W(k+1, j)
}}
Пример: РНК и гиперпуть
ё
Тема 4.
Специальные суммы Больцмана для
гиперграфов
Слайдов не было 
Тема 5.
Задача о триангуляции
Слайдов не было 
Задачи*.
Слайдов не было 
1. Набор слов V длины m задан конечным
автоматом с r состояниями. Найти суммарную
вероятность слов из набора V.
2. Дано: слово v, конечный автомат R.
Найти ближайшее к v слово, которое
допускается автоматом R.
3. Дано слово v и КС-грамматика Г. Найти вывод
слова v в Г (или доказать, что вывода нет).
4. Дано слово v и КС-грамматика Г. Найти
ближайшее к v слово, выводимое в Г.
СПАСИБО
КОНЕЦ

Más contenido relacionado

Similar a Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3

Задача о ближайшем кодовом слове. Коды Галлагера—Сипсера—Шпильмана
Задача о ближайшем кодовом слове. Коды Галлагера—Сипсера—ШпильманаЗадача о ближайшем кодовом слове. Коды Галлагера—Сипсера—Шпильмана
Задача о ближайшем кодовом слове. Коды Галлагера—Сипсера—ШпильманаAlex Dainiak
 
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)Dmitry Kornev
 
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)Bitworks Software
 
Komarov borba za-miesto-urfu_2013
Komarov borba za-miesto-urfu_2013Komarov borba za-miesto-urfu_2013
Komarov borba za-miesto-urfu_2013Yandex
 
Рабочий кабинет на сайте www.fastprint.info
Рабочий кабинет на сайте www.fastprint.infoРабочий кабинет на сайте www.fastprint.info
Рабочий кабинет на сайте www.fastprint.infoNikolay Shelepov
 
Руководство пользователя www.fastprint.info
Руководство пользователя www.fastprint.infoРуководство пользователя www.fastprint.info
Руководство пользователя www.fastprint.infoNikolay Shelepov
 
Денис Чистяков: Паттерны проектирования
Денис Чистяков: Паттерны проектированияДенис Чистяков: Паттерны проектирования
Денис Чистяков: Паттерны проектированияYandex
 
повторение 7кл. алгебра
повторение 7кл. алгебраповторение 7кл. алгебра
повторение 7кл. алгебраLyudmila Yefremova
 
координатная плоскость 6 класс
координатная плоскость 6 класскоординатная плоскость 6 класс
координатная плоскость 6 классolesjaAG
 
егэ часть а
егэ часть аегэ часть а
егэ часть аdasha2012
 
Петрикин "Разработка программных средств лоя идентификации диктора по голосу"
Петрикин "Разработка программных средств лоя идентификации диктора по голосу"Петрикин "Разработка программных средств лоя идентификации диктора по голосу"
Петрикин "Разработка программных средств лоя идентификации диктора по голосу"RF-Lab
 
Решение СЛАУ
Решение СЛАУРешение СЛАУ
Решение СЛАУdayzil03
 
325 алгебра и начала анализа в таблицах и схемах евдокимова н.н-2007 -96с
325  алгебра и начала анализа в таблицах и схемах евдокимова н.н-2007 -96с325  алгебра и начала анализа в таблицах и схемах евдокимова н.н-2007 -96с
325 алгебра и начала анализа в таблицах и схемах евдокимова н.н-2007 -96сpsvayy
 
Underwater pipeline diagnostics and its dataware
Underwater pipeline diagnostics and its datawareUnderwater pipeline diagnostics and its dataware
Underwater pipeline diagnostics and its datawareSborker
 
Отказоустойчивая обработка 10M OAuth токенов на Tarantool / Владимир Перепели...
Отказоустойчивая обработка 10M OAuth токенов на Tarantool / Владимир Перепели...Отказоустойчивая обработка 10M OAuth токенов на Tarantool / Владимир Перепели...
Отказоустойчивая обработка 10M OAuth токенов на Tarantool / Владимир Перепели...Ontico
 

Similar a Mikhail Roytberg - Sequence Analysis (from Biology to Linguistics) Part3 (20)

Short instruction laba1
Short instruction laba1Short instruction laba1
Short instruction laba1
 
Задача о ближайшем кодовом слове. Коды Галлагера—Сипсера—Шпильмана
Задача о ближайшем кодовом слове. Коды Галлагера—Сипсера—ШпильманаЗадача о ближайшем кодовом слове. Коды Галлагера—Сипсера—Шпильмана
Задача о ближайшем кодовом слове. Коды Галлагера—Сипсера—Шпильмана
 
01-001
01-00101-001
01-001
 
Rgsu04
Rgsu04Rgsu04
Rgsu04
 
Rgsu04
Rgsu04Rgsu04
Rgsu04
 
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
 
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
 
Komarov borba za-miesto-urfu_2013
Komarov borba za-miesto-urfu_2013Komarov borba za-miesto-urfu_2013
Komarov borba za-miesto-urfu_2013
 
лекция 37
лекция 37лекция 37
лекция 37
 
Рабочий кабинет на сайте www.fastprint.info
Рабочий кабинет на сайте www.fastprint.infoРабочий кабинет на сайте www.fastprint.info
Рабочий кабинет на сайте www.fastprint.info
 
Руководство пользователя www.fastprint.info
Руководство пользователя www.fastprint.infoРуководство пользователя www.fastprint.info
Руководство пользователя www.fastprint.info
 
Денис Чистяков: Паттерны проектирования
Денис Чистяков: Паттерны проектированияДенис Чистяков: Паттерны проектирования
Денис Чистяков: Паттерны проектирования
 
повторение 7кл. алгебра
повторение 7кл. алгебраповторение 7кл. алгебра
повторение 7кл. алгебра
 
координатная плоскость 6 класс
координатная плоскость 6 класскоординатная плоскость 6 класс
координатная плоскость 6 класс
 
егэ часть а
егэ часть аегэ часть а
егэ часть а
 
Петрикин "Разработка программных средств лоя идентификации диктора по голосу"
Петрикин "Разработка программных средств лоя идентификации диктора по голосу"Петрикин "Разработка программных средств лоя идентификации диктора по голосу"
Петрикин "Разработка программных средств лоя идентификации диктора по голосу"
 
Решение СЛАУ
Решение СЛАУРешение СЛАУ
Решение СЛАУ
 
325 алгебра и начала анализа в таблицах и схемах евдокимова н.н-2007 -96с
325  алгебра и начала анализа в таблицах и схемах евдокимова н.н-2007 -96с325  алгебра и начала анализа в таблицах и схемах евдокимова н.н-2007 -96с
325 алгебра и начала анализа в таблицах и схемах евдокимова н.н-2007 -96с
 
Underwater pipeline diagnostics and its dataware
Underwater pipeline diagnostics and its datawareUnderwater pipeline diagnostics and its dataware
Underwater pipeline diagnostics and its dataware
 
Отказоустойчивая обработка 10M OAuth токенов на Tarantool / Владимир Перепели...
Отказоустойчивая обработка 10M OAuth токенов на Tarantool / Владимир Перепели...Отказоустойчивая обработка 10M OAuth токенов на Tarantool / Владимир Перепели...
Отказоустойчивая обработка 10M OAuth токенов на Tarantool / Владимир Перепели...
 

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

  • 1. АнализАнализ символьных последовательностейсимвольных последовательностей отот биоинформатик ибиоинформатик и до лингвистикидо лингвистики М.А. Ройтберг Занятие 3 Екатеринбург 23 апреля 2011 12:00 – 15:00
  • 2. 2 Это было вчераЭто было вчера 0. Задача про триангуляцию – правильное решение 1. Динамическое программирование на графах. 1.1. Вычисление рангов для графов и гиперграфов 1.2. Совместный алгоритм (накопление результата) 1.3. Подсчет сумм Больцмана для всех точек 2. Построение оптимального выравнивания. 2.1. Биологическое введение. 2.2. Глобальное выравнивание: алгоритм для простейшего случая (повторение) 2.3. Удаление фрагментов 2.4. Качество выравниваний (сравнение с эталоном) 2.5* Другие варианты постановок задач (субоптималь- ные выравнивания, суммы Больцмана, векторные веса, веса удалений концов)
  • 3. 3 Это будет сегодняЭто будет сегодня 1. Построение всех «разумных» сходств 1.1. Постановка задачи 1.2. Использование затравок (seed) 1.3. Избирательность и чувствительность 3.4. Типы затравок (seed model) 2. Скрытые марковские модели 3. Предсказание вторичной структуры РНК 4. РНК и гиперграфы 5. Суммы Больцмана для всех вершин гиперграфа 0. Задача про триангуляцию
  • 4. Раздел 1. Поиск локальных сходств Немного повторения. – Использование затравок (seed) – Избирательность и чувствительность – Типы затравок (seed model)
  • 5. Dot plot ctcgactcgggctcacgctcgcaccgggttacagcggtcgattgct aggcctcgggctcgcgctcgcgcgctagacaccgggttacagcgt Detected local similarity Затравки: фильтрация пространства поиска  Сначала ищем небольшие и легко диагностируемые участки сходства («затравочные сходства», seed similarities).  Далее ищем сходства только в окрестностях затравочных сходств (одного или нескольких). Detected seeds
  • 6. «Классическая затравка» (пример: 6 совпадений подряд)  Точные совпадения : Затравка («затравочное слово», описание затравочных сходств) : ###### Вес : 6 [количество #]  Пример : 16 совпадений из 20 ATCAGT |||||| ATCAGT ###### ATCAGTGCAATGCTCATGAA |||.|.|||||||:||.||| ATCGGCGCAATGCGCAAGAA
  • 7. Затравка ловит сходство (затавка соответствует сходству)  Затравка #####  seed Затравочное сходство (… выравнивание) ATGCAA ATGCAA Затравка соответствует сходству в позиции 10 Затравка не соответствует сходству в позиции 1 Затравка ловит сходство ###### ###### 1 10
  • 8. Скорость поиска затравочных сходств (точных сходств) T~ L1+L2 + R  L1, L2 – длины последовательностей  R – количество найденных сходств
  • 9. ctcgactcgggctcacgctcgcaccgggttacagcggtcgattgct aggcctcgggctcgcgctcgcgcgctagacaccgggttacagcgt Detected local similarity Недостатки подхода Найденные затравки СлучайноеСлучайное сходствосходство ПропущенноеПропущенное сходство: несходство: не содержитсодержит затравокзатравок ###### ATCAGTGCAATGCTCATGAA ::|::::||||||:::..:: CCCGACACAATGCGTGACCC ##### [16 of 20!] ATCAGTGCGATGCTCATGAA |||.|||||:|||:||.||| ATCGGTGCGGTGCGCAAGAA
  • 10. Две проблемы  “Избирательность” Затравка может НЕ быть частью важного (для нас) сходства  “Чувствительность” Важное (для нас) сходство может НЕ содержать ни одной затравки
  • 11. Что может быть мерой избирательности и чувствительности  Избирательность затравки: ~ 4-weight вероятность ее обнаружения при сравнении независимых случайных последовательностей  Чувствительность затравки: вероятность того, что затравка попадет в важное сходство. Нужно уточнить: • Что такое «важное сходство»? • Каково распределение вероятностей для важных сходств?
  • 12. Множество важных [целевых] выравниваний и их вероятности  Выравнивания фиксированной длины без удалений L=18  Вероятностная модель: Бернулли ; Случайные вырaвнивания: Prob(match) =0.25 Целевые выравнивания: Prob(match) >> 0.25 Обобщения: Markov models, HMM {not in this talk} GCTACGACTTCGAGCTGC ...CTCAGCTATGACCTCGAGCGGCCTATCTA...
  • 13. Разреженные затравки Ma, Tromp, Li 2002 (PatternHunter)  Затравка: ###--#-## ‘#’ : должно быть совпадение ‘-’ : «джокер» (“все равно, что” ) Вес : 6 [количество #]  Пример: ###--#-## ATCAGTGCAATGCTCAAGA |||||.||.||||:||||| ATCAGCGCGATGCGCAAGA
  • 14. 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
  • 15. Sensitivity: PH weight 11 seed vs BLAST 11 & 10 [after Ma, Tromp and Li]
  • 17.  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 Семейства затравок
  • 18. Пример: ВСЕ (18,3) ОбнаружитьОбнаружить всевсе сходства длинысходства длины 1818,, в которых не болеев которых не более 33 несовпаденийнесовпадений Чувствительность = 1.0 Избирательность (вероятность случайного появления затравочного сходства) -> MIN
  • 19. Пример: ВСЕ (18,3) ОбнаружитьОбнаружить всевсе сходства длинысходства длины 1818,, в которых не болеев которых не более 33 несовпаденийнесовпадений Множественная затравка F решает проблему ВСЕ(18, 3) Затравка F состоит из двух простых затравок, каждая из них имеет вес 7 ##-#-#### ###---#--##-# F
  • 21. #### ###-## ##-##-##### ###-####--## ###-##---#-### ##----####-### ###---#-#-##-## ###-#-#-#-----### Пример: ВСЕ (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)
  • 22. ДАЛЬШЕ НЕ СМОТРЕЛ  А – примеры белков и заголовков  В, С – перевести слайд про преимущества разреж. затравок
  • 23. Different mutational events have different probabilities Transitions are usually over-represented. ATCAGTGCAATGCTCAAGA |||||.||.||||:||||| ATCAGCGCGATGCGCAAGA Subset seeds A T G C transitions transversions . : ATCAGTGCAATGCTCAAGA |||||.||.||||:||||| ATCAGCGCGATGCGCAAGA
  • 24. Extended seed alphabet  seed: ##@#-#@-### ‘#’ : obligatory match position ‘-’ : joker position (“don’t care” position) ‘@’ : transition-constrained position position that corresponds to either a match or a transition. ##@#-#@-### ATCAGTGCAATGCTCAAGA |||||.||.||||:||||| ATCAGCGCGATGCGCAAGA
  • 25. 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
  • 26. 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.
  • 27. Seeds for proteins PAM250 matrix recommended by Gonnet et al. Science, June 5, 1992 Values rounded to nearest integer C 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 -1 S 0 2 2 0 1 0 1 0 0 0 0 0 0 -1 -2 -2 -1 -3 -2 -3 T 0 2 2 0 1 -1 0 0 0 0 0 0 0 -1 -1 -1 0 -2 -2 -4 P -3 0 0 8 0 -2 -1 -1 0 0 -1 -1 -1 -2 -3 -2 -2 -4 -3 -5 A 0 1 1 0 2 0 0 0 0 0 -1 -1 0 -1 -1 -1 0 -2 -2 -4 G -2 0 -1 -2 0 7 0 0 -1 -1 -1 -1 -1 -4 -4 -4 -3 -5 -4 -4 N -2 1 0 -1 0 0 4 2 1 1 1 0 1 -2 -3 -3 -2 -3 -1 -4 D -3 0 0 -1 0 0 2 5 3 1 0 0 0 -3 -4 -4 -3 -4 -3 -5 E -3 0 0 0 0 -1 1 3 4 2 0 0 1 -2 -3 -3 -2 -4 -3 -4 Q -2 0 0 0 0 -1 1 1 2 3 1 2 2 -1 -2 -2 -2 -3 -2 -3 H -1 0 0 -1 -1 -1 1 0 0 1 6 1 1 -1 -2 -2 -2 0 2 -1 R -2 0 0 -1 -1 -1 0 0 0 2 1 5 3 -2 -2 -2 -2 -3 -2 -2 K -3 0 0 -1 0 -1 1 0 1 2 1 3 3 -1 -2 -2 -2 -3 -2 -4 M -1 -1 -1 -2 -1 -4 -2 -3 -2 -1 -1 -2 -1 4 2 3 2 2 0 -1 I -1 -2 -1 -3 -1 -4 -3 -4 -3 -2 -2 -2 -2 2 4 3 3 1 -1 -2 L -2 -2 -1 -2 -1 -4 -3 -4 -3 -2 -2 -2 -2 3 3 4 2 2 0 -1 V 0 -1 0 -2 0 -3 -2 -3 -2 -2 -2 -2 -2 2 3 2 3 0 -1 -3 F -1 -3 -2 -4 -2 -5 -3 -4 -4 -3 0 -3 -3 2 1 2 0 7 5 4 Y 0 -2 -2 -3 -2 -4 -1 -3 -3 -2 2 -2 -2 0 -1 0 -1 5 8 4 W -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
  • 28. BLASTP: vector seeds Seed alignment: any 3-letter alignment with total score exceeding a given cut-off N L C S S C 1+1+12 = 14 G D I G Q V 7+1+3 = 11 P C P P K P 8-3+8 = 13 An amino-acid triple T has a lot of neighbors, i.e. other triples forming a seed alignment with T
  • 29. Improvements…  Spaced vector seeds Kisman, Ma, Li, Wang 2005; Brown, 2005  Subset seeds Kucherov, Noe, Roytberg, et al, 2007  Multiple seeds [both cases]
  • 30. 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]
  • 31. 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
  • 32. 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.4 11 94.8 95.6 96.2 96.2 12 89.5 91.5 93.1 93.1 Lost similarities (%) = 100-Sensitivity BLAST cut-off BLAST (1 seed) Partition seed (M) Subset seed (M) Vector seed (M) 10 2.4 2.3 1.7 1.6 11 5.2 4.4 3.8 3.8 12 10.5 8.5 6.9 6.9
  • 33. Затравки. Выводы.  Классические заправки не оптимальны  Применяя затравки, разберитесь, насколько они адекватны интересующему Вас классу сходств. О чем мы не говорили:  Как строить хорошие затравки?  Как вычислить чувствительность затравки?  И еще о многом…
  • 34. Раздел 2. Скрытые Марковские модели (СMM) Hidden Markov Models (HMM) 1. Все модели порождают слова (=символьные последовательности) в некотором алфавите А. 2. Каждое слово w порождается с некоторой вероятностью Prob(w) 3. Для любой длины L суммарная вероятность всех слов длины L равна 1. 4. Вероятность слова определяется как произведение вероятностей его букв.
  • 35.  2.0. Повторение  Бернуллиевская модель: вероятность буквы зависит только от самой буквы и не зависит ни от номера позиции буквы в слове, ни от других букв в слове.  Prob(‘aba’) = p(a)*p(b)*p(a)  1. Все модели порождают слова (=символьные последовательности) в некотором алфавите А.  2. Каждое слово w порождается с некоторой вероятностью Prob(w)  3. Для любой длины L суммарная вероятность всех слов длины L равна 1.  4. Вероятность слова определяется как произведение вероятностей его букв.
  • 36. Повторение  Марковская модель: вероятность буквы зависит от K предшествующих букв. Для слов длины не более K вероятность задается отдельно. Пример. А = {0, 1} P(0|1) = P(1|0) = 0 P(0|0) = P(1|1) = 1 P(‘0’) = P(‘1’) = 0.5 Распределение вероятностей для слов длины 5?
  • 37. Повторение  Марковская модель: вероятность буквы зависит от K предшествующих букв. Для слов длины не более K вероятность задается отдельно. Пример. А = {0, 1} P(0|1) = P(1|0) = 0; P(0|0) = P(1|1) = 1 P(‘0’) = P(‘1’) = 0.5 Распределение вероятностей для слов длины 5? == P(‘00000’) = P(‘11111’) =0.5 Для остальных слов w: P(w)=0
  • 38. 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
  • 39. ПРИМЕР (временами фальшивая монета, ВФМ) – Прямоугольники означают состояниясостояния – Кружки означают результат бросания (эмиссииэмиссии) – Стрелки – возможные переходыпереходы между состояниями – Числа около кружков – вероятности эмиссии σi – числа около стрелок – вероятности переходов между состояниями φik 0 1 0.5 0.5 0 1 0.9 0.1 0.9 0.1 0.8 0.2 •Сумма весов исходящих стрелок равна 1 •Сумма весов эмиссии в каждом состоянии рана 1
  • 40.
  • 41. Вероятности  Вероятность порождения слова 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. Доказать !!!
  • 42. Эквивалентные СММ  СММ H1 и H2 называются эквивалентными, если они задают одно и то же распределение вероятностей.  Пример – «раздвоение» состояний
  • 43. 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, можно опускать  Основной граф, как правило, содержит циклы.
  • 44. Графы, связанные с СММ  Пусть дана СММ 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| ребер
  • 45. Задачи на развернутом графе Вероятности.  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. Время - ?
  • 46. Вероятности  3.* Набор слов V длины m задан конечным автоматом с r состояниями. Найти суммарную вероятность слов из набора V. Время - ? Пример. Набор V задается профилем (позиционно-зависимой системой весов). Напомним: Для любого конечного множества слов можно построить автомат, допускающий это множество и содержащий ~ L состояний, где L – суммарная длина слов (автомат Ахо-Корасик).
  • 47. Задачи на развернутом графе. Разметка  Дано слово 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)} **Варианты: все наилучшие траектории, все траектории, которые ненамного отличаются от лучшей.
  • 48. Задачи на развернутом графе Разметка  Дано слово 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)}
  • 49. 2.3. Оценка параметров CMM  Есть две постановки задачи. 1)Обучающая выборка - множество пар <v, t> (v – слово, t – траектория). 2) Обучающая выборка - множество слов (траектории неизвестны). В обоих случаях предполагается известными сами модели, т.е. конечные автоматы описаны, но неизвестны вероятности переходов и вероятности эмиссии букв. * В крайнем случае, можно считать, что все переходы допустимы. Это увеличивает множество параметров, а значит и требует
  • 50. Оценка параметров СMM при известных траекториях  Используется техника оценки параметров методом наибольшего правдоподобия.  Пусть дан набор независимых наблюдений {x1 , …, xn }; все xi – независимые наблюдения. Пусть вероятность наблюдения x задаются формулой Prob(x) = P(x|θ), зависящей от параметра θ. Наша цель: Найти значение параметра θ, которое «наиболее соответствует» наблюдениям {x1 , …, xn }; – ..
  • 51. Метод наибольшего правдоподобия  Пусть дан набор наблюдений {x1 , …, xn }; все xi – независимые наблюдения. Пусть вероятность наблюдения x задаются формулой Prob(x) = P(x|θ), зависящей от параметра θ. Наша цель: Найти значение параметра θ, которое «наиболее соответствует» наблюдениям {x1 , …, xn }.  ИДЕЯ:  θθ** =argmax=argmax θθ l(l(xx11 … x… xnn || θθ) =) = argmaxargmax θθ {∑{∑ jj log P(log P(xxjj || θθ)})}  Неформально: ищем такой наборНеформально: ищем такой набор параметров, при котором обучающаяпараметров, при котором обучающая выборка имеет максимальную вероятность.выборка имеет максимальную вероятность.
  • 52.  Можно показать, что при большом количестве наблюдений справедливы оценки aaklkl = A= Aklkl // ∑∑l'l'AAkl'kl' ; e; ekk(b) = E(b) = Ekk(b) /(b) / ∑∑b'b'EEkk(b);(b); – AAklkl – наблюденное количество переходов из состояния k в состояние j; – EEkk(b)(b) – количество символов b, порожденных в состоянии k. * При малых размерах выборки используют технику псовдоотсчетов, добавляя к наблюденным значениям поправку, связанную с априорной гипотезой о вероятностях.
  • 53. Если параметры неизвестны  Итеративный алгоритм Баума-Велча. 1. Выберем некоторые наборы параметров СMM (обычно они генерируются случайно). 2. Найдем для них оптимальные пути во всех представленных примерах 3. По найденным оптимальным путям определим новые параметры 4. Перейдем к шагу 2.  Показано, что алгоритм сходится (отношение правдоподобия растет на каждой итерации)  Есть опасность нахождения локального, а не глобального экстремума.
  • 54. Перевычисление параметров по Бауму-Велчу-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, φ, σ >).
  • 55. Перевычисление параметров по Бауму-Велчу-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).
  • 56. Перевычисление параметров по Бауму-Велчу-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) )
  • 57. Перевычисление параметров по Бауму-Велчу Перелистнем и это!   Вероятность Πj=1,.., R Pr(vj) не убывает !
  • 58. СЕГМЕНТАЦИЯ ПОСЛЕДОВАТЕЛЬНОСТЕЙ ОБЩАЯ ПОСТАНОВКА ЗАДАЧИ:  Дан текст, в котором перемежаются фрагменты с различными свойствами. Определить границы фрагментов.
  • 59. СЕГМЕНТАЦИЯ ПОСЛЕДОВАТЕЛЬНОСТЕЙ. Примеры.  Дан текст, в котором перемежаются фрагменты на двух языках с одинаковым алфавитом. Определить границы фрагментов.  Дана аминокислотная последовательность трансмембранного белка. Известно, что частоты встречаемости аминокислот в трансмембранных и в растворимых частях белка различаются (аналог разных монет). Определить по последовательности где находятся трансмембранные участки.  Дана геномная последовательность. Статистические свойства кодирующих областей отличаются от свойств некодирующих областей. Найти кодирующие области.  • • •  • • •
  • 60. ПОДХОД к РЕШЕНИЮ ЗАДАЧИ  Дана СММ H = {A, Q, φ, σ}, причем Q = Q1+Q2+…+Qk , причем (*) вероятности перехода между состояниями, лежащими в различных классах Qj, существенно меньше, чем вероятности переходов внутри одного класса. Пусть дана символьная последовательность v, предположительно описываемая данной СММ. Восстановим по v траекторию состояний (одним из двух способов – как Trmaxglob(v) или Trmaxloс(v)). В этих траекториях состояния из одного класса будут идти блоками (см. (*) ). Это и будет искомая сегментация (разбиение на блоки).
  • 61. УТОЧНЕНИЕ ГРАНИЦ  Обычно, классы Q1, Q2,…,Qk описывают основные «состояния» процесса (текста). В то же время, вблизи границ свойства процесса (текста) могут меняться. Чтобы учесть это, приходится вводить новые состояния модели, что увеличивает ее сложность. Альтернатива: грубо предсказать положение границ с помощью основной модели, а потом уточнять их локально (например, перебором вариантов максимизируя некоторый критерий).
  • 62. Оценка качества сегментации  Дано: тестовая выборка пар (слово, траектория).  Однородные классы: Q(v) = Ncorr/L(v)  Неоднородные классы. Positive – редкий, Negative – частый (P, N). предсказано реально обозн.кол-ва P P TP P N FP N P FN N N TN Чувствительность: Acc(v) = TP/(TP+FN) Достоверность: Conf(v) = TP/(TP+FP)
  • 63. Предсказание кодирующих областей в прокариотах  Реальная схема HMM для поиска кодирующих областей сложнее. Например, она учитывает неравномерность следования кодонов друг за другом. A C G T eA eC eG eT A T 1 1 A A C A A G A A T A A A 1 1 Кодоны pAAA G 1 1 1 T G A 1 1 T A A T A G Стоп pstart pstop 1 1-pstart Старт некодирующая последовательность pAAT
  • 64. Скрытые марковские модели Выводы  1. СММ – удобный и наиболее общий из используемых сейчас способов задавать вероятности.  Алгоритмически – это задачи ДП на ациклическом графе (графе траекторий)  Польза от СММ – точка зрения, которая подсказывает, как подбирать параметры
  • 65. An Example: t- RNA From Paul Higgs Раздел 3. Предсказание вторичной структуры РНК. 3.1. История
  • 66. 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 Элементы вторичной структуры Петля-шпилька Внутреняя петля Выпячивание Множественная петляСпирали Псевдоузел
  • 67. Представление вторичной структуры без псевдоузлов. "Скобочная структура" gggctaTAGCTCAGcTGGGAGAGCgcctgcTTtgcACgcaggagGTCtgcGGTTCGAtCCCgcatagctccaCCA ((((((( (((( )))) ((((( ))))) ((((( )))))))))))
  • 68. Предсказание вторичной структуры РНК, свободной от псевдоузлов  Задача 1. Найти скобочную структуру, содержащую максимально возможное количество скобок.  T = O(L3 )
  • 69. Уточнение постановки задачи – 1 (согласование с экспериментом)  1а. Разрешать связи, отличные от A-T, G-C.  1б. Считать не количество связей, а их суммарную энергию, энергия каждой возможной пары считается известной. С алгоритмической точки зрения задача практически не меняется.
  • 70. Уточнение постановки задачи – 2 (согласование с экспериментом)  Учитывать вклад нуклеотидов, не участвующих в образовании водородных связей (“Nearest Neighbor model”). Приводит к существенному усложне-нию алгоритма, однако порядок сложности не меняется T = O(L3 )
  • 71. Уточнение постановки задачи – 3 (согласование с экспериментом)  Молекула РНК может принимать не ту структуру, которой мы приписали оптимальную энергию, а несколько иную, например, из-за того, что мы не знаем точных значений энергетических параметров. Поэтому полезно не искать одну «оптимальную» структуру, а проанализировать все возможные структуры и оценить вероятность образования каждой отдельной связи («статистический вес» связи). Это также можно решить методом динамического программирования.
  • 72. Уточнение постановки задачи – 4 (согласование с экспериментом)  многие авторы пытаются выяснить вторичную структуру РНК, не сводя ее к какой-либо алгоритмической оптимизационной задаче, а путем моделирования реального процесса «сворачивания» молекулы РНК (т. е. установления и исчезновения водородных связей).
  • 73. 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 Элементы вторичной структуры Петля-шпилька Внутреняя петля Выпячивание Множественная петляСпирали Псевдоузел
  • 74. 3a. Предсказание вторичной структуры РНК (внутренние петли, неветвящиеся структуры) Время работы алгоритма: Время: O(M•log(L)). L – длина РНК M – число возможных спариваний (M < L 2 )
  • 75. 3б. Выравнивание последовательностей РНК с заданной вторичной структурой.
  • 76. 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(m 2 n log 2 (n)) Память: O(m 2 n log (n))
  • 77. Раздел 3. Предсказание вторичной структуры РНК. 3.2. Оптимальная структура РНК и гиперграфы
  • 78. Графы и гиперграфы Основные понятия Вершина Ребро Гиперребро Вершина-источник Тупиковая вершина (сток) Путь Гиперпуть Инициальный (гипер)путь Терминальный (гипер)путь Полный (гипер) путь: Начальная вершина – источник; Конечные вершины - тупиковые
  • 79. Графы и гиперграфы Основные понятия Вес гипер(ребра) «Умножение»: как вычислять вес (гипер)пути «Сложение»: целевая функция [коммутат.] Дистрибутивность: a*(b+c) = a*b+a*c; (b+c)*a = b*a+c*a Вес пути Вес гиперпути ПРОБЛЕМА: НАЙТИ «СУММУ» ВЕСОВ ВСЕХ ПОЛНЫХ (ГИПЕР)ПУТЕЙ
  • 81. Гиперпуть Вес гиперпути – ПРОИЗВЕДЕНИЕ (*) весов гиперребер
  • 82.
  • 84. ВТОРИЧНАЯ СТРУКТУРА строки P[1..N] Алфавит: {A, T; G, C} Комплементарные буквы: A <-> T; G <-> C Пара (=дуга) (i, j) разрешена, если буквы P[i] и P[j] комплементарны
  • 85. ВТОРИЧНАЯ СТРУКТУРА строки 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
  • 86. ОПТИМАЛЬНАЯ ВТОРИЧНАЯ СТРУКТУРА строки P[1..N] Оптимальная вторичная структура для строки P – вторичная структура для P, имеющая наибольший возможный вес. W(P) = max{W(S)| S – структура для P} W(P) = 0, если длина P равна 0 или 1 ЗАДАЧА: Найти оптимальную структуру для данной строки
  • 87. W(i, j) = max{«склейка» (i, k) допустима| 1+ W(i+1, k-1)+ W(k+1, j)}
  • 88. W(i, j) = max{W(i+1, j), max{k: «склейка» (i, k) допустима| 1+ W(i+1, k-1)+ W(k+1, j) }}
  • 89. Пример: РНК и гиперпуть
  • 90. ё Тема 4. Специальные суммы Больцмана для гиперграфов Слайдов не было 
  • 91. Тема 5. Задача о триангуляции Слайдов не было 
  • 92. Задачи*. Слайдов не было  1. Набор слов V длины m задан конечным автоматом с r состояниями. Найти суммарную вероятность слов из набора V. 2. Дано: слово v, конечный автомат R. Найти ближайшее к v слово, которое допускается автоматом R. 3. Дано слово v и КС-грамматика Г. Найти вывод слова v в Г (или доказать, что вывода нет). 4. Дано слово v и КС-грамматика Г. Найти ближайшее к v слово, выводимое в Г.