Bioinformática Clasica
Transcripción
Bioinformática Clasica
Bioinformática Clásica Bioinformática Clasica Tema 3: Análisis de Secuencias (3) Aplicaciones qNEW-SEQ KNOWN-SEQ --SARGDFLNAA YALFFMRSHN FGHSDVLPVL |||||||| ||| ||||| ||||||| MMSARGDFLN-- YALSLMRSHN DEHSDVLPVL Dr. Oswaldo Trelles [email protected] qNEW-SEQ –-CSLKHVAY WDAYQALIYW IKAMNQQTDTSI |||||||| |||||| | ||||||||| KNOWN-SEQ DVCSLKHVAY –VFQALIYW IKAMNQQTTLDT qNEW-SEQ --RPPDDQAF GHHHLPQAMH --SRLYVPS-SK ||| | || | ||||||| || KNOWN-SEQ TIRPPA---- GAFGLPTANT CISRLYVPSMSK En la presentación anterior vimos algunos ejercicios de comparación de secuencias. Aunque las secuencias eran muy cortas, el trabajo era tedioso y propenso a error. Veremos en esta presentación los programas más usados para realizar este trabajo. Ahora bien, ¿ cómo comparar secuencias ? Existen diversidad de algoritmos para estimar el “parecido” entre dos secuencias. Desde los exhaustivos que ofrecen precisión a cambio de coste computacional, hasta heurísticos que ganan en velocidad sacrificando algo la precisión. La velocidad y precisión no solo está asociada al algoritmo en sí y a sus resultados, sino que también intervienen los parámetros que le proporcionamos para que haga un trabajo eficaz. Por ello hemos dedica tiempo a las matrices de peso, a las interrupciones, etc. Tema 3: Análisis de Secuencias (3) Campus Virtual Andaluz, 2007 Exhaustivos / Heurísticos Bioinformática Clásica Hemos visto que la comparación exhaustiva por Identidad es de complejidad O(N2), pero que se podía hacer en tiempo lineal si se usaba una tabla de dispersión (el equivalente a los prefijos que se incluyen en cada página de los diccionarios). La inclusión de las relaciones de peso (comparación por semejanzas) nos permite un mejor refinamiento en la comparación. Sin embargo, ahora al usar los índices de identidad que nos permiten acelerar la búsqueda, ya solo podemos hablar de resultados aproximados, bajo la hipótesis de que el mejor alineamiento se encontrará en aquellas diagonales que más identidades tengan. La inclusión de gaps hace aún más costoso el examen exhaustivo. Por ello son necesarios heurísticos que permitan realizar las tareas de comparación en tiempos razonables. Por ejemplo con reducciones de hasta 2 órdenes de magnitud en los tiempos de búsqueda, a cambio de sensibilidad y selectividad por no identificar algunos reemplazos conservativos y palabras más pequeñas que k (el tamaño del prefijo) La razón de describir los algoritmos es que en mi opinión, solo conociendo cómo funcionan por dentro los programas, podremos usarlos mejor. En otro caso solo os tendría que dar la “receta” de que botones pulsar para obtener el resultado. Tema 3: Análisis de Secuencias (3) Campus Virtual Andaluz, 2007 Bioinformática Clásica Búsquedas Rápidas: FASTA (Lipman & Pearson, 1985, Pearson & Lipman 1988) Idea: Reducir el espacio de búsqueda tratando de encontrar en qué diagonales es más probable que se encuentre el mejor alineamiento Etapa I : Búsqueda de Regiones (diagonales) por Identidad y sin Gaps Uso de k-tuplas para acelerar (k-tupla: prefijo de k residuos) Resultado : Las mejores diagonales (10) Complejidad O(N+M) Etapa II: Re-evaluación de las regiones por semejanza Unión de regiones con Gaps Etapa III: Evaluación exhaustiva de las mejores secuencias Observe que mayores valores de K aceleran más el proceso, pero hacen perder precisión al no identificar los reemplazos conservativos ni las palabras más pequeñas que K. Actividad opcional: recuperar y leer el artículo original del Fasta: Pearson & Lipman, (1988) “Improved tools for biological sequence analysis” Proc. Natl. Acad. Sci., USA 85; 2444-2448 Tema 3: Análisis de Secuencias (3) Campus Virtual Andaluz, 2007 Bioinformática Clásica Basic Local Alignment Search Tool (BLAST) Altschul, et.al. J. Mol. Biol. (1990) 215:403-10. Idea: Reducir el espacio de búsqueda tratando de encontrar [POR SEMEJANZA] en qué diagonales es más probable que se encuentre el mejor alineamiento Uso de k-tuplas por semejanza (amplía el espacio de búsqueda de FASTA) Corte estadístico (baja probabilidad de ocurrencia) (a) Identificación rápida de segmentos (MSP: maximal segment pair. Segmento: sub-secuencia continua de cualquier longitud. Puntaje: Suma de la semejanza de cada par (b) Análisis detallado de MSPs con mas probabilidad de formar el alineamiento final Tabla Hash (long=w) de Sq con Score > T (umbral de SS) La long de la tabla es función de w y T. NOTA: El problema del FASTA es que usa “identidades” para encontrar pequeños fragmentos presentes en las dos secuencias para usarlos como pista acerca de donde se encuentra el mejor alineamiento. Para evitar perder los pequeños fragmentos “parecidos” BLAST usa una tabla por semejanzas. Tema 3: Análisis de Secuencias (3) Campus Virtual Andaluz, 2007 Bioinformática Clásica BLAST original: Ejemplo Sea Sq ={ TCAGACGATTGAAC } de longitud 14 Se dispone del esquema de pesos que se muestra: Una ventana w = 2 producirá las siguientes 16 (42) palabras o prefijos : A A 4 -3 C -3 G C T 1 -3 4 -3 1 -3 T -3 G 1 4 -3 1 -3 1 { AA, AC, AG, AT, CA, CC, CG, CT, GA, GC, GC, GT, TA, TC, TG y TT } Ahora determinamos en que posiciones de la secuencia aparecen estos prefijos (no solo los iguales, sino también los parecidos) Usemos T = 1 como umbral de “parecido”. Es decir, dos palabras de longitud 2, se parecerá si su puntuación alineada es positiva (> 0). Para cada palabra con Puntaje > T anotaremos su posición y el puntaje T>=1 ---------------------------------------AA [ 9] (CA,2, 1)(AG,3, 5)(GA, 4, 5)(AC, 5, 1)(GA, 7, 5)(AT, 8, 1)(GA,11, 5)(AA,12, 8)(AC,13, 1) Observe que la palabra AA (la primera de la lista) al alinearla con la palabra CA que está en la posición 2, tiene un puntaje de 1 (A con C = -3 y A con A = 4, total 1), lo mismo ocurre con AG en la posición 3, etc etc. El primer paso es la construcción de la tabla de dispersión (el índice). El problema del FASTA es que usa “identidades” para encontrar pequeños fragmentos presentes en las dos secuencias a comparar para usarlas como pista acerca de donde se encuentra el mejor alineamiento. Para evitar perder los pequeños fragmentos “parecidos” el Blast usa una tabla por semejanzas. Tema 3: Análisis de Secuencias (3) Campus Virtual Andaluz, 2007 Bioinformática Clásica BLAST original: Ejemplo Sea Sq ={ TCAGACGATTGAAC } de longitud 14 Se dispone del esquema de pesos que se muestra: A A 4 -3 C -3 G C T 1 -3 4 -3 1 -3 T -3 G 1 4 -3 1 -3 1 w=2 : 16 (42) palabras { AA, AC, AG, AT, CA, CC, CG, CT, GA, GC, GC, GT, TA, TC, TG y TT }. Palabras en Sq con Score > T=1 (posición y puntaje): T>=1 ---------------------------------------AA [ 9] (CA,2, 1)(AG,3, 5)(GA, 4, 5)(AC, 5, 1)(GA, 7, 5)(AT, 8, 1)(GA,11, 5)(AA,12, 8)(AC,13, 1) AC [ 6] (TC,1, 1)(AG,3, 1)(AC, 5, 8)(AT, 8, 5)(AA,12, 1)(AC,13, 8) AG [10] (AG,3, 8)(GA,4, 2)(AC, 5, 1)(CG, 6, 1)(GA, 7, 2)(AT, 8, 1)(TG,10, 1)(GA,11, 2)(AA,12, 5)(AC,13,1) AT [ 6] (AG,3, 1)(AC,5, 5)(AT, 8, 8)(TT, 9, 1)(AA,12, 1)(AC,13, 5) CA [ 7] (CA,2, 8)(GA,4, 1)(CG, 6, 5)(GA, 7, 1)(TG,10, 2)(GA,11, 1)(AA,12, 1) CC [ 6] (TC,1, 5)(CA,2, 1)(AC, 5, 1)(CG, 6, 1)(TT, 9, 2)(AC,13, 1) CG [ 4] (CA,2, 5)(AG,3, 1)(CG, 6, 8)(TG,10, 5) CT [ 5] (TC,1, 2)(CA,2, 1)(CG, 6, 1)(AT, 8, 1)(TT, 9, 5) GA [ 6] (CA,2, 1)(AG,3, 2)(GA, 4, 8)(GA, 7, 8)(GA,11, 8)(AA,12, 5) GC [ 7] (TC,1, 1)(GA,4, 1)(AC, 5, 5)(GA, 7, 1)(AT, 8, 2)(GA,11, 1)(AC,13, 5) GG [ 7] (AG,3, 5)(GA,4, 5)(CG, 6, 1)(GA, 7, 5)(TG,10, 1)(GA,11, 5)(AA,12, 2) GT [ 7] (GA,4, 1)(AC,5, 2)(GA, 7, 1)(AT, 8, 5)(TT, 9, 1)(GA,11, 1)(AC,13, 2) TA [ 9] (TC,1, 1)(CA,2, 5)(GA, 4, 1)(CG, 6, 2)(GA, 7, 1)(TT, 9, 1)(TG,10, 5)(GA,11, 1)(AA,12, 1) TC [ 5] (TC,1, 8)(AC,5, 1)(TT, 9, 5)(TG,10, 1)(AC,13, 1) TG [ 6] (TC,1, 1)(CA,2, 2)(AG, 3, 1)(CG, 6, 5)(TT, 9, 1)(TG,10, 8) TT [ 4] (TC,1, 5)(AT,8, 1)(TT, 9, 8)(TG,10, 1) Aquí la tabla de dispersión completa. Verifique al menos una línea para entender el proceso. Tema 3: Análisis de Secuencias (3) Campus Virtual Andaluz, 2007 Bioinformática Clásica BLAST original: Ejemplo A A Sea Sq ={ TCAGACGATTGAAC } de longitud 14 Se dispone del esquema de pesos que se muestra: Seamos ahora más restrictivos y probemos otros umbrales T=5 y 8 T >= 5 -------------------------AA [ 5] (AG, 3, 5)(GA, 4, 5)(GA, 7, 5)(GA,11, 5)(AA,12, 8) AC [ 3] (AC, 5, 8)(AT, 8, 5)(AC,13, 8) AG [ 2] (AG, 3, 8)(AA,12, 5) AT [ 3] 4 -3 C -3 G C T 1 -3 4 -3 1 -3 T -3 G 1 4 -3 1 -3 1 T >= 8 ----------------------------AA [ 1] (AA,12, 8) AC [ 2] (AC, 5, 8)(AC,13, 8) AG [ 1] (AG, 3, 8) (AC, 5, 5)(AT, 8, 8)(AC,13, 5) AT [ 1] (AT, 8, 8) CA [ 2] (CA, 2, 8)(CG, 6, 5) CA [ 1] (CA, 2, 8) CC [ 1] (TC, 1, 5) CG [ 3] (CA, 2, 5)(CG, 6, 8)(TG,10, 5) CT [ 1] (TT, 9, 5) GA [ 3] GA [ 4] (GA, 4, 8)(GA, 7, 8)(GA,11, 8)(AA,12, 5) GC [ 0] GC [ 2] (AC, 5, 5)(AC,13, 5) GG [ 0] GG [ 4] (AG, 3, 5)(GA, 4, 5)(GA, 7, 5)(GA,11, 5) GT [ 1] (AT, 8, 5) TC [ 1] (TC, 1, 8) TA [ 2] (CA, 2, 5)(TG,10, 5) TG [ 1] (TG,10, 8) TC [ 2] (TC, 1, 8)(TT, 9, 5) TT [ 1] (TT, 9, 8) TG [ 2] (CG, 6, 5)(TG,10, 8) TT [ 2] (TC, 1, 5)(TT, 9, 8) CC [ 0] CG [ 1] (CG, 6, 8) CT [ 0] (GA, 4, 8)(GA, 7, 8)(GA,11, 8) GT [ 0] TA [ 0] Observe que al ser más restrictivo (aumentar T), el número de entradas en la tabla disminuye (el algoritmo irá más rápido), aunque perderá sensibilidad comportándose cada vez más como una tabla de dispersión por identidades. Tema 3: Análisis de Secuencias (3) Campus Virtual Andaluz, 2007 BLAST original: Ejemplo Bioinformática Clásica w=2: 16 (42) palabras {AA,AC,AG,AT,CA,CC,CG,CT,GA,GC,GC,GT,TA,TC,TG y TT} Buscar cada palabras en Sq con Score > T (posición y puntaje) ---- [ T>=1 ] ------AA [ 9] (CA,2, 1)(AG,3, 5)(GA, 4, 5)(AC, 5, 1)(GA, 7, 5) (AT, 8, 1)(GA,11, 5)(AA,12, 8)(AC,13, 1) AC [ 6] (TC,1, 1)(AG,3, 1)(AC, 5, 8)(AT, 8, 5)(AA,12, 1) (AC,13, 8) ---- [ T>=5 ] ------- AA [ 5] (AG, 3, 5)(GA, 4, 5)(GA, 7, 5)(GA,11, 5)(AA,12, 8) AC [ 3] (AC, 5, 8)(AT, 8, 5)(AC,13, 8) ---- [ T>=8 ] ------- AA [ 1] (AA,12, 8) AC [ 2] (AC, 5, 8)(AC,13, 8) Relación entre el valor de restricción (T) y el número de entradas en la tabla. Tema 3: Análisis de Secuencias (3) Campus Virtual Andaluz, 2007 Bioinformática Clásica Implementación del BLAST • • • Recorrer la secuencia query con una ventana deslizante de ancho w y construir una lista de palabras de tamaño w con puntaje > T. Los valores típicos de w son 4 para proteínas y 12 para ADN Para cada una de las secuencia de la BdeD, recorrerla con la misma ventana y calcular en que diagonales se producen emparejamientos Extender los fragmentos a lo largo de la diagonal. Si el puntaje acumulado cae bajo un valor X, se detiene la extensión (un valor de X = 20 en proteínas da una probabilidad de 0.001de perder una buena extensión. (En realidad, la BdeD está preprocesada indicando en qué secuencias y en que posición aparecen fragmentos de una determinada combinación. Ello permite una búsqueda extremadamente rápida). La BdeD se preprocesa para varias combinaciones de W y T. Tema 3: Análisis de Secuencias (3) Campus Virtual Andaluz, 2007 Bioinformática Clásica Gapped BLAST and PSI-BLAST A new Generation of Protein DB search Programs Altschul, S.F., Madden T.L., Schaffer A.A., Zhanng J., Zhang Z., Miller W., and Lipman D.J. Nucleid Acids Research (1997) v.25, n.17 3389-3402 Mejoras sobre la versión original (1) Método de las dos palabras (Two-hits method) Exige la presencia dos palabras (que no solapen, estén en la misma diagonal a una distancia menor que A entre ellas) Para recuperar sensitividad, disminuir T (2) Fragmentos con interrupciones (gapped segments) Dos fragmentos forman el mismo alineamiento ? Programación dinámica limitando el ancho de ventana Alineamientos alternativos que no disminuyen el puntaje más de Xg. (3) Búsqueda iterativa (método de la secuencia intermedia) Realizar una primera búsqueda y recuperar las mejores secuencias. Construir una matriz de pesos específica por posición. Volver a buscar usando esta nueva matriz de pesos Tema 3: Análisis de Secuencias (3) Campus Virtual Andaluz, 2007 Parámetros mínimos Bioinformática Clásica En general los programas de comparación requieren los siguientes parámetros: Entrada: – Secuencia problema (Query) – BD de secuencias – Puntaje mínimo (S) – Ancho de ventana (W) – Umbral de semejanza (T) Salida: – Lista de secuencias con parecido mayor que S, incluye los fragmentos y alineamiento. Tema 3: Análisis de Secuencias (3) Campus Virtual Andaluz, 2007 Bioinformática Clásica Comentarios Finales • Identificar el problema a resolver • Conocer los algoritmos • Conocer el efecto de los parámetros usados por los algoritmos • Conocer el significado de los datos (además de las secuencias, los esquemas de pesos,...) • Elegir la mejor combinación de herramientas. En general se suele empezar con búsquedas rápidas con Blast o Fasta y luego refinar con programación dinámica. • En las búsquedas, dependiendo de los resultados que se obtienen (muchas o pocas secuencias similares) se puede jugar con los parámetros, especialmente la matriz de pesos y las penalizaciones por interrupciones. • Recuerde que es un trabajo inter-disciplinar Tema 3: Análisis de Secuencias (3) Campus Virtual Andaluz, 2007 Bioinformática Clásica La versión ampliada de este tema se encuentra en los apuntes del Tema 3: Análisis de Secuencias, accesibles a través de la plataforma Web de aprendizaje virtual de la UNIA. Consulta estos materiales para completar tus conocimientos Tema 3: Análisis de Secuencias (3) Campus Virtual Andaluz, 2007