iaf5filogenias.weebly.com/uploads/2/9/6/3/29631483/iaf5.pdf · máxima verosimilitud,’...
TRANSCRIPT
12/06/14
1
Métodos de inferencia filogené8ca
Holder & Lewis (2003)
Neighbour-‐joining (NJ) • Muy rápido (segundos, hagan la prueba en Geneious o
Mega).
• Se comporta bien si la divergencia entre secuencias es baja (secuencias que se han separado recientemente).
• Hay que conver8r la matriz de secuencias (ADN o proteinas) en una matriz de distancias.
Métodos de inferencia filogené8ca
Neighbour-‐joining (NJ) Principal problema: las distancias observadas no necesariamente reflejan las distancias evolu8vas reales.
Métodos de inferencia filogené8ca
Strimmer & von Haeseler (2009)
Criterios de op8malidad • Estándares para comparar y escoger árboles.
• Evolución mínima (método de distancias), parsimonia, máxima verosimilitud, análisis bayesiano. Los tres úl8mos no se basan en distancias: “mapean” la historia de las secuencias en un árbol y le dan un puntaje basado en una evaluación de la plausibilidad de las mutaciones que el árbol requeriría para explicar los datos.
Métodos de inferencia filogené8ca
Parsimonia • El puntaje es el número mínimo de mutaciones que
podrían producir los datos.
Métodos de inferencia filogené8ca
h`ps://www.mun.ca/biology/scarr/Molecular_parsimony.htm
Desventajas de la parsimonia • El árbol más parsimónico representa un solo mapeo
mutacional. Dado que no conocemos el “mapa real”, deberíamos considerar todos los “mapas” posibles que podrían explicar los datos.
Métodos de inferencia filogené8ca
12/06/14
2
Desventajas de la parsimonia • Long-‐branch a`rac8on
Métodos de inferencia filogené8ca
Xia (2009)
Desventajas de la parsimonia • Long-‐branch a`rac8on: se puede solucionar
intensificando el muestreo taxonómico, es decir eliminando las ramas largas.
Métodos de inferencia filogené8ca
D e s v e n t a j a s d e l a parsimonia Sin embargo, no siempre es po s i b l e e s t e 8po de muestreo. Por ejemplo, la rama que conecta a l celacanto o a los peces pulmonados con los demás vertebrados siempre será larga porque los posibles taxones a ser muestreados están ex8ntos.
Métodos de inferencia filogené8ca
Amemiya et al. (2013)
Máxima verosimilitud • Es un método que permite tomar en cuenta los
eventos mutacionales múl8ples que ocurren en un mismo si8o en secuencias que han estado separadas por bastante 8empo, o en secuencias que evolucionan rápidamente.
Métodos de inferencia filogené8ca
Máxima verosimilitud • Una hipótesis es juzgada en base a qué tan bien
predice los datos observados (secuencias). Se prefiere aquel árbol que tenga la mayor probabilidad de producir las secuencias observadas.
Métodos de inferencia filogené8ca
L (τ, θ) = Pr (Datos Ι τ, θ)
= Pr (secuencias alineadas Ι árbol, modelo de evolución)
Máxima verosimilitud • Se consideran todos los “mapas” mutacionales que
sean compa8bles con los datos.
• Los modelos evolu8vos son generales: el usuario no precisa conocer los valores precisos de los parámetros. Estos son es8mados durante la evaluación de los árboles.
• Desventaja: 8empo computacional, especialmente para sets de datos grandes (> 100 secuencias).
Métodos de inferencia filogené8ca
12/06/14
3
GARLI, Gene8c Algorithm for Rapid Likelihood Inference is a program for inferring phylogene8c trees. Using an approach similar to a classical gene8c algorithm, it rapidly searches the space of evolu8onary trees and model parameters to find the solu8on maximizing the likelihood score. It implements nucleo8de, amino acid and codon-‐based models of sequence evolu8on, and runs on all plahorms.
U8 l i z a un a l go r i tmo gené8co pa r a e s8ma r simultáneamente la topología, longitudes de rama y parámetros (del modelo de subs8tución) que maximicen el lnL.
• Desventaja: 8empo computacional, especialmente para sets de datos grandes (> 100 secuencias).
Algoritmo gené8co: evolución de una población de soluciones (individuos). • Individuo: topología + long. ramas + parámetros • A cada individuo se le asigna un fitness basado en su lnL • Algunos componentes de los individuos son mutados al
azar en cada generación y su fitness es recalculada • En proporción a su fitness, los individuos son escogidos
como padres de los individuos de la siguiente generación
• El proceso se repite muchas veces: la población evoluciona hacia soluciones con mayor fitness
TUTORIAL DE GARLI
Todos los ajustes para correr GARLI se hacen en el archivo de configuración garli.conf, el cual debe estar en la misma carpeta que el archivo nexus.
Como ejemplo usaremos una matriz de rRNA de 64 ranas (Hillis and Wilcox.
2005. Phylogeny of the New World true frogs (Rana). Mol Phylogenet Evol. 34(2):299-‐314). En un editor de texto abran el archivo garli.conf ubicado en carpeta Garli -‐> example -‐> basic
[general]!datafname = rana.nex!constraintfile = none!streefname = stepwise!attachmentspertaxon = 50!ofprefix = rana.nuc.GTRIG!randseed = -1!availablememory = 512!logevery = 10!saveevery = 100!refinestart = 1!outputeachbettertopology = 0!outputcurrentbesttopology = 0!enforcetermconditions = 1!genthreshfortopoterm = 20000!scorethreshforterm = 0.05!significanttopochange = 0.01!outputphyliptree = 0!outputmostlyuselessfiles = 0!writecheckpoints = 0!restart = 0!outgroup = 1!resampleproportion = 1.0!inferinternalstateprobs = 0!outputsitelikelihoods = 0!optimizeinputonly = 0!collapsebranches = 1!!searchreps = 2!bootstrapreps = 0!
Nombre del archivo que desean analizar
[general]!datafname = rana.nex!constraintfile = none!streefname = stepwise!attachmentspertaxon = 50!ofprefix = rana.nuc.GTRIG!randseed = -1!availablememory = 512!logevery = 10!saveevery = 100!refinestart = 1!outputeachbettertopology = 0!outputcurrentbesttopology = 0!enforcetermconditions = 1!genthreshfortopoterm = 20000!scorethreshforterm = 0.05!significanttopochange = 0.01!outputphyliptree = 0!outputmostlyuselessfiles = 0!writecheckpoints = 0!restart = 0!outgroup = 1!resampleproportion = 1.0!inferinternalstateprobs = 0!outputsitelikelihoods = 0!optimizeinputonly = 0!collapsebranches = 1!!searchreps = 2!bootstrapreps = 0!
Prefijo a usarse en los archivos resultantes. Es recomendable que el nombre se relacione con el análisis.
[general]!datafname = rana.nex!constraintfile = none!streefname = stepwise!attachmentspertaxon = 50!ofprefix = rana.nuc.GTRIG!randseed = -1!availablememory = 512!logevery = 10!saveevery = 100!refinestart = 1!outputeachbettertopology = 0!outputcurrentbesttopology = 0!enforcetermconditions = 1!genthreshfortopoterm = 20000!scorethreshforterm = 0.05!significanttopochange = 0.01!outputphyliptree = 0!outputmostlyuselessfiles = 0!writecheckpoints = 0!restart = 0!outgroup = 1!resampleproportion = 1.0!inferinternalstateprobs = 0!outputsitelikelihoods = 0!optimizeinputonly = 0!collapsebranches = 1!!searchreps = 2!bootstrapreps = 0!
Especifica una topología de restricción
12/06/14
4
[general]!datafname = rana.nex!constraintfile = none!streefname = stepwise!attachmentspertaxon = 50!ofprefix = rana.nuc.GTRIG!randseed = -1!availablememory = 512!logevery = 10!saveevery = 100!refinestart = 1!outputeachbettertopology = 0!outputcurrentbesttopology = 0!enforcetermconditions = 1!genthreshfortopoterm = 20000!scorethreshforterm = 0.05!significanttopochange = 0.01!outputphyliptree = 0!outputmostlyuselessfiles = 0!writecheckpoints = 0!restart = 0!outgroup = 1!resampleproportion = 1.0!inferinternalstateprobs = 0!outputsitelikelihoods = 0!optimizeinputonly = 0!collapsebranches = 1!!searchreps = 2!bootstrapreps = 0!
Frecuencia (de generaciones) para guardar el mejor árbol en el archivo log
[general]!datafname = rana.nex!constraintfile = none!streefname = stepwise!attachmentspertaxon = 50!ofprefix = rana.nuc.GTRIG!randseed = -1!availablememory = 512!logevery = 10!saveevery = 100!refinestart = 1!outputeachbettertopology = 0!outputcurrentbesttopology = 0!enforcetermconditions = 1!genthreshfortopoterm = 20000!scorethreshforterm = 0.05!significanttopochange = 0.01!outputphyliptree = 0!outputmostlyuselessfiles = 0!writecheckpoints = 0!restart = 0!outgroup = 1!resampleproportion = 1.0!inferinternalstateprobs = 0!outputsitelikelihoods = 0!optimizeinputonly = 0!collapsebranches = 1!!searchreps = 2!bootstrapreps = 0!
Número de búsquedas independientes
[general]!datafname = rana.nex!constraintfile = none!streefname = stepwise!attachmentspertaxon = 50!ofprefix = rana.nuc.GTRIG!randseed = -1!availablememory = 512!logevery = 10!saveevery = 100!refinestart = 1!outputeachbettertopology = 0!outputcurrentbesttopology = 0!enforcetermconditions = 1!genthreshfortopoterm = 20000!scorethreshforterm = 0.05!significanttopochange = 0.01!outputphyliptree = 0!outputmostlyuselessfiles = 0!writecheckpoints = 0!restart = 0!outgroup = 1!resampleproportion = 1.0!inferinternalstateprobs = 0!outputsitelikelihoods = 0!optimizeinputonly = 0!collapsebranches = 1!!searchreps = 2!bootstrapreps = 0!
>0 si queremos un análisis de bootstrap
Tipo de datos [model1]!datatype = nucleotide!ratematrix = 6rate!statefrequencies = estimate!ratehetmodel = gamma!numratecats = 4!invariantsites = estimate!![master]!nindivs = 4!holdover = 1!selectionintensity = 0.5!holdoverpenalty = 0!stopgen = 5000000!stoptime = 5000000!!startoptprec = 0.5!minoptprec = 0.01!numberofprecreductions = 10!treerejectionthreshold = 50.0!topoweight = 1.0!modweight = 0.05!brlenweight = 0.2!randnniweight = 0.1!randsprweight = 0.3!limsprweight = 0.6!intervallength = 100!intervalstostore = 5!limsprrange = 6!
Número de tasas rela8vas de subs8tución
[model1]!datatype = nucleotide!ratematrix = 6rate!statefrequencies = estimate!ratehetmodel = gamma!numratecats = 4!invariantsites = estimate!![master]!nindivs = 4!holdover = 1!selectionintensity = 0.5!holdoverpenalty = 0!stopgen = 5000000!stoptime = 5000000!!startoptprec = 0.5!minoptprec = 0.01!numberofprecreductions = 10!treerejectionthreshold = 50.0!topoweight = 1.0!modweight = 0.05!brlenweight = 0.2!randnniweight = 0.1!randsprweight = 0.3!limsprweight = 0.6!intervallength = 100!intervalstostore = 5!limsprrange = 6!
Otros parámetros del modelo
[model1]!datatype = nucleotide!ratematrix = 6rate!statefrequencies = estimate!ratehetmodel = gamma!numratecats = 4!invariantsites = estimate!![master]!nindivs = 4!holdover = 1!selectionintensity = 0.5!holdoverpenalty = 0!stopgen = 5000000!stoptime = 5000000!!startoptprec = 0.5!minoptprec = 0.01!numberofprecreductions = 10!treerejectionthreshold = 50.0!topoweight = 1.0!modweight = 0.05!brlenweight = 0.2!randnniweight = 0.1!randsprweight = 0.3!limsprweight = 0.6!intervallength = 100!intervalstostore = 5!limsprrange = 6!
12/06/14
5
TUTORIAL DE GARLI
Ubicar en la misma carpeta al archivo garli.conf, archivo nexus (Rana.nex) y al ejecutable de Garli (ubicado en la carpeta bin). En la Mac a veces hay que crear un directorio en el escritorio.
Windows: dar doble-‐click en ejecutable. Otros OS: 8pear ./GarliXXX en un terminal (XXX=versión)
Examinemos los resultados. Usaremos FigTree para visualizar el árbol.
EJERCICIO EN CLASE DE GARLI
En la prác8ca queremos tener por lo menos 10 búsquedas independientes (searchreps = 10) Con eso en mente, buscar el árbol de MV para el set de datos zakonEtAl2006.11tax.nex
ANÁLISIS CON PARTICIONES EN GARLI
Recuerden: las par8ciones y sus respec8vos modelos se determinan a priori. Hay que especificarlas en el archivo nexus:
h`ps://www.nescent.org/wg_garli/Using_par88oned_models
ANÁLISIS CON PARTICIONES EN GARLI
ANÁLISIS CON PARTICIONES EN GARLI EJERCICIO EN CLASE DE GARLI
Examinemos los archivos zakonEtAl2006.11tax.nex y garli.conf de carpeta garli -‐> example -‐> par88on -‐> exampleruns -‐> 3parts.diffModelTypes
Realicen algún cambio en los modelos de las 3 par8ciones y corran el análisis. Comparen su árbol con el árbol del ejemplo.
12/06/14
6
Filogené8ca bayesiana • Mayor ventaja: producen simultáneamente el árbol y
las medidas de soporte.
• La estadís8ca bayesiana está estrechamente ligada a la máxima verosimilitud: la hipótesis preferida es aquella que maximiza la probabilidad posterior, la cual es proporcional a la verosimilitud mul8plicada por la probabilidad anterior (prior).
Métodos de inferencia filogené8ca Filogené8ca bayesiana • El teorema de Bayes
Métodos de inferencia filogené8ca wikipedia
wikipedia
Filogené8ca bayesiana • Normalmente no tenemos información para asignar
un valor específico a las probabilidades anteriores P(A). Por lo tanto, se asignan valores poco informa8vos (uniform or flat priors) para dar mayor peso a los valores de máxima verosimilitud P(BIA).
Métodos de inferencia filogené8ca
wikipedia Ronquist et al. (2009)
Ronquist et al. (2009)
Filogené8ca bayesiana • En resumen, el análisis bayesiano consiste en
especificar un modelo y una distribución a priori, y luego integrar el producto de esas can8dades sobre todos los valores posibles de los parámetros, para determinar así la probabilidad posterior de cada árbol.
Métodos de inferencia filogené8ca
wikipedia
12/06/14
7
Filogené8ca bayesiana • En resumen, el análisis bayesiano consiste en
especificar un modelo y una distribución a priori, y luego integrar el producto de esas can8dades sobre todos los valores posibles de los parámetros, para determinar así la probabilidad posterior de cada árbol.
Métodos de inferencia filogené8ca
wikipedia
• En la prác8ca esto es casi imposible y se usa un algoritmo que aproxima las distribuciones de probabilidades: Markov Chain Monte Carlo, o MCMC.
Es8mación marginal versus es8mación conjunta • Los métodos de MV y bayesiano deben es8mar
parámetros que no son de interés, pero que están presentes en las ecuaciones (nuisance parameters).
• Es8mación conjunta (MV): encontrar el pico más alto en el “paisaje de parámetros”.
• Es8mación marginal: medir el volumen bajo una curva de probabilidades posteriores (los parámetros se integran).
Métodos de inferencia filogené8ca
Filogené8ca bayesiana • MCMC: una serie de pasos que forman una cadena
conceptual. • En cada paso, un nuevo punto en el espacio de
parámetros es propuesto como el siguiente “eslabón”. Este nuevo punto es muy similar al anterior porque se genera perturbando al azar unos pocos parámetros del eslabón “anterior”.
• Se acepta el nuevo punto si representa una mayor PP. • Si la PP es menor, se lo acepta con probabilidad p
(=radio de la PP del punto propuesto sobre la PP del punto actual): se pueden dar pequeños pasos hacia abajo.
Métodos de inferencia filogené8ca
Ronquist et al. (2009)
Lewis (2001)
Filogené8ca bayesiana • Metropolis-‐coupled MCMC (MC3): una técnica para
aprovechar mejor el espacio de parámetros.
• Se basa en “calentar” una o más cadenas en el análisis. Estas cadenas son capaces de visitar más picos que las cadenas frías.
• Sin embargo, si se las “calienta” mucho, van a moverse tanto que el chance de encontrar un pico interesante es menor.
Métodos de inferencia filogené8ca
12/06/14
8
Ronquist et al. (2009) Ronquist et al. (2009)
“burn-‐in” y convergencia
Es8mación marginal versus es8mación conjunta • Es8mación conjunta (MV):
árbol A. • E s 8ma c i ó n m a r g i n a l
(bayesiano): árbol B.
parámetro
parámetro
verosim
ilitud
densidad prob. posterio
r
Holder & Lewis (2003)
• Dado que la es8mación de parámetros es imperfecta, e s p r e f e r i b l e marginalizarlos: no es tan apropiado tratar a los es8mados de MV como los únicos puntos importantes del espacio de parámetros.
Es8mación marginal versus es8mación conjunta • En la prác8ca, con pocos
parámetros y muchos datos, el pico de la curva es un buen predictor de la integral que toma en cuenta toda la superficie.
• La marginalización es más ú8l cuando hay muchos pa rámet ro s (mode lo s complejos).
parámetro
parámetro
verosim
ilitud
densidad prob. posterio
r
Holder & Lewis (2003)
Holder & Lewis (2003)
Medidas de soporte
Bootstrap MCMC
Resumen de los métodos
12/06/14
9
TUTORIAL DE MrBAYES
MrBayes puede ser ejecutado desde la línea de comandos, o se pueden escribir todas las “instrucciones” en un archivo nexus.
BEGIN MRBAYES;!LOG START FILENAME=Imantodes_LOG;!CHARSET cytb = 1-1023;!CHARSET ND4 = 1024-1674;!PARTITION dos = 2: cytb, ND4;!SET AUTOCLOSE = YES;!set partition = dos;!LSET APPLYTO=(1) NST=6 RATES=invgamma;!LSET APPLYTO=(2) NST=2 RATES=invgamma;!unlink shape=(all) pinvar=(all) statefreq=(all) revmat=(all);!prset ratepr=variable;!END;!!BEGIN MRBAYES;!mcmcp RELBURNIN=NO mcmcdiagn=yes NRUNS=4 diagnfreq=100000 ngen=5000000 printfreq=100000 samplefreq=1000 nchains=4 savebrlens=yes filename=Imantodes;!mcmc;!sump burnin=501 nruns=4;!sumt burnin=501 nruns=4;!end;!
TUTORIAL TRACER
Con Tracer revisaremos los resultados obtenidos en el análisis previo en MrBayes.
Tracer puede leer los resultados de MrBayes y otros programas como BEAST.
TUTORIAL BEAST
BEAST es8ma árboles filogené8cos y 8empos de divergencia simultáneamente. BEAST trabaja con varios programas: BEAUTi, LogCombiner, TreeAnnotator Ejercicio 1 del archivo Prac8cal_BEAST.pdf Con Tracer revisaremos los resultados obtenidos en el análisis previo en MrBayes.