Transcript filogenia - Departamento de Informática
V Filogenia
Andrés Moreira Departamento de Informática UTFSM
Construyendo árboles
El objetivo del análisis filogenético es construir un árbol que refleje las relaciones evolutivas (a partir de un origen que se supone común) de un conjunto de objetos sobre los que se tienen datos.
Los objetos pueden ser: •Las secuencias de un set de genes parálogos (de una misma especie) •Las secuencias de un set de genes ortólogos (uno por especie) •Un set de genomas completos de bacterias •Una tabla de características fenotípicas observadas en los fósiles de una serie de dinosaurios •Un set de idiomas, representados por vocablos •...etc.
Construyendo árboles
Un posible árbol de los idiomas indo-europeos (Ringe, Warnow & Taylor, 2000).
El estudio de filogenia de idiomas es anterior a Darwin. De hecho, fue una inspiración para el pensamiento evolucionista.
Post-Darwin, se aplicó la lógica de esos estudios a la clasificación de Lineo (en la que se reconoció una aproximación a la filogenia).
Construyendo árboles
En los viejos tiempos la única información era fenotípica; hasta el día de hoy sigue siéndolo en paleontología (¡o en filología!).
Es una situación difícil: hay que elegir qué conjunto de características medir, y que relevancia darles.
Más aún: hay rasgos cualitativos y cuantitativos.
Construyendo árboles
Algunos errores eran casi inevitables, como suponerle un origen común a los homeotermos (aves y mamíferos).
Pero aún así se avanzó bastante.
Por suerte hoy en día podemos usar, en la mayoría de los problemas de interés, información genotípica: secuencias de DNA, RNA, o proteínas.
Construyendo árboles
Algunas gracias de la información genotípica: •Discreta •Abundante (muchos bits por objeto) •La mayoría de las mutaciones son neutrales se acumula variación “gratis” es poco probable la convergencia (similaridad sin homología real) ...Lo que no significa que con eso el problema se vuelva trivial.
Construyendo árboles
Lo que hay que construir es un árbol: A •Puede ser con raíz o sin raíz.
B •A veces la longitud de las aristas es relevante, y refleja distancia evolutiva.
E •Por lo general es binario (i.e., los nodos internos tienen grado 3), aunque también puede haber “politomía” (bifurcación en más de dos ramas), por falta de información o para simplificar.
C D
Construyendo árboles
Algunos árboles son equivalentes: A B Pero aún así, los árboles posibles en principio son muchos.
C A B D C A B D C A B D C
Construyendo árboles
Para n “hojas”, los árboles sin raíz posibles son (2n-5)!/(n-3)!2
n-3 .
Considerando que además todos los criterios usuales para escoger un árbol crean problemas NP-duros...
...estamos en territorio de heurísticas.
hojas 3 4 5 6 7 8 9 10 11 12 13 14 15 árboles 1 3 15 105 945 10,395 135,135 2,027,025 34,459,425 654,729,075 13,749,310,575 316,234,143,225 7,905,853,580,625
Construyendo árboles
Existen muchos softwares de filogenia computacional: Pero hay menos asociación algoritmo-software que en, digamos, MSA. De hecho los principales paquetes ofrecen todas las aproximaciones principales. Así que hablaremos en términos de esas.
Principales aproximaciones
Principales aproximaciones: •Métodos de distancias: trabajan sólo con una matriz de distancias entre los objetos. Se les critica que con eso pierden información. Pero en fin, c’est la vie, son rápidos y con frecuencia no andan mal.
•Máxima parsimonia: se intenta minimizar la cantidad de cambios evolutivos implicados por el árbol.
•Maxima verosimilitud: se incluye algún modelo de evolución, y de acuerdo con él –y los datos– se busca el árbol más probable.
Principales aproximaciones
La aproximación a usar depende principalmente del nivel de divergencia de las secuencias. Según Mount:
Datos
Para resolver filogenia de especies la información preferida dependerá del nivel de separación: •Para comparar primates es útil la mitocondria, porque acumula mutaciones rápido.
•Para resolver las profundidades del árbol de la vida se usa RNA ribosomal, porque cambia lento.
•RNA ribosomal: fuerte conservación debido a estructura 2d, 3d, y a lo esencial de la molécula.
•Nótese que el árbol de los tres dominios es sin raíz ; eso se debe a que no hay outgroup posible.
Outgroup
El “outgroup” es un método para ponerle raíz a los árboles: •Escogemos algo que sea con certeza pariente más lejano de los objetos en estudio, que ellos entre sí.
•Pero además se espera que no sea demasiado lejano, para que no agregue mucho ruido al análisis.
•Una vez hecho el árbol, lo enraizamos en la rama que va hacia el outgroup.
Otra forma de enraizar un árbol es agregar la hipótesis del “reloj molecular”: suponer tasa de mutación constante.
Filogenia y MSA
La mayoría de los métodos (¡no todos!) trabajan a partir de un alineamiento múltiple de las secuencias.
No necesariamente con el alineamiento completo: por lo general se descartan las columnas con gaps (introducen ruido, porque no hay buen modelo para ellos).
Con frecuencia alinear y determinar filogenia son problemas asociados (como lo vimos en los métodos de alineamiento progresivo que usan un “árbol guía”).
Métodos de distancia
Los métodos de distancia usan como input una matriz de distancias; por lo general es el resultado de un alineamiento, donde se han despreciado las columnas con gaps. La distancia en ese caso puede ser la proporción de columnas en las que dos secuencias difieren. Hay refinamientos y correcciones; los veremos luego.
Reitero: un problema es que se pierden datos al hacer esto de reducir el output del alineamiento a una tabla de distancias.
Métodos de distancia
Estos métodos reconstruyen no sólo la topología, sino también la longitud de las ramas. Se asume que la distancia entre dos hojas representa la suma de las longitudes de las ramas internas que las separan.
A _ A B C D E A 0 4 6 10 10 B 4 0 4 8 8 C 6 4 0 6 6 D 10 8 6 0 4 E 10 8 6 4 0 C D E B
Métodos de distancia: supuesto aditivo
S 1 S 2 S 3 S 4 S 1 S D 2 12 S D D 3 13 23 S 4 D 14 D 24 D 34 Distancia observada S1 S3 S2 a c b d e S4 Distancia en el árbol Objetivo: D 12 D 13 D 14 D 23 D 24 D 34
d 12 d 13 d 14 d 23 d 24 d 34 = a + b + c = a + d = a + b + e = d + b + c = c + e = d + b + e
Métodos de distancia: mínimos cuadrados
Una opción: mínimos cuadrados.
Dado un árbol, buscamos las longitudes de ramas que minimicen Q = (D ij -d ij ) 2 .
De los árboles posibles, escogemos el que minimiza el error cuadrático.
S1 S2 a c b S3 d e S4 D 12 D 13 D 14 D 23 D 24 D 34
d 12 d 13 d 14 d 23 d 24 d 34 = a + b + c = a + d = a + b + e = d + b + c = c + e = d + b + e
Para que las distancias largas no se impongan en Q, se suele dividir cada término por D ij n , por lo general con n=1 ó 2.
Métodos de distancia: mínimos cuadrados
Si los árboles posibles son muchos, habrá que recorrer el espacio de árboles, con algún algoritmo (el problema es NP).
Por ejemplo, definiendo una vecindad de árboles (vía perturbaciones de algún tipo), y aplicando hill-climbing hasta llegar a un óptimo local: un árbol que da menos error que todos sus vecinos.
S1 a b c S2 S3 d e S4 D 12 D 13 D 14 D 23 D 24 D 34
d 12 d 13 d 14 d 23 d 24 d 34 = a + b + c = a + d = a + b + e = d + b + c = c + e = d + b + e
Métodos de distancia: clustering
Los algoritmos de clustering generan el árbol progresivamente, uniendo hojas en un nodo (del cual colgarán), y luego nodos con hojas, nodos con nodos, hasta tener un único árbol.
Difieren en la forma de definir las distancias entre clusters, y eso a su vez depende los supuestos que hacen, y de lo que pretenden optimizar.
Ojo: aunque sería natural pensar en la última unión (que completa el árbol) como la raíz, eso no es necesariamente así.
Métodos de distancia: clustering
Esquema general (se itera hasta que está listo el árbol): -Conectar dos nodos con un único nodo ancestral.
-Calcular distancias entre ellos y ese nuevo nodo.
[Ese es un paso que en clustering típico uno no hace] -Actualizar la matriz de distancias: -eliminar esos nodos que uní -agregar el nuevo, calculando nuevas distancias c/r al resto de las hojas o nodos
Métodos de distancia: clustering
UPGMA
UPGMA (Unweighted Pair Group Method with Arithmetic mean): •La distancia entre dos nodos A y B que se unen, y el nuevo nodo N, se define como d(A,N)=d(B,N)= d(A,B)/2 •La distancia entre dos clusters (o sea, entre cualquier par de nodos internos) es el promedio de las distancias entre sus miembros. De modo que al unir un nodo A del que “cuelgan” a hojas, y otro B del que cuelgan b, la distancia entre el nodo nuevo y un tercer nodo C será d(C,N)= [a d(C,A) + b d(C,B) ] / [a+b]
Métodos de distancia: clustering
UPGMA
Entrega un árbol con raíz (el último nodo que agrega).
Supuesto implícitos: •Reloj molecular (tasa de evolución constante): se asume que todas las hojas están a la misma distancia (en términos de mutaciones) de la raíz.
Si esto fuera cierto, además la matriz de distancias sería ultramétrica: d(x, z) ≤ max{d(x, y), d(y, z)} Problema: ese supuesto, que es fuerte. Rara vez se usa UPGMA, salvo para construir árboles “guía”, y ni eso.
Métodos de distancia: clustering
NJ
Neighbour Joining (a.k.a. NJ): •No hace supuesto de reloj molecular.
•Entrega un árbol sin raíz.
•Busca minimizar la suma de las ramas del árbol resultante modelo de mínima evolución.
Métodos de distancia: clustering
NJ
B
b a
A
c
C Observación: Cuando tenemos sólo 3 ramas, se pueden calcular sus longitudes a partir de las distancias y viceversa: d(A,B)=a+b d(A,C)=a+c d(B,C)=b+c a = ½ [ d(A,B) + d(A,C) - d(B,C) ] b = ½ [ d(A,B) - d(A,C) + d(B,C) ] c = ½ [ -d(A,B) +d(A,C) + d(B,C) ]
Métodos de distancia: clustering
NJ
Empezamos con una estrella (es el peor caso!), y vamos uniendo.
C B
b c
D
a d e
A E No conozco a,b,c,d,e, pero sí su suma:
d AB
a
b
;
d AC
a
c
;
d AD
a
d
;
d S AE
a
a b
e
;
c
d
e
(
d AB
d AC
d AD
d AE
d BC
d BD
d BE
d CD
d CE
d DE
) /(
N
1 )
Métodos de distancia: clustering
NJ
Ahora junto A con B.
Por un momento juntamos en “X” todo lo que no es A ni B, y definimos la distancia entre A y X como el promedio de las distancias entre A y los elementos de X.
Aplicando lo que dijimos recién para el caso de tres nodos, obtenemos a,b, y x. B A
b a x e c
E
d
C D X
d a AX d BX
(
d AC
d AD b
(
d BC
d AB
;
a d BD
x
d AE
) / 3 ;
d BE
) / 3 ;
d AX
;
b
x
d BX
.
Métodos de distancia: clustering
NJ
Con a y b, tenemos la distancia entre los nodos y el nuevo nodo que los reune: d AN = a = ½ (d AB +d AX -d BX ) d BN = b = ½ (d AB +d BX -d AX ) B A
b
N
x a e c d
C D E X Las distancias entre el nuevo y el resto, las sacamos suponiendo aditividad y promediando (entre A y B): d CN ..etc
= ½ ( d CA -d AN ) + ½ (d CB -d BN )
Métodos de distancia: clustering
NJ
En general, si tengo r nodos, y uno f y g en un nuevo nodo llamado u, Y para el resto de los nodos k (distintos a f y g): ¿Qué nodos escogemos para unir?
Los que reduzcan más la suma de las ramas.
Al hacer las sumas antes y después (no lo haré aquí) resulta que hay que escoger los que minimicen:
Métodos de distancia: clustering
NJ
O, escrito de otra forma. Dadas las distancias d, calculo
u f
r
1 2
g r
1
d
(
f
,
g
) Y escojo el par que minimiza
d
(
f
,
g
)
u f
u g
Las ramas de i y j al nuevo son de largo 1 2
d d
(
f
(
u
, ,
k g
) )
u
1 2
f
1 2
d d u
respectivamente, y la distancia entre el nodo nuevo (“u”) y un k-ésimo nodo será ( (
g f f
, ,
k k
) )
d d
( (
f g
1 2 , ,
u k
) )
d
(
d d f
, ( (
g f g
, ) ,
k
g
) )
u
f d
(
u g g
,
u
)
Métodos de distancia: clustering
Método de “neighbors relation”: se basa en la observación de que en un cuarteto, d AB +d CD d AD +d BC = d AC +d BD
A B D C
así que, entre las tres formas de agrupar ABCD en dos pares, debiera escoger la que da menor suma de distancias dentro de los pares.
El método entonces: dadas N secuencias (N>4), •considero todos los cuartetos •en cada cuarteto evalúo eso (veo los mejores pares) •veo que par se repitió más veces •ese lo uno en un nuevo nodo (y recalculo como antes)
Métodos de distancia
Pese a despreciar parte de la información disponible, los métodos de distancias son importantes.
•Son rápidos (a veces son los únicos factibles).
•Se adaptan bien a ramas de longitudes distintas (tasas de evolución distintas en distintas partes del árbol).
•Dependen del supuesto de la aditividad; por lo tanto, la forma en que se calcula la distancia es vital.
Distancias
Decíamos que la forma trivial de evaluar distancia, dado un alineamiento, sería como la fracción de diferencias entre las dos secuencias:
p
n d
/
n
donde n es la cantidad de columnas del alineamiento que estoy usando, y n
d
es la cantidad de columnas en que las dos secuencias difieren.
¿Qué puede fallar con eso?
Puede haber cambios más probables que otros (incorporar información de matrices de sustitución) Cosas “malas” se vuelven frecuentes a mayor distancia evolutiva.
Distancias
ACTGTAGGAATCGC | || | ||||||| AATGAACGAATCGC 3 diferencias, pero no debidas a tres mutaciones...
Cuando la distancia es grande, estas cosas se vuelven más y más frecuentes.
Distancias
“Homoplasy”: cuando los caracteres coinciden pero por convergencia, no porque se haya conservado un carácter ancestral.
Se produce saturación; sólo es posible estimarla.
Esperado La diferencia es por saturación
Tiempo
Observado Saturación: …GCGCTTCGGC… …GCG T TTC C GC… 2 …GCG TA T TC GC… 4 …GCG C A T TC GC… 5 … A C C C A T A C GC… 8 … T C C C A T A CT C… 10 … T C C C AC A CT C… 11 … T T GC AC A CT C… 13 … T T GCG C A CTT … 15 Observado: 8 Real: 15
A B C D Árbol verdadero
Distancias
A D C B Árbol reconstruido
“Long branch attraction”: la distorsión provocada cuando hay ramas largas y cortas, pero las largas “se ven” cortas por convergencias y retro sustituciones.
En particular, ramas largas se “atraen” entre sí.
Paréntesis: otros tipos de problemas
( Problemas de otros tipos: •Genes A y B que alguna vez fueron parálogos (duplicados en un mismo genoma) pero en que una especie perdió A, la otra perdió B.
•Transferencia horizontal de genes •“Lineage sorting”: divergencia previa dentro de una población.
) Duplicación y pérdida Transferencia horizontal Lineage sorting
Distancias
Corrección de Poisson:
d
ln( 1
p
) donde p es el de antes.
Razón: si lo damos vuelta, es p=1-e estimación más robusta.
-d , la probabilidad de que haya algún evento en un lapso dado, para una tasa de eventos d ; de ese modo estimamos la “tasa de eventos”, o distancia evolutiva entre las secuencias. No vuelve visible lo invisible, pero entrega una
Distancias
En general la corrección que uno haga dependerá de la forma en que se modele la evolución de las secuencias.
Para DNA, el modelo más simple es el de Jukes Cantor, que asume la misma tasa de reemplazo entre los nucleótidos.
Si además tienen igual frecuencia (1/4) entonces la corrección que se deriva es
d
3 4 ln 1 4 3
p
Distancias
O más en general, si no hay frecuencias iguales,
d
B
ln 1 donde
B
1
f A
2
f C
2
f G
2
f T
2
p B
Otro modelo popular es el de Kimura, que asigna probabilidad mayor a las transiciones (C T, A G) que a las transversiones. Como es modelo de dos parámetros, no basta p; hay que contar las transiciones (s) y las transversiones (v) a lo largo del alineamiento:
d
1 2 ln 1 2
s
v
1 4 ln 1 2
v
Y hay más:
Distancias
En general, de lo que se trata es de afinar una cadena de Markov:
A G C T
Distancias
Y eso sólo considerando que todas las columnas del alineamiento fuesen independientes.
En DNA que codifica algo, eso rara vez es cierto.
En particular en genes de proteínas, el código genético hace neutras la mayoría de las mutaciones en la tercera letra de cada codón (y por ende, más probables).
A C G U 0 AAA K 4 ACA T 8 AGA R 12 AUA A 1 2 3 AAC AAG AAU N K N 5 6 7 ACC ACG ACU T T T 9 10 11 AGC AGG AGU S R S 13 14 15 AUC AUG AUU C G U 16 17 18 19 32 33 34 35 48 49 50 51 CAA CAC CAG CAU GAA GAC GAG GAU UAA UAC UAG UAU Q H Q H E D E D STOP Y STOP Y 20 21 22 23 36 37 38 39 52 53 54 55 CCA CCC CCG CCU GCA GCC GCG GCU UCA UCC UCG UCU P P P P A A A A S S S S 24 25 26 27 40 41 42 43 56 57 58 59 CGA CGC CGG CGU GGA GGC GGG GGU UGA UGC UGG UGU R R R R G G G G STOP C W C 28 29 30 31 44 45 46 47 60 61 62 63 CUA CUC CUG CUU GUA GUC GUG GUU UUA UUC UUG UUU V V V/M V L F L F L L L L I I M I
Distancias
Para eso, se consideran valores distintos según posición, o bien se usan matrices de sustitución codón codón.
A propósito: dijimos que para hacer alineamientos, se usa de preferencia la secuencia de proteína (aún cuando conozcamos el DNA que la codifica).
Para hacer filogenia, suele convenir usar el DNA codificador, sobre todo entre proteínas muy cercanas evolutivamente (las mutaciones neutrales dan información!).
Distancias
Si se usan proteínas para el análisis filogenético, hay varios tipos de correcciones: •Tipo Jukes-Cantor •Usando matrices de sustitución (PAM) ...y con diversas reglas “empíricas”, que da el expertise, para ver qué correcciones usar según la situación concreta.
NO nos meteremos en eso.
Máxima parsimonia
Máxima parsimonia, o mínima evolución: buscamos el árbol, coherente con los datos, que requiera el mínimo de eventos evolutivos.
•Es el método más intuitivo, simple y general, pero sólo se porta bien con pocos datos (es caro) y cercanos (poca distancia evolutiva).
•Se consideran los “caracteres” de a uno. Digamos, las columnas del alineamiento. Pero también podría ser un cambio de orden de genes en un genoma, un rasgo morfológico, o hasta un hábito de apareamiento de las especies. Whatever.
Máxima parsimonia
•Para un árbol dado (sin raíz) y un carácter dado, evaluamos la cantidad mínima de cambios que sea coherente con ese esquema.
G G A A A A G A A A C A
•Evaluar eso es barato (polinomial).
•Para el conjunto de caracteres disponibles, sumamos los valores, y eso le da un score al árbol.
Máxima parsimonia
•Algunas posiciones no son informativas: para el conjunto de letras de la derecha (A,A,C,G), cualquier árbol arroja la misma cantidad mínima de cambios.
•Si no permiten discriminar entre árboles, no nos interesan. Para ser informativa, una columna del alineamiento tiene que tener al menos dos letras que estén al menos dos
veces.
A A G A C T G A G C C C T G A G A T T T C A G A G T T C * *
G C G A G A A A A A C A
Máxima parsimonia
La parte barata: evaluar puntaje C T T G T C T, score 0 A T CT, score 1 T T C T C T T G T G G A T, score 1 T A T TGA, score 3 A
Máxima parsimonia
La parte barata: evaluar puntaje •Colgamos el árbol de algún nodo interior (cualquiera).
•Cada hoja tiene una letra; en los nodos internos voy poniendo un conjunto de letras, según lo que tengan los nodos que cuelgan de él: Si no tienen letras en común, pongo su unión.
Si tienen letras en común, pongo la intersección.
Máxima parsimonia
La parte barata: evaluar puntaje •Ahora escojo una letra de cada conjunto: •En la raíz escojo una cualquiera •En el resto, escojo la letra del padre si es que la tengo, y si no, una cualquiera.
C •Ahora evalúo la cantidad de cambios.
C C A
Máxima parsimonia
•La parte difícil (lo NP-duro!) es encontrar el árbol que minimice la suma de los scores.
•Si son pocas hojas, se hace exhaustivo.
•Si son más, pero tampoco taaantas (digamos, menos de 20): branch & bound.
•De ahí para arriba, heurísticas. Por lo general se parte de varios posibles árboles, y se recorre el paisaje de posibles topologías, haciendo hill climbing o simulated annealing. Se requiere definir un set de árboles “vecinos” de un árbol dado, vía alguna transformación.
Máxima parsimonia
Un algoritmo glotón: •Parto con un árbol de tres hojas.
•Voy agregando hojas de a una.
•Al agregar una hoja, escojo la forma de hacerlo que aumente menos el score.
Es O(n 3 N) [n secuencias de largo N], pero se puede bajar a O(n 2 N).
Se puede usar como punto de partida de heurísticas, probando distintos órdenes de agregado.
•Existe otro algoritmo (tb. polinomial) que garantiza una 2 aproximación; usa MST (min. árbol recubridor).
Máxima parsimonia
Transformaciones de árboles más usadas: Nearest Neighbor Interchange (NNI): •Para cada arista interior, pruebo las otras dos formas de armar el cuarteto centrado en ella.
El tamaño de la vecindad es lineal en el número de hojas.
Máxima parsimonia
Transformaciones de árboles más usadas: •Subtree Pruning Regrafting (SPR): separo cada posible subárbol, y veo todas las formas posibles de agregarlo.
Separo el subárbol 1-2 y lo re-enchufo El tamaño de la vecindad es ahora cuadrático.
Máxima parsimonia
Transformaciones de árboles más usadas: •Tree-Bisection-Reconnection (TBR): se corta el árbol en dos (de cada manera posible), y se reconectan las partes de todas las maneras posibles.
Si se puede O(n 3 ), se suele preferir TBR El tamaño de la vecindad es ahora cúbico.
Máxima parsimonia
Branch & Bound •El “Branch” se hace agregando progresivamente hojas (y se crean “branches” nuevas según los lugares en que las puedo agregar).
A E B D A C E B D C A B D E C
Máxima parsimonia
Branch & Bound •El “Bound” se aprovecha de que el score, al agregar más hojas, sólo puede empeorar.
Máxima parsimonia
Branch & Bound •En este caso se parte juntando las secuencias más distintas, para tener mejores cotas y descartar más rápido partes del espacio de búsqueda.
•Uso un árbol “bueno” obtenido por otro método (por ejemplo, el algoritmo glotón, o el que 2-aproxima, o eso + hill climbing) para tener cota superior. •Si al agregar alguna rama tengo un valor peor, descarto esa opción.
Máxima parsimonia
Gracias de MP: •Es fácil poner ponderaciones distintas a los caracteres, si se piensa que uno es más fundamental o más confiable que otro.
•Se puede exigir un orden a los cambios (esto es útil sobre todo con información del tipo “cola corta/mediana/larga”). Se les llama “caracteres de Wagner”.
•Provee secuencias ancestrales.
Máxima parsimonia
Problemas: •Lento.
•No usa toda la información (sólo sitios informativos).
•No da información sobre la longitud de las ramas.
•No hay corrección para mutaciones múltiples; no hay modelo de evolución asociado.
•No es estadísticamente consistente: susceptible a “long branch attraction”, y agregar datos no ayuda.
Máxima parsimonia
Paréntesis a próposito de ponderaciones distintas.
El índice de consistencia para un carácter dado un árbol, es el cuociente entre la cantidad mínima de cambios que el carácter requiere (o sea, la que tendría en un árbol escogido sólo para él), y la cantidad mínima en el árbol dado. Digamos, m i /a i .
Para un árbol, el CI será m i / a i , y se le considera un índice (discutible) de homoplasia.
Una idea que algunos aplican y otros rechazan: hacer MP varias veces (hasta converger), ponderando los caracteres por su CI de la iteración anterior.
Máxima verosimilitud
Máxima verosimilitud (ML, por max. likelihood) combina la idea de MP con los modelos de evolución de caracteres (Jukes-Cantor, etc.).
•También usa heurísticas para recorrer los árboles posibles (branch & bound no se le da bien).
•Es aún más lento que MP.
•Pero como permite tasas de evolución distintas por rama, e incorporar distancia evolutiva entre caracteres (Jukes-Cantor, PAMs, etc), es más general y robusto. Y usa mejor los datos.
Máxima verosimilitud
Lo que cambia respecto a MP, es lo que le evaluamos a cada árbol candidato.
En MP: queremos el árbol con menos evolución.
En ML: queremos el árbol más probable.
ML evalúa la verosimilitud L (probabilidad relativa) del árbol, y busca maximizarla.
¿Cómo la evalúa?
L(árbol) Probabilidad( datos / árbol )
Máxima verosimilitud
Usa un modelo de evolución: •Probabilidades de sustituciones •Frecuencias de caracteres (en “background”) Lo desconocido: •El árbol •La longitud de las ramas Los árboles, los recorre como antes.
Para cada árbol, determina longitud óptima de las ramas, y con eso y el modelo de evolución, calcula L.
Máxima verosimilitud
La probabilidad de sustituciones considera tiempo continuo. Por lo tanto, un proceso de Markov continuo.
e Qv
P
(
v
) Q: matriz de tasa de sustitución v: tiempo transcurrido P: probabilidad de la sustitución, en un tiempo v
Q
3 3 3 3
P
( 1 ) 1 3 1 3 1 3 1 3 Se pide que la cadena de Markov sea reversible.
Máxima verosimilitud
Al igual que en MP, se asume independencia entre las distintas posiciones del alineamiento.
Por lo tanto, P(datos/árbol) se calcula como el producto de P(columna/árbol), sobre todas las columnas.
(O más bien, como se juntan números muy chicos, se toman los logs y se suman).
log
L
(
T
/ datos )
log
P
( datos /
T
)
i N
1
log
P
( columna
i
/
T
)
Máxima verosimilitud
Evaluemos L(j), dado un árbol y suponiendo que
conocemos las longitudes de las ramas.
¿Cuál es la probabilidad de que ese árbol genere la columna j?
•Enraizamos el árbol en cualquier parte (da lo mismo dónde ahí entra la condición de reversibilidad).
Máxima verosimilitud
•Hay que considerar todas las posibles letras en (5) y (6).
•Para cada caso, el modelo y la longitud de las ramas me dan, en cada rama, una probabilidad. •Las multiplico y tengo la de ese caso.
•Sumo las de todos los casos, y tengo la probabilidad de los datos, dada esa topología, ese modelo y esas longitudes.
Máxima verosimilitud
De otro ejemplo: para secuencias y el árbol
A: B: ccat ccgt C : gcat
y el modelo
Máxima verosimilitud
Se obtiene L(1) como
Máxima verosimilitud
Eso, suponiendo que conozco las longitudes de las ramas.
Lo que se hace es escoger (con métodos de optimización numérica, tipo Newton-Raphson) las longitudes que maximizan L.
Eso es ML clásico (Felsenstein). Existen variantes. PHYML (Guindon & Bascuel, 2003) es muy popular, y alterna entre modificar ramas y modificar la topología del árbol; es un tipo de algoritmo EM.
Hasta aquí
Métodos de distancias (digamos, NJ)
Usa sólo distancias Minimiza suma de ramas Minimiza eventos evolutivos Rápido Asume aditividad, y además es heurístico.
Lento Falla con ramas largas o muy disímiles Maximiza la verosimilitud del árbol, dado un modelo de evolución.
Muy
lento Depende harto del modelo de evolución que se use.
Bueno para árboles tentativos, y solución casi inevitable cuando hay muchas hojas.
Máxima parsimonia (MP)
Usa sólo caracteres “informativos”
Máxima verosimilitud (ML)
Usa todos los datos Mejor opción cuando sus supuestos se aplican y hay pocas (<20) hojas Bueno para conjuntos de muy pocas secuencias. O para evaluar y/o iterar sobre un árbol generado por otro algoritmo.
Cuartetos
Ya mencionamos, cuando estábamos en los métodos de distancias, un método con cuartetos.
No es el único. Hay hartos.
Razón: •Los cuartetos son fáciles.
•La topología de un árbol induce topología para cualquier cuarteto de hojas.
Cuartetos
Pero además: •Si conocieramos la topología correcta para todos los cuartetos, se puede reconstruir la topología del
árbol completo.
Problema: Idea natural: resolver para los cuartetos, y tratar de compatibilizar.
Cuartetos
Quartet puzzling:
•Hacer ML para todos los cuartetos posibles.
•Aleatorizar el orden de las hojas.
•Partir del cuarteto de las primeras cuatro. Agregar la quinta de la manera más compatible presente. Y luego la que sigue. Etc. [No veremos el detalle].
•Hacer eso muchas veces, para distintos órdenes de las hojas.
•Construir un árbol de consenso mayoritario.
Árbol de consenso
¿Árbol de consenso?
Siguiendo a Clote & Backofen: •1, 2 y 3 determinan la topología del árbol.
•Dado un árbol común y corriente, definimos sus etiquetas recursivamente: en las hojas, la hoja. Hacia arriba, la unión.
Árbol de consenso
Dado un conjunto de árboles T 1 , T 2 , ..., T N , hacemos sus n-árboles, y definimos el n-árbol de consenso: Son los nodos cuya etiqueta está presente en al menos el 50% de los árboles.
•Resulta que es un n-árbol. Ergo, determina topología.
+ A veces se usa un umbral >50%.
+ Otra forma de verlo es que un clado es apoyado por al menos ese porcentaje de árboles.
+ El árbol de consenso suele no ser binario.
Métodos bayesianos
Es una aproximación (o mejor dicho, un grupo de aproximaciones) más recientes.
•Se asume una distribución a priori sobre los árboles (que suele generar polémica). Implícitamente, ML asumía un a priori uniforme.
•Por lo general se samplea la distribución a posteriori mediante Markov Chain Monte Carlo : se genera un proceso markoviano cuya distribución estacionaria debiera coincidir con la a posteriori.
Métodos bayesianos
•El MCMC hace un paseo (vía transformaciones) por el paisaje de árboles.
•El paseo es sesgado (no 100% dirigido) hacia los mejores puntajes.
Métodos bayesianos
•Tomo un árbol inicial T. Calculo P(D|T) como en ML.
•Propongo un T’ (vía transformación). Calculo P(D|T’).
•Calculo el cuociente de aceptación: Cuociente de verosim.
Cuociente de a prioris Cuociente de proposición de árboles
P
(
D P
(
D T
' )
T
)
P
(
T
' )
P
(
T
)
P
(
T P
(
T
'
T
'
T
) ) •Será la probabilidad de pasar a T’ (si es >1, paso seguro).
Métodos bayesianos
•Considero las probabilidades a posteriori.
•Hago árbol de consenso (ponderando por las prob.).
•Da probabilidad a posteriori para los distintos clados.
Significatividad
¿Qué confianza podemos tener en un árbol filogenético?
Lo que se suele hacer es bootstrapear: •Resamplear (con reemplazo) las columnas del alineamiento, obteniendo así un nuevo alineamiento •Calcular un árbol a partir de ese alineamiento.
•Hacer eso unas 100 ó 1000 veces.
A B C D 1 G G 2 A C G G C C 3 G G A A 4 C C C C 5 A A C C T T 6 T T 7 T C C T T T 8 T T A 1 G 2 G 3 A B C D G G G G A A C C C 4 A A C C 5 T T T T 6 T C C T 7 T C C T 8 T T T T
Significatividad
Significatividad
Hacemos el árbol de consenso.
Le asociamos a los nodos interiores el % de veces que aparecieron (con los mismos hijos) en los árboles del bootstrap.
ORFP MG01127.1
NCU01640.1
70 100
ORFP YDL020C Scastellii
80 95
Skluyeri orf6.4920.prot
100
AN0709.2
H.
Jackknife: parecido, pero sampleamos k
Significatividad
Para Jacckife, se recomienda tomar entre el 50% y el 37% (en realidad, e -1 ) de las columnas.
Los puntajes de apoyo suelen ser J50 < BS < J37, pero similares en todo caso (BS más cerca de J50 para secuencias más lejanas, más cerca de J37 para secuencias más parecidas).
Lo más común: BS.
Muchas revistas exigen que el árbol vaya acompañado por valores de bootstrap.
Significatividad
Otras ideas: •Permutar las letras dentro de cada columna del alineamiento, y generar árboles a partir de esos datos randomizados. ¿Dónde queda nuestro árbol dentro de la distribución?
•“Decay analysis”: se evalúa, para un clado, la diferencia entre el puntaje del mejor árbol que incluye ese conjunto como un clado, y el mejor puntaje de los árboles que no lo hacen (que es decir, incluyen otras “hojas” entremedio). Es el “Decay Index” o “Bremer support”.
Test de Kishino-Hasegawa
Dados dos árboles, las diferencias entre ellos, ¿son atribuibles al margen de error de los datos disponibles?
•El test de K-H (el más usado, pero no es el único) funciona bajo el supuesto de caracteres i.i.d..
•Dado un carácter, calculamos la diferencia entre su parsimonia, o su likelihood, para cada árbol.
•Si las diferencias fueran aleatorias, debería haber la misma cantidad de caracteres favoreciendo un árbol o el otro.
Test de Kishino-Hasegawa
Bajo hipótesis nula, la media debiera ser cero, y la distribución, normal.
Caracteres a favor del árbol A Caracteres a favor del árbol B 0 Distribución de diferencias en pasos/likelihood por caracter
De lo observado calculamos desviación estándar. Si la media queda a más de 2 se rechaza hipótesis nula, y de los dos árboles, el de mejor score se declara
significativamente mejor que el otro.
de 0,
Test de Kishino-Hasegawa
Ochromonas Symbiodinium Prorocentrum Sarcocystis Theileria
SSUrDNA de ciliados
Plagiopyla n Plagiopyla f Trimyema c Trimyema s Cyclidium p Cyclidium g Cyclidium l Glaucoma Colpodinium Tetrahymena Paramecium Discophrya Trithigmostoma Opisthonecta Colpoda Dasytrichia Entodinium Spathidium Loxophylum Homalozoon Metopus c Metopus p Stylonychia Onychodromous Oxytrichia Loxodes Tracheloraphis Spirostomum Gruberia Blepharisma
Resultó este árbol.
¿Habrá otro con menos apariciones de hidrogenosomas, que no sea significativamente peor?
Ciliados anaeróbicos con hidrogenosomas
Test de Kishino-Hasegawa
Ochromonas Symbiodinium Prorocentrum Sarcocystis Theileria Plagiopyla n Plagiopyla f Trimyema c Trimyema s Cyclidium p Cyclidium g Cyclidium l Dasytrichia Entodinium Loxophylum Homalozoon Spathidium Metopus c Metopus p Loxodes Tracheloraphis Spirostomum Gruberia Blepharisma Discophrya Trithigmostoma Stylonychia Onychodromous Oxytrichia Colpoda Paramecium Glaucoma Colpodinium Tetrahymena Opisthonecta
Dos restricciones topológicas
Ochromonas Symbiodinium Prorocentrum Sarcocystis Theileria Plagiopyla n Plagiopyla f Trimyema c Trimyema s Cyclidium p Metopus c Metopus p Dasytrichia Entodinium Cyclidium g Cyclidium l Loxophylum Spathidium Homalozoon Loxodes Tracheloraphis Spirostomum Gruberia Blepharisma Discophrya Trithigmostoma Stylonychia Onychodromous Oxytrichia Colpoda Paramecium Glaucoma Colpodinium Tetrahymena Opisthonecta
Se hizo MP con restricción en la cantidad de orígenes, obligando a que pares de ramas rojas quedanse juntas.
Se comparó el árbol resultante con el de la página anterior.
Test de Kishino-Hasegawa
Los árboles con 1 ó 2 orígenes fueron todos significativamente peores.
Así que hay buenas razones para suponer al menos 3 orígenes independientes de los hidrogenosomas en los ciliados.
No.
Constraint Origins tree 4 4 3 3 3 3 3 3 2 2 2 2 2 2 2 1 ML MP (cp,pt) (cp,rc) (cp,m) (pt,rc) (pt,m) (rc,m) (pt,cp,rc) (pt,rc,m) (pt,cp,m) (cp,rc,m) (pt,cp)(rc,m) (pt,m)(rc,cp) (pt,rc)(cp,m) (pt,cp,m,rc) Extra Steps +10 +13 +113 +47 +96 +22 +63 +123 +100 +40 +124 +77 +131 +140 +131 Difference Significantly worse?
-13 -21 -337 -147 -279 -68 -190 -432 -353 -140 -466 -222 -442 -414 -515
18 22 No No 40 Yes
36 Yes 38 Yes 29 Yes 34 Yes 40 Yes 43 Yes 37 Yes 49 Yes 39 Yes 48 Yes 50 Yes 49 Yes
Ejemplos de usos del análisis filogenético
Qué pasó ahí?
Las plantas quedan agrupadas con las bacterias!
Explicación: adquirieron el gen por transferencia horizontal desde sus cloroplastos.
Ejemplos de usos del análisis filogenético
Durante un siglo hubo discusión sobre qué eran los pandas gigantes: parecen osos, pero no hibernan. En algunos rasgos, se parecen más a los mapaches.
1985: caso resuelto, con datos moleculares.
Ejemplos de usos del análisis filogenético
Opsina: los pigmentos visuales que nos permiten distinguir colores.
Origen común de los pigmentos, para vertebrados e invertebrados.
Duplicación y especialización, varias veces en distintas ramas.
Ejemplos de usos del análisis filogenético
El verde del humano es más cercano al rojo humano (y al rojo de la gallina) que al verde de la gallina. ¿Qué pasa ahí?
Ejemplos de usos del análisis filogenético
Es producto de una duplicación que se produjo en los monos del viejo mundo, y permitió la especialización.
La diferencia son sólo 3 aminoácidos!
En monos del nuevo mundo, verde/rojo son alelos distintos del mismo gen. Tienen visión dicromática.
El gen va en el cromosoma X; eso permite que algunas hembras de monos del nuevo mundo tengan visión tri cromática.
En humanos, subsiste el daltonismo. Tal vez por motivos evolutivos.
Ejemplos de usos del análisis filogenético
La hipótesis “out of Africa” del origen del hombre: •Origen común alrededor de 200.000 años atrás.
•No seríamos descendientes de Neanderthals.
•Los humanos modernos habrían reemplazado a las otras poblaciones que encontraron en su camino (H. erectus, Neanderthal, y otros).
Se contrapone a la idea de: un origen común hace 2 millones de años atrás, aparición de características modernas en continentes distintos, y mezcla generalizada.
Ejemplos de usos del análisis filogenético
Ejemplos de usos del análisis filogenético
Hoy en día “out of Africa” se considera prácticamente un hecho.
Ejemplos de usos del análisis filogenético
DNA mitocondrial Cromosoma Y ...y otras evidencias. Incluyendo... Piojos!
Africa
Ejemplos de usos del análisis filogenético
Hoy en día “out of Africa” se considera prácticamente un hecho.
Pero: -Al parecer hubo dos “oleadas” (al menos) -Sí hubo algún nivel (menor) de cruce con Neanderthal, y algunos genes actuales los sacamos de ahí.
Estudios filogenéticos con mtDNA (DNA mitocondrial) rescatado de Neanderthals.
http://www.actionbioscience.org/evolution/johanson.html
http://johnhawks.net/weblog/topics/modern_human_origins/multiregional_ vs_out_of_africa.html
Ejemplos de usos del análisis filogenético
Inferencia de función a partir de filogenia
Ejemplos de usos del análisis filogenético
Concordancia entre especies: pistas para el diseño de estrategias de conservación.
Ejemplos de usos del análisis filogenético
Lafayette, Louisiana, 1994.
•Una mujer acusó a su ex-amante (un gastroenterólogo) de haberle inyectado sangre con SIDA.
•Había registro de que en esa fecha el acusado sacó sangre a un paciente seropositivo.
•La defensa alegó coincidencia.
El virus del SIDA (HIV) es altamente variable. De hecho, su juego contra el sistema inmune es evolutivo. Se usaron dos genes del HIV, y tres métodos de reconstrucción filogenética.
Ejemplos de usos del análisis filogenético
P: paciente V: víctima LA: otros pacientes seropositivos de la zona Caso resuelto. Acusado culpable!
Todos los detalles sórdidos: Molecular evidence of HIV-1 transmission in a criminal case M. Metzker et al, PNAS (2002) doi : 10.1073/pnas.222522599
Desafíos actuales
Sólo algunos de los principales: •Tradicionalmente se ha trabajado con pocos genes en muchas especies, o muchos genes en pocas especies. Crecientemente, son muchos en muchas.
•Transferencia horizontal de genes: ahí no sirven los árboles, hay que pensar en redes.
•Filogenia de genomas completos: importa el contenido de genes, y el orden en que están.
Para saber más
•Los capítulos en los libros de Mount y de Clote no están malos...
...pero son incompletos; de hecho, casi no tienen intersección.
•Un review muy completo y bueno aunque un poco viejo: PHYLOGENETIC ANALYSIS IN MOLECULAR EVOLUTIONARY GENETICS Masatoshi Nei Annual Review of Genetics Vol. 30: 371-403 (1996) doi : 10.1146/annurev.genet.30.1.371