Story Transcript
Cloud Computing orientado a las filogenias datadas Estudiante: JOSÈ MARIA GONZÁLEZ ALBA
MÁSTER EN BIOINFORMÁTICA Y BIOLOGÍA COMPUTACIONAL ESCUELA NACIONAL DE SALUD- INSTITUTO DE SALUD CARLOS III
2014-2015
CENTRO/EMPRESA DONDE SE DESALLORARON LAS PRACTICAS UNIVERSIDAD COMPLUTENSE DE MADRID DIRECTOR DE LA TESIS JOSÉ LUIS VÁZQUEZ POLETTI FECHA: 01 de FEBRERO de 2016
AGRADECIMIENTOS
A José Luis Vázquez-Poletti sin cuya ayuda este viaje por las nubes sería imposible
ÌNDICE
RESUMEN.......................................................................................................1
OBJETIVOS....................................................................................................2
INTRODUCCIÓN...........................................................................................3
MATERIAL Y MÉTODOS............................................................................6
RESULTADOS................................................................................................7
DISCUSIÓN.....................................................................................................9
CONCLUSIONES..........................................................................................11
BIBLIOGRAFIA............................................................................................12
RESUMEN
La idea central de la teoría de la evolución es que las especies se relacionan a través de la historia de la descendencia común, cualquier estudio de secuencias genéticas en diferentes especies o individuos de una población es probable que comience con un análisis filogenético. La cantidad de datos producidos por las nuevas tecnologías de secuenciación (NGS) y la complejidad de las preguntas en biología evolutiva plantea grandes retos estadísticos y computacionales. BEAST es un programa multiplataforma para el análisis bayesiano de secuencias moleculares orientado a filogenias datadas y sirve como método para comprobar hipótesis evolutivas sin estar condicionado a una única topología de árbol. La computación en la nube ofrece ventajas a los investigadores ya que permite usar de forma más eficiente los cada vez más sofisticados recursos computacionales y responder en un tiempo razonable usando la gran cantidad de datos disponible. Amazon ofrece una gran variedad de recursos y servicios computacionales, escalables, rápidos y fáciles de usar; cada trabajo debe ser inicialmente evaluado para usar la solución que mejor se adapte a nuestras necesidades. La filogenia datada de gran cantidad de secuencias (Big Data) no se puede obtener actualmente con un coste/tiempo asumible.
1
OBJETIVOS
La cantidad de datos producidos por las nuevas tecnologías de secuenciación (NGS) y la complejidad de las preguntas en biología evolutiva plantea grandes retos estadísticos y computacionales. BEAST es un programa multiplataforma para el análisis bayesiano de secuencias moleculares, orientado a las filogenias datadas y a comprobar hipótesis evolutivas no basadas en una única topología, cuya velocidad computacional es muy dependiente de los datos. Los servicios en la nube, como los que ofrece Amazon, son una solución a estos requerimientos , ya que disponen de múltiples opciones de almacenamiento y velocidad de cálculo que permiten gestionar los costes. El objetivo de este trabajo es, primero, explorar diferentes combinaciones de CPU, memoria, almacenamiento y capacidad , en términos de tiempo de procesamiento y costes de ejecución para el análisis evolutivo bayesiano de grandes conjuntos de datos genéticos; y finalmente buscar una solución apropiada para su procesamiento en un tiempo razonable.
2
INTRODUCCIÓN Desde los tiempos de Darwin, se ha ido desarrollando la idea central de la teoría de la evolución, que las especies se relacionan a través de la historia de la descendencia común. Esta idea se puede aplicar en biología para intentar responder a numerosas preguntas, desde la más general, como puede ser intentar inferir el árbol de la vida, hasta la más práctica, como puede ser inferir la trasmisión de un virus de un paciente a otro . De hecho, hoy día cualquier estudio de secuencias genéticas, en diferentes especies o individuos, de una población es probable que comience con un análisis filogenético. La filogenia estudia la relación ('filo') entre las especies ('genia'), se utiliza en casi todas las ramas de la biología y es una herramienta indispensable para las comparaciones del genoma. Su uso se extiende cada vez más ya que cada día es más fácil realizar sofisticados análisis en ordenadores personales. Por ejemplo se puede construir un árbol consenso basado en probabilidades posteriores que equivale a un análisis de máxima verosimilitud con bootstrap1 pero mucho más rápido.
En los últimos años se han desarrollado gran cantidad de métodos computacionales que permiten aumentar nuestro conocimiento de los agentes infecciosos2. Por otro lado, el desarrollo de las nuevas técnicas de secuenciación masiva (NGS) generan gran cantidad de información genética que incrementa las bases de datos constantemente3, de tal forma que hoy día el reto es su almacenamiento y análisis, y no su obtención. Por otra parte, el análisis de secuencias por separado es útil para el estudio de las características del gen en cuestión; sin embargo, es ineficaz para la estimación de la filogenia común que subyace en todos los genes de un individuo o población; por lo que una aproximación filogenética que use genomas completos, ofrece una oportunidad sin precedentes para entender los problemas biológicos, clínicos y de salud pública relacionados con las enfermedades infecciosas3, 4,5. Este trabajo está motivado por el análisis desde un punto de vista evolutivo de genomas completos (taxonomía evolutiva6,7) de escherichia coli, ya que la transferencia horizontal que ocurre en esta especie lleva a incongruencias significativas entre las filogenias de genes individuales 8 .
3
Busqueda Genomas Completos Genomas de Escherichia:2294 Genes:5335 5Mbases/Genoma
Busqueda de Genes Ncbi-blast-2.2 Alineamiento de los Genes Seaview Verificación manual de los alineamientos
No automatizable
Gen/Concatenado de genes Seaview
Situación actual
Generación de archivos para analizar BEAUTi Analisis Bayesiano MCMC BEAST Evaluaciòn de resultados Tracer convergencia
No
Etapa limitante El tiempo de análisis depende de: Número de variables Número de secuencias Longitud de secuencias
Si Inferencia Evolutiva
No automatizable
Figura 1: Flujo de trabajo para el análisis evolutivo Bayesiano de genomas completos
4
El análisis filogenético bayesiano se ha desarrollado para realizar inferencias a partir de secuencias genéticas junto con la información que se tiene de ellas (fechas de muestreo, localización, función, etc). Se pueden hacer múltiples análisis que incluyen, filogenia tradicional, filogeografía, filodinámica, genética de poblaciones o comparación de hipótesis9,10,11,12. El tiempo de computación de estos métodos depende de los datos (número y longitud de las secuencias) y de las variables usadas (modelo evolutivo, reloj molecular, tipo de análisis, etc) Siguiendo el esquema de trabajo de la figura 1, el principal cuello de botella es la necesidad de gran cantidad de recursos computacionales que me permitan analizar gran cantidad de datos ('Big Data') y responder a múltiples preguntas evolutivas en un tiempo razonable. Una definición sencilla de análisis en la nube (Cloud Computing), es: ' modelo que permite acceder a múltiples recursos computacionales, bajo demanda y de forma totalmente configurable con un mínimo esfuerzo' (http://csrc.nist.gov/ publications/nistpubs/800-145/SP800-145.pdf.). El análisis en la nube permite acceder de forma sencilla a servidores, bases de datos, aplicaciones y servicios a través de internet. Se puede tener acceso a todos los recursos necesarios de forma casi instantánea, de forma gratuita si es pública o pagando por el uso si es privada, sin necesidad de crear una infraestructura propia. Los sistemas de pago por demanda son especialmente atractivos cuando se tiene un flujo de trabajo grande y variable, al compararlos con los coste de un cluster local que incluye las necesidades logísticas (administradores , espacio , instalación , configuración , mantenimiento , electicidad , etc)13 . Amazon Web Services (AWS) ofrece un conjunto exhaustivo e integral de servicios de informática en la nube para ayudar a gestionar grandes cantidades de datos gracias a la reducción de costes y el escalado, para atender a la demanda y al aumento de la velocidad en la innovación (htttps://d0.awsstatic.com/whitepapers/aws-overview.pdf). AWS es una infraestructura virtual diseñada para ofrecer acceso rápido a múltiples recursos computacionales, sistemas de almacenamiento y aplicaciones con diferentes costes, y una lista de medidas de seguridad que permitan la protección de los datos.
5
MATERIAL Y MÉTODOS
Datos
Para evaluar el efecto del número de secuencias, se usaron archivos con entre 100 y 2200 secuencias de 1000 nucleótidos de longitud. Para evaluar el efecto de la longitud de las secuencias, se usaron archivos con entre 2500 y 50000 nucleótidos de 100 secuencias No se evaluó el efecto de los parámetros del análisis, por lo que se usó el mismo modelo evolutivo y el mismo reloj molecular para todos. En todos los casos se obtuvieron 10000000 de árboles para evitar la variabilidad de velocidad en el inicio.
Infraestuctura
La infraestructura usada fue la ofrecida por Amazon a través de su servicio Elastic Compute Cloud (EC2) Se emplearon dos tipos de instancias: una de capacidad de computación moderada m2.2xlarge 4 con 4 CPUs , 34 GB de memoria RAM y 850 GB de almacenamiento; cuyo coste por hora es de $0.490 bajo demanda o $0.112 bajo reserva de un año; y una de capacidad de computación muy alta c3.8xlarge con 32 CPUs , 60 GB de memoria RAM y 640 GB SSD de almacenamiento; cuyo coste por hora es de $1.680 bajo demanda o $0.628 bajo reserva de un año. Primero se cargó todo el software necesario y una vez verificado que funcionaba, se ejecutó cada archivo de forma automática y secuencial, para finalmente obtener el tiempo de análisis de los archivos de resultados.
6
RESULTADOS
El resultado según la longitud de la secuencia se puede ver en la figura 2, sólo se pudo hacer con la instancia con capacidad moderada.
Fig.2-Tiempo de análisis según el número de nucleótidos en la instancia de capacidad moderada de EC2
La estimación curvilinea por regresión nos da una estimación de tiempo de computación (T) por cepa y árbol en función del número de nucleótidos (N):
T=1E-14(N)+5,76E-11
A partir de esta ecuación multiplicando por el número de cepas , el número de árboles que queremos generar y el coste de nuestra instancia por día, es fácil calcular el coste de nuestro experimento. Una prueba con datos reales indica que esta ecuación subestima el gasto real.
7
El resultado según el número de secuencias se puede ver en la figura 3. no se pudo terminar el experimento con la instancia de capacidad de computación más alta
Fig.3-Tiempo de análisis según el número de secuencias en diferentes instancias EC2
La estimación curvilinea por regresión nos da una estimación de tiempo de computación (T) por nucleótido y árbol en función del número de cepas (C):
T=2E-17(C)^2+3E-14(C)+7,3E-13 para la instancia de computación moderada
T=2E-17(C)^2+3E-14(C)+1,3E-13 para la instancia de computación muy alta
A partir de estas ecuaciones multiplicando por el número de nucleótidos , el número de árboles que queremos generar y el coste de nuestra instancia por día, es fácil calcular el coste de nuestro experimento. En el intervalo estudiado la instancia de alta computación reduce un 20% el tiempo de análisis. Una prueba con datos reales indica que estas ecuaciones sobreestiman el gasto real. Una prueba posterior usando una librería que realiza cálculos en paralelo14 consigue una mejoría del 30% en los tiempos de análisis
8
DISCUSIÓN
La computación en la nube es una alternativa atractiva cuando se necesitan grandes recursos informáticos . En el caso de las soluciones de pago, es imprescindible evitar costes innecesarios , lo que implica diseñar una estrategia que maximice la velocidad y la ocupación del clúster de computación minimizando los costes, seguramente la principal barrera para la adopción de esta herramienta 15 La variación genética permite investigar las consecuencias de la interacción entre los procesos evolutivos (mutación, selección, deriva génica) y los ecológicos (dinámica poblacional). Esta interacción entre ecología y evolución ha hecho que se estén desarrollando rápidamente nuevos métodos probabilísticos que permitan analizar conjuntamente los eventos evolutivos (relaciones genealógicas) con los eventos ecológicos y/o poblacionales (transmisión, virulencia, adaptación) de los cada vez más numerosos datos empíricos. Cada nuevo proyecto en este campo requiere menos costes para secuenciar pero más recursos para el manejo y análisis de datos, por lo que la bioinformática se convertirá en el cuello de botella para la explotación de los datos16 procedentes de la secuenciación masiva. Las herramientas bioinformáticas cada vez más complejas como los métodos bayesianos requieren gran cantidad de recursos cuando se analizan gran cantidad de datos (Big Data), lo que nos lleva a intentar optimizar el código y a buscar alternativas de procesamiento. La evolución es un proceso que ocurre a lo largo del tiempo por lo que la filogenia datada, que permite asociar las ramas con fechas conocida (por ejemplo tiempo de muestreo) y fechas estimadas (por ejemplo tiempo de divergencia), es la mejor forma de hacer frente a la cada vez más crecientes corriente evolutivas, siendo BEAST la plataforma más popular17. El análisis evolutivo Bayesiano18 incluye un amplio número de análisis diferentes (genética poblacional, filogeografía, filodinámica , etc) , cada uno con múltiples parámetros y diferentes requisitos computacionales, por lo que es indispensable un estudio previo de cada experimento para evaluar dichos recursos y decidir cuál es la solución que mejor se adapta a nuestras necesidades.
9
En este caso sólo he evaluado la influencia del número de secuencias y de su longitud, queda claro que el número de secuencias es el factor limitante principal, aunque no se puede valorar con precisión ya que el análisis se hizo de forma independiente y estos dos factores están relacionados. A pesar de que se está mejorando la velocidad de procesamiento de este software mediante análisis en paralelo (BEAGLE) y el uso de procesadores gráficos (GPU que encarecen el coste), no parece que actualmente se puedan analizar gran cantidad de secuencias en un tiempo razonable. Intentando resolver el problema , se redujo el problema dividiendo las secuencias en grupos pequeños pero, ya que es un método comparativo , se obtuvieron múltiples soluciones con un difícil encaje final, por lo que la aproximación elegida es reducir el número de secuencias hasta que el tiempo de análisis sea asumible, buscando siempre la mayor diversidad posible. Amazon ofrece una gran variedad de recursos y servicios computacionales, escalables, rápidos y fáciles de usar; cada trabajo debe ser inicialmente evaluado para usar la solución que mejor se adapte a nuestras necesidades.
10
CONCLUSIONES
Los servicios en la nube representan una alternativa a la falta de recursos computacionales cuando nos enfrentamos a gran cantidad de datos permitiendo suplir o aumentar las infraestructuras locales. En el caso de las soluciones de pago es imprescindible un análisis de necesidades previo, por ejemplo, la filogenia datada de gran cantidad de secuencias (Big Data) no se puede conseguir actualmente con un coste/tiempo asumible. El futuro pasa por el uso de las unidades de procesamiento gráfico para aumentar la velocidad de cálculo y el desarrollo de algoritmos capaces de mezclar las cadenas de Markov obtenidas por el método de Monte Carlo (MCMC), habitualmente usado en el análisis Bayesiano, en diferentes máquinas.
11
BIBLIOGRAFÍA
1. Huelsenbeck JP, Ronquist F, Nielsen R, Bollback JP..Bayesian Inference of Phylogeny and Its Impact on Evolutionary Biology. SCIENCE 2001 Dec;294 2. Tong JC, Ng LF. Understanding infectious agents from an in silico perspective. Drug Discov Today. 2011;16 :42-9. 3. Gilchrist CA, Turner SD, Riley MF, Petri WA Jr, Hewlett EL. Whole-genome sequencing in outbreak analysis. Clin Microbiol Rev. 2015;28: 541-63. 4. Rannala B, Yang Z. Phylogenetic inference using whole genomes. Annu. Rev. Genomics, Hum. Genet. 2008. 9: 217-31 5. Roetzer A, Diel R, Kohl TA, Rückert C, Nübel U, Blom J, Wirth T, Jaenicke S, Schuback S, Rüsch-Gerdes S, Supply P, Kalinowski J, Niemann S. Whole genome sequencing versus traditional genotyping for investigation of a Mycobacterium tuberculosis outbreak: a longitudinal molecular epidemiological study. PLoS Med. 2013;10:e1001387 6. Huxley J S (1940). The new systematics. Clarendon Press. Oxford 7.
Koonin E V and Wolf YI. Evolution of microbes and viruses : aparadigm shift in evolutionary biology? Frontiers in Cellular and Infection Microbiolog September 2012 | Volume 2 | Article 119
8. Lecointre G, Rachdi L, Darlu P, and Denamur E. Escherichia coli Molecular Phylogeny Using the Incongruence Length Difference Test. Mol. Biol. Evol. (1998).15(12):1685–1695. 9. Kühnert D, Wu CH, Drummond A J. Phylogenetic and epidemic modeling of rapidly evolving infectious diseases Infection, Genetics and Evolution 11 (2011) 1825–1841 10. Faria NR, Suchard MA, Rambaut A and Lemey P. Towards a quantitative understanding of viral phylogeography. Curr Opin Virol. 2011 November ; 1(5): 423–429. 11. Norström MM, Karlsson AC, Salemi M. Towards a new paradigm linking virus molecular evolution and pathogenesis: experimental design and phylodynamic inference New Microbiologica, 35, 101-111, 2012
12
12. Delsuc F, Brinkmann H and Philippe H. Phylogenomics and the reconstruction of the tree of life. Nature Reviews Genetics 6, 5 (2005) 361-75 13. Rosenthal A, Mork P, Li MH, Stanford J, Koester D, Reynolds P. Cloud computing: a new business paradigm for biomedical information sharing. J Biomed Inform. 2009 Apr;43(2):342–53 14. Ayres D, Darling A, Zwickl D, Beerli P, Holder M, et al. (2012) Beagle: a common application programming inferface and high-performance computing library for statistical phylogenetics. Syst Biol 61: 170–173. 15. Kudtarkar P, DeLuca TF, Fusaro VA, Tonellato PJ and Wall DP. Cost-Effective Cloud Computing: A Case Study Using the Comparative Genomics Tool, Roundup.Evolutionary Bioinformatics 2010:6 197–203 16. Caboche S, Audebert C and Hot D. High-Throughput Sequencing, a Versatile Weapon to Support Genome-Based Diagnosis in Infectious Diseases: Applications to Clinical Bacteriology Pathogens 2014, 3, 258-279 17. Drummond J, Suchard MA, Xie D and Rambaut A. Bayesian phylogenetics with BEAUti and the BEAST 1.7 Mol. Biol. Evol. 29(8):1969–1973. 2012
18. Bouckaert R, Heled J, Kühnert D, Vaughan T, Wu C-H, et al. (2014) BEAST 2: A Software Platform for Bayesian Evolutionary Analysis. PLoS Comput Biol 10(4): e1003537. doi:10.1371/journal.pcbi.1003537
13