stringtranslate.com

BLAST (biotecnología)

En bioinformática , BLAST ( herramienta básica de búsqueda de alineación local ) [3] es un algoritmo y programa para comparar información de secuencias biológicas primarias , como las secuencias de aminoácidos de proteínas o los nucleótidos de secuencias de ADN y/o ARN . Una búsqueda BLAST permite a un investigador comparar una proteína o secuencia de nucleótidos en cuestión (llamada consulta) con una biblioteca o base de datos de secuencias e identificar secuencias de bases de datos que se parecen a la secuencia de consulta por encima de un cierto umbral. Por ejemplo, tras el descubrimiento de un gen previamente desconocido en el ratón , un científico normalmente realizará una búsqueda BLAST del genoma humano para ver si los humanos portan un gen similar; BLAST identificará secuencias en el genoma humano que se asemejan al gen del ratón basándose en la similitud de secuencia.

Fondo

BLAST, al que The New York Times llamó el Google de la investigación biológica , [3] es uno de los programas bioinformáticos más utilizados para la búsqueda de secuencias. [4] Aborda un problema fundamental en la investigación bioinformática. El algoritmo heurístico que utiliza es mucho más rápido que otros enfoques, como el cálculo de una alineación óptima. Este énfasis en la velocidad es vital para que el algoritmo sea práctico en las enormes bases de datos genómicas disponibles actualmente, aunque los algoritmos posteriores pueden ser incluso más rápidos.

Antes de BLAST, FASTA fue desarrollado por David J. Lipman y William R. Pearson en 1985. [5] El programa BLAST fue diseñado por Eugene Myers, Stephen Altschul, Warren Gish, David J. Lipman y Webb Miller en los NIH y fue publicado en J. Mol. Biol. en 1990.

BLAST amplió el trabajo de alineación en FASTA añadiendo un novedoso modelo estocástico desarrollado por Samuel Karlin y Stephen Altschul . [6] Propusieron "un método para estimar similitudes entre la secuencia de ADN conocida de un organismo con la de otro", [3] y su trabajo ha sido descrito como "la base estadística de BLAST". [7] Posteriormente, Altschul, Gish, Miller, Myers y Lipman diseñaron e implementaron el programa BLAST, que se publicó en el Journal of Molecular Biology en 1990 y ha sido citado más de 100.000 veces desde entonces. [8]

Si bien BLAST es más rápido que cualquier implementación de Smith-Waterman en la mayoría de los casos, no puede "garantizar las alineaciones óptimas de las secuencias de consulta y de base de datos" como lo hace el algoritmo de Smith-Waterman. El algoritmo de Smith-Waterman fue una extensión de un método óptimo anterior, el algoritmo Needleman-Wunsch , que fue el primer algoritmo de alineación de secuencias que garantizaba encontrar la mejor alineación posible. Sin embargo, los requisitos de tiempo y espacio de estos algoritmos óptimos superan con creces los requisitos de BLAST.

BLAST ahorra más tiempo que FASTA al buscar solo los patrones más significativos en las secuencias, pero con una sensibilidad comparativa. Esto podría lograrse aún más si se comprende el algoritmo de BLAST que se presenta a continuación.

Ejemplos de otras preguntas que los investigadores utilizan BLAST para responder son:

BLAST también se utiliza a menudo como parte de otros algoritmos que requieren una coincidencia de secuencia aproximada .

BLAST está disponible en el sitio web del NCBI. Hay diferentes tipos de BLAST disponibles según las secuencias de consulta y las bases de datos de destino. Las implementaciones alternativas incluyen AB-BLAST (anteriormente conocida como WU-BLAST), FSA-BLAST (última actualización en 2006) y ScalaBLAST. [9] [10]

El artículo original de Altschul, et al. [8] fue el artículo más citado publicado en la década de 1990. [11]

Aporte

Secuencias de ingreso (en formato FASTA o Genbank ), base de datos para buscar y otros parámetros opcionales como matriz de puntuación.

Producción

La salida BLAST se puede entregar en una variedad de formatos. Estos formatos incluyen formato HTML , texto sin formato y XML . Para la página web del NCBI, el formato de salida predeterminado es HTML. Al realizar un BLAST en NCBI, los resultados se dan en un formato gráfico que muestra los aciertos encontrados, una tabla que muestra los identificadores de secuencia de los aciertos con datos relacionados con la puntuación, así como alineaciones para la secuencia de interés y los aciertos recibidos con las puntuaciones BLAST correspondientes. para éstos. El más fácil de leer y el más informativo es probablemente la tabla.

Si uno intenta buscar una secuencia patentada o simplemente una que no está disponible en bases de datos disponibles para el público en general a través de fuentes como NCBI, hay un programa BLAST disponible para descargar a cualquier computadora, sin costo alguno. Esto se puede encontrar en los ejecutables de BLAST+. También hay programas comerciales disponibles para su compra. Las bases de datos se pueden encontrar en el sitio del NCBI, así como en el Índice de bases de datos BLAST (FTP).

Proceso

Utilizando un método heurístico , BLAST encuentra secuencias similares, localizando coincidencias cortas entre las dos secuencias. Este proceso de encontrar secuencias similares se llama siembra. Es después de este primer partido que BLAST comienza a realizar alineaciones locales. Al intentar encontrar similitudes en secuencias, los conjuntos de letras comunes, conocidos como palabras, son muy importantes. Por ejemplo, supongamos que la secuencia contiene el siguiente tramo de letras, GLKFA. Si se realizara un BLAST en condiciones normales, el tamaño de la palabra sería de 3 letras. En este caso, utilizando la extensión de letras dada, las palabras buscadas serían GLK, LKF, KFA. El algoritmo heurístico de BLAST localiza todas las palabras comunes de tres letras entre la secuencia de interés y la secuencia o secuencias de aciertos de la base de datos. Este resultado luego se utilizará para construir una alineación. Después de formar palabras para la secuencia de interés, también se ensamblan el resto de palabras. Estas palabras deben satisfacer el requisito de tener una puntuación de al menos el umbral T , en comparación mediante el uso de una matriz de puntuación.

Una matriz de puntuación comúnmente utilizada para búsquedas BLAST es BLOSUM62 , [12] aunque la matriz de puntuación óptima depende de la similitud de secuencia. Una vez que se ensamblan y compilan tanto las palabras como las palabras vecinas, se comparan con las secuencias de la base de datos para encontrar coincidencias. La puntuación umbral T determina si una palabra en particular se incluirá o no en la alineación. Una vez realizada la siembra, la alineación, que tiene solo 3 residuos de longitud, se extiende en ambas direcciones mediante el algoritmo utilizado por BLAST. Cada extensión afecta la puntuación de la alineación al aumentarla o disminuirla. Si esta puntuación es superior a una T predeterminada , la alineación se incluirá en los resultados proporcionados por BLAST. Sin embargo, si esta puntuación es inferior a esta T predeterminada , la alineación dejará de extenderse, evitando que las áreas de mala alineación se incluyan en los resultados de BLAST. Tenga en cuenta que aumentar la puntuación T limita la cantidad de espacio disponible para la búsqueda, lo que disminuye la cantidad de palabras vecinas y, al mismo tiempo, acelera el proceso de BLAST.

Algoritmo

Para ejecutar el software, BLAST requiere una secuencia de consulta para buscar y una secuencia para buscar (también llamada secuencia objetivo) o una base de datos de secuencias que contenga múltiples secuencias de este tipo. BLAST encontrará subsecuencias en la base de datos que sean similares a las subsecuencias de la consulta. En el uso típico, la secuencia de consulta es mucho más pequeña que la base de datos, por ejemplo, la consulta puede tener mil nucleótidos mientras que la base de datos tiene varios miles de millones de nucleótidos.

La idea principal de BLAST es que a menudo hay pares de segmentos de puntuación alta (HSP) contenidos en una alineación estadísticamente significativa. BLAST busca alineamientos de secuencias de alta puntuación entre la secuencia de consulta y las secuencias existentes en la base de datos utilizando un enfoque heurístico que se aproxima al algoritmo de Smith-Waterman . Sin embargo, el enfoque exhaustivo de Smith-Waterman es demasiado lento para buscar en grandes bases de datos genómicas como GenBank . Por lo tanto, el algoritmo BLAST utiliza un enfoque heurístico que es menos preciso que el algoritmo de Smith-Waterman pero 50 veces más rápido. [8] La velocidad y la precisión relativamente buena de BLAST se encuentran entre las innovaciones técnicas clave de los programas BLAST.

Una descripción general del algoritmo BLAST (una búsqueda de proteína a proteína) es la siguiente: [13]

  1. Elimine las repeticiones de secuencia o región de baja complejidad en la secuencia de consulta.
    "Región de baja complejidad" significa una región de una secuencia compuesta por pocos tipos de elementos. Estas regiones pueden dar puntuaciones altas que confundan al programa a la hora de encontrar las secuencias significativas reales en la base de datos, por lo que deben filtrarse. Las regiones se marcarán con una X (secuencias de proteínas) o N (secuencias de ácidos nucleicos) y luego el programa BLAST las ignorará. Para filtrar las regiones de baja complejidad, se utiliza el programa SEG para secuencias de proteínas y el programa DUST para secuencias de ADN. Por otro lado, el programa XNU se utiliza para enmascarar las repeticiones en tándem en secuencias de proteínas.
  2. Haga una lista de palabras de k letras de la secuencia de consulta.
    Tome k = 3, por ejemplo, enumeramos las palabras de longitud 3 en la secuencia de proteínas de consulta ( k suele ser 11 para una secuencia de ADN) "secuencialmente", hasta que se incluya la última letra de la secuencia de consulta. El método se ilustra en la figura 1.
    Fig. 1 El método para establecer la lista de palabras de consulta de k letras. [14]
  3. Enumera las posibles palabras coincidentes.
    Este paso es una de las principales diferencias entre BLAST y FASTA. FASTA se preocupa por todas las palabras comunes en la base de datos y las secuencias de consulta que se enumeran en el paso 2; sin embargo, a BLAST sólo le importan las palabras con puntuación más alta. Las puntuaciones se crean comparando la palabra de la lista del paso 2 con todas las palabras de 3 letras. Al utilizar la matriz de puntuación ( matriz de sustitución ) para puntuar la comparación de cada par de residuos, hay 20^3 puntuaciones de coincidencia posibles para una palabra de 3 letras. Por ejemplo, la puntuación obtenida al comparar PQG con PEG y PQA es respectivamente 15 y 12 con el esquema de ponderación BLOSUM62 . Para las palabras de ADN, una coincidencia se califica como +5 y una falta de coincidencia como -4, o como +2 y -3. Después de eso, se utiliza un umbral de puntuación de palabras vecinas T para reducir el número de posibles palabras coincidentes. Las palabras cuyas puntuaciones sean superiores al umbral T permanecerán en la lista de posibles palabras coincidentes, mientras que aquellas con puntuaciones inferiores serán descartadas. Por ejemplo, se mantiene PEG, pero se abandona PQA cuando T es 13.
  4. Organice las palabras restantes con puntuación alta en un árbol de búsqueda eficiente.
    Esto permite que el programa compare rápidamente las palabras con puntuación más alta con las secuencias de la base de datos.
  5. Repita los pasos 3 a 4 para cada palabra de k letras en la secuencia de consulta.
  6. Escanee las secuencias de la base de datos en busca de coincidencias exactas con las palabras restantes con puntuación alta.
    El programa BLAST escanea las secuencias de la base de datos en busca de la palabra restante con puntuación alta, como PEG, de cada posición. Si se encuentra una coincidencia exacta, esta coincidencia se utiliza para generar una posible alineación sin espacios entre la consulta y las secuencias de la base de datos.
  7. Amplíe las coincidencias exactas al par de segmentos de alta puntuación (HSP).
    • La versión original de BLAST extiende una alineación más larga entre la consulta y la secuencia de la base de datos en las direcciones izquierda y derecha, desde la posición donde ocurrió la coincidencia exacta. La extensión no se detiene hasta que la puntuación total acumulada del PAS comience a disminuir. Un ejemplo simplificado se presenta en la figura 2.
      Fig. 2 El proceso para extender la coincidencia exacta. Adaptado de Análisis de secuencia biológica I, Temas actuales en análisis del genoma [2].
      Fig. 3 Las posiciones de las coincidencias exactas.
    • Para ahorrar más tiempo, se ha desarrollado una versión más nueva de BLAST, llamada BLAST2 o BLAST con huecos. BLAST2 adopta un umbral de puntuación de palabras de vecindad más bajo para mantener el mismo nivel de sensibilidad para detectar similitudes de secuencias. Por lo tanto, la lista de posibles palabras coincidentes en el paso 3 se vuelve más larga. A continuación, las regiones exactamente coincidentes, dentro de la distancia A entre sí en la misma diagonal en la figura 3, se unirán como una nueva región más larga. Finalmente, las nuevas regiones se extienden mediante el mismo método que en la versión original de BLAST, y las puntuaciones de los HSP (par de segmentos de puntuación alta) de las regiones extendidas se crean utilizando una matriz de sustitución como antes.
  8. Enumere todas las PAS de la base de datos cuya puntuación sea lo suficientemente alta como para ser consideradas.
    Enumeramos las PAS cuyas puntuaciones son mayores que la puntuación de corte S determinada empíricamente . Al examinar la distribución de las puntuaciones de alineación modeladas mediante la comparación de secuencias aleatorias, se puede determinar una puntuación de corte S tal que su valor sea lo suficientemente grande como para garantizar la importancia de las HSP restantes.
  9. Evaluar la importancia de la puntuación HSP.
    A continuación, BLAST evalúa la importancia estadística de cada puntuación de HSP explotando la distribución de valores extremos (EVD) de Gumbel. (Está demostrado que la distribución de las puntuaciones de alineación local de Smith-Waterman entre dos secuencias aleatorias sigue la EVD de Gumbel. Para alineaciones locales que contienen espacios, no está demostrado). De acuerdo con la EVD de Gumbel, la probabilidad p de observar una puntuación S igual o mayor que x viene dada por la ecuación
    dónde
    Los parámetros estadísticos se estiman ajustando la distribución de las puntuaciones de alineación local no separadas, de la secuencia de consulta y de muchas versiones barajadas (barajada global o local) de una secuencia de base de datos, a la distribución de valores extremos de Gumbel. Tenga en cuenta eso y dependa de la matriz de sustitución, las penalizaciones por espacios y la composición de la secuencia (las frecuencias de las letras). y son las longitudes efectivas de las secuencias de consulta y base de datos, respectivamente. La longitud de la secuencia original se acorta a la longitud efectiva para compensar el efecto de borde (un inicio de alineación cerca del final de una de las secuencias de consulta o base de datos probablemente no tenga suficiente secuencia para construir una alineación óptima). Se pueden calcular como
    donde es la puntuación promedio esperada por par de residuos alineados en una alineación de dos secuencias aleatorias. Altschul y Gish dieron los valores típicos, , y , para la alineación local sin espacios utilizando BLOSUM62 como matriz de sustitución. El uso de valores típicos para evaluar la importancia se denomina método de tabla de búsqueda; no es exacto. La puntuación esperada E de una coincidencia de base de datos es el número de veces que una secuencia de base de datos no relacionada obtendría una puntuación S mayor que x por casualidad. La expectativa E obtenida en una búsqueda de una base de datos de secuencias D viene dada por
    Además, cuando , E podría aproximarse mediante la distribución de Poisson como
    Esta expectativa o valor esperado "E" (a menudo llamado puntuación E o valor E o valor e ) que evalúa la importancia de la puntuación HSP para la alineación local sin espacios se informa en los resultados de BLAST. El cálculo que se muestra aquí se modifica si se combinan HSP individuales, como cuando se producen alineaciones con espacios (descritos a continuación), debido a la variación de los parámetros estadísticos.
  10. Convierta dos o más regiones HSP en una alineación más larga.
    A veces, encontramos dos o más regiones HSP en una secuencia de base de datos que pueden formar una alineación más larga. Esto proporciona evidencia adicional de la relación entre la consulta y la secuencia de la base de datos. Hay dos métodos, el método de Poisson y el método de suma de puntuaciones, para comparar la importancia de las regiones HSP recién combinadas. Supongamos que hay dos regiones HSP combinadas con los pares de puntuaciones (65, 40) y (52, 45), respectivamente. El método de Poisson da más importancia al conjunto con la puntuación máxima más baja (45>40). Sin embargo, el método de suma de puntuaciones prefiere el primer conjunto, porque 65+40 (105) es mayor que 52+45(97). El BLAST original utiliza el método Poisson; BLAST con espacios y el WU-BLAST utiliza el método de suma de puntuaciones.
  11. Muestre las alineaciones locales separadas de Smith-Waterman de la consulta y cada una de las secuencias de la base de datos coincidentes.
    • El BLAST original solo genera alineamientos sin espacios que incluyen las HSP encontradas inicialmente individualmente, incluso cuando se encuentra más de una HSP en una secuencia de base de datos.
    • BLAST2 produce una alineación única con espacios que pueden incluir todas las regiones HSP encontradas inicialmente. Tenga en cuenta que el cálculo de la puntuación y su correspondiente valor E implica el uso de penalizaciones de brecha adecuadas.
  12. Informar de cada coincidencia cuya puntuación esperada sea inferior a un parámetro de umbral E.

Explosión paralela

Las versiones BLAST paralelas de bases de datos divididas se implementan utilizando MPI y Pthreads , y se han adaptado a varias plataformas, incluidas Windows , Linux , Solaris , Mac OS X y AIX . Los enfoques populares para paralelizar BLAST incluyen distribución de consultas, segmentación de tablas hash, paralelización de cálculos y segmentación de bases de datos (partición). Las bases de datos se dividen en partes del mismo tamaño y se almacenan localmente en cada nodo. Cada consulta se ejecuta en todos los nodos en paralelo y los archivos de salida BLAST resultantes de todos los nodos se fusionan para producir el resultado final. Las implementaciones específicas incluyen MPIblast, ScalaBLAST, DCBLAST, etc. [15]

Programa

El programa BLAST se puede descargar y ejecutar como una utilidad de línea de comandos " blastall" o se puede acceder a él de forma gratuita a través de la web. El servidor web BLAST, alojado por el NCBI , permite a cualquier persona con un navegador web realizar búsquedas de similitudes en bases de datos de proteínas y ADN constantemente actualizadas que incluyen la mayoría de los organismos recién secuenciados.

El programa BLAST se basa en un formato de código abierto, lo que brinda a todos acceso a él y les permite cambiar el código del programa. Esto ha llevado a la creación de varios "spin-offs" de BLAST.

Ahora hay varios programas BLAST diferentes disponibles, que se pueden usar dependiendo de lo que uno esté intentando hacer y con qué esté trabajando. Estos diferentes programas varían en la secuencia de entrada de la consulta, la base de datos en la que se busca y lo que se compara. Estos programas y sus detalles se enumeran a continuación:

BLAST es en realidad una familia de programas (todos incluidos en el blastallejecutable). Estos incluyen: [16]

BLAST nucleótido-nucleótido (blastn)
Este programa, dada una consulta de ADN, devuelve las secuencias de ADN más similares de la base de datos de ADN que especifica el usuario.
BLAST proteína-proteína (blastp)
Este programa, dada una consulta de proteínas, devuelve las secuencias de proteínas más similares de la base de datos de proteínas que especifica el usuario.
BLAST iterativo de posición específica (PSI-BLAST) ( blastpgp)
Este programa se utiliza para encontrar parientes lejanos de una proteína. Primero, se crea una lista de todas las proteínas estrechamente relacionadas. Estas proteínas se combinan en una secuencia de "perfil" general, que resume las características importantes presentes en estas secuencias. Luego se ejecuta una consulta en la base de datos de proteínas utilizando este perfil y se encuentra un grupo más grande de proteínas. Este grupo más grande se utiliza para construir otro perfil y se repite el proceso.
Al incluir proteínas relacionadas en la búsqueda, PSI-BLAST es mucho más sensible a la hora de detectar relaciones evolutivas distantes que un BLAST proteína-proteína estándar.
Proteína de traducción de 6 cuadros de nucleótidos ( blastx)
Este programa compara los productos de traducción conceptual de seis marcos de una secuencia de consulta de nucleótidos (ambas cadenas) con una base de datos de secuencias de proteínas para encontrar un gen codificante de proteínas en una secuencia genómica o para ver si el ADNc corresponde a una proteína conocida.
Traducción de 6 marcos de nucleótidos-traducción de 6 marcos de nucleótidos ( tblastx)
Este programa es el más lento de la familia BLAST. Traduce la secuencia de nucleótidos de consulta en los seis fotogramas posibles y la compara con las traducciones de seis fotogramas de una base de datos de secuencias de nucleótidos. El propósito de tblastxes encontrar relaciones muy distantes entre secuencias de nucleótidos.
Traducción de 6 marcos de proteína-nucleótido ( tblastn)
Este programa compara una consulta de proteínas con los seis marcos de lectura de una base de datos de secuencias de nucleótidos. Puede usarse para mapear una proteína al ADN genómico.
Gran cantidad de secuencias de consulta ( megablast)
Al comparar una gran cantidad de secuencias de entrada a través de la línea de comandos BLAST, "megablast" es mucho más rápido que ejecutar BLAST varias veces. Concatena muchas secuencias de entrada para formar una secuencia grande antes de buscar en la base de datos BLAST, luego analiza posteriormente los resultados de la búsqueda para obtener alineaciones individuales y valores estadísticos.

De estos programas, BLASTn y BLASTp son los más utilizados. [17] Sin embargo, dado que las secuencias de proteínas se conservan mejor evolutivamente que las secuencias de nucleótidos, tBLASTn, tBLASTx y BLASTx producen resultados más confiables y precisos cuando se trata de ADN codificante. También permiten ver directamente la función de la secuencia de proteínas, ya que al traducir la secuencia de interés antes de la búsqueda, a menudo se obtienen resultados de proteínas anotados.

Versiones alternativas

Una versión diseñada para comparar genomas o ADN de gran tamaño es BLASTZ.

CS-BLAST (BLAST específico del contexto) es una versión extendida de BLAST para buscar secuencias de proteínas que encuentra el doble de secuencias relacionadas remotamente que BLAST a la misma velocidad y tasa de error. En CS-BLAST, las probabilidades de mutación entre aminoácidos dependen no sólo del aminoácido individual, como en BLAST, sino también de su contexto de secuencia local. La Universidad de Washington produjo una versión alternativa de NCBI BLAST, llamada WU-BLAST. Desde entonces, los derechos han sido adquiridos por Advanced Biocomputing, LLC.

En 2009, NCBI lanzó un nuevo conjunto de ejecutables BLAST, el BLAST+ basado en C++, y lanzó versiones C hasta la 2.2.26. [18] A partir de la versión 2.2.27 (abril de 2013), solo están disponibles los ejecutables BLAST+. Entre los cambios se encuentra el reemplazo del blastallejecutable con ejecutables separados para los diferentes programas BLAST y cambios en el manejo de opciones. La utilidad formatdb (basada en C) ha sido reemplazada por makeblastdb (basada en C++) y las bases de datos formateadas por cualquiera de ellas deberían ser compatibles para versiones idénticas. Los algoritmos siguen siendo similares, sin embargo, el número de resultados encontrados y su orden pueden variar significativamente entre la versión anterior y la nueva.

Versiones aceleradas

Cuando la infraestructura local es insuficiente, ejecutar BLAST en un servidor en la nube puede ser una buena manera de avanzar, ya que permite acceder a más energía sin dejar de utilizar BLAST estándar. El NCBI proporciona directrices para hacer esto; SequenceServer proporciona un mecanismo alternativo para ejecutar BLAST en la nube.

TimeLogic ofrece una implementación acelerada por FPGA del algoritmo BLAST llamado Tera-BLAST que es cientos de veces más rápido.

Otras versiones anteriormente admitidas incluyen:

Alternativas a BLAST

El predecesor de BLAST, FASTA , también se puede utilizar para la búsqueda de similitudes de proteínas y ADN. FASTA proporciona un conjunto similar de programas para comparar proteínas con bases de datos de proteínas y ADN, ADN con ADN y bases de datos de proteínas, e incluye programas adicionales para trabajar con péptidos cortos desordenados y secuencias de ADN. Además, el paquete FASTA proporciona SSEARCH, una implementación vectorizada del riguroso algoritmo de Smith-Waterman . FASTA es más lento que BLAST, pero proporciona una gama mucho más amplia de matrices de puntuación, lo que facilita adaptar una búsqueda a una distancia evolutiva específica.

Una alternativa extremadamente rápida pero considerablemente menos sensible a BLAST es BLAT ( Blast Like A lignment T ool ). Mientras que BLAST realiza una búsqueda lineal, BLAT se basa en la indexación de la base de datos por k-mer y, por lo tanto, a menudo puede encontrar semillas más rápido. [24] Otra alternativa de software similar a BLAT es PatternHunter .

Los avances en la tecnología de secuenciación a finales de la década de 2000 han hecho que la búsqueda de coincidencias de nucleótidos muy similares sea un problema importante. Los nuevos programas de alineación diseñados para este uso suelen utilizar la indexación BWT de la base de datos objetivo (normalmente un genoma). Las secuencias de entrada se pueden mapear muy rápidamente y la salida suele tener la forma de un archivo BAM. Ejemplos de programas de alineación son BWA , SOAP y Bowtie .

Para la identificación de proteínas, la búsqueda de dominios conocidos (por ejemplo, de Pfam ) mediante la comparación con modelos ocultos de Markov es una alternativa popular, como HMMER .

Una alternativa a BLAST para comparar dos bancos de secuencias es PLAST. PLAST proporciona una herramienta de búsqueda de similitud de secuencias de banco a banco de alto rendimiento que se basa en los algoritmos PLAST [25] y ORIS [26] . Los resultados de PLAST son muy similares a los de BLAST, pero PLAST es significativamente más rápido y capaz de comparar grandes conjuntos de secuencias con una pequeña huella de memoria (es decir, RAM).

Para aplicaciones en metagenómica, donde la tarea es comparar miles de millones de lecturas cortas de ADN con decenas de millones de referencias de proteínas, DIAMOND [27] se ejecuta hasta 20.000 veces más rápido que BLASTX, manteniendo al mismo tiempo un alto nivel de sensibilidad.

El software de código abierto MMseqs es una alternativa a BLAST/PSI-BLAST, que mejora las herramientas de búsqueda actuales en toda la gama de compensaciones de sensibilidad a la velocidad, logrando sensibilidades mejores que PSI-BLAST a más de 400 veces su velocidad. [28]

Se han sugerido enfoques de computación óptica como alternativas prometedoras a las implementaciones eléctricas actuales. OptCAM es un ejemplo de tales enfoques y ha demostrado ser más rápido que BLAST. [29]

Comparación de BLAST y el proceso Smith-Waterman

Si bien tanto Smith-Waterman como BLAST se utilizan para encontrar secuencias homólogas buscando y comparando una secuencia de consulta con las de las bases de datos, tienen sus diferencias.

Debido a que BLAST se basa en un algoritmo heurístico, los resultados recibidos a través de BLAST no incluirán todos los resultados posibles dentro de la base de datos. BLAST pierde coincidencias difíciles de encontrar.

Una alternativa para encontrar todos los aciertos posibles sería utilizar el algoritmo de Smith-Waterman. Este método difiere del método BLAST en dos áreas: precisión y velocidad. La opción Smith-Waterman proporciona una mayor precisión, ya que encuentra coincidencias que BLAST no puede, porque no excluye ninguna información. Por tanto, es necesaria la homología remota. Sin embargo, en comparación con BLAST, requiere más tiempo y grandes cantidades de potencia informática y memoria. Sin embargo, se han logrado avances para acelerar drásticamente el proceso de búsqueda de Smith-Waterman. Estos avances incluyen chips FPGA y tecnología SIMD .

Para obtener resultados más completos de BLAST, la configuración se puede cambiar desde su configuración predeterminada. Sin embargo, la configuración óptima para una secuencia determinada puede variar. Las configuraciones que se pueden cambiar son E-Value, costos de brecha, filtros, tamaño de palabra y matriz de sustitución.

Tenga en cuenta que el algoritmo utilizado para BLAST se desarrolló a partir del algoritmo utilizado para Smith-Waterman. BLAST emplea una alineación que encuentra "alineaciones locales entre secuencias mediante la búsqueda de coincidencias cortas y a partir de estas coincidencias iniciales se crean alineaciones (locales)". [30]

Visualización de salida BLAST

Para ayudar a los usuarios a interpretar los resultados de BLAST, hay diferentes programas disponibles. Según instalación y uso, características de análisis y tecnología, aquí se muestran algunas herramientas disponibles: [31]

En las Figuras 4 y 5 se muestran ejemplos de visualizaciones de resultados de BLAST.

Fig. 4 Visualización estilo Circos de los resultados de BLAST generados con el software SequenceServer.
Fig. 5 Distribución de longitud de los resultados BLAST generados utilizando el software SequenceServer que muestra que la consulta (un producto genético predicho) es más larga en comparación con secuencias de bases de datos similares.

Usos de BLAST

BLAST se puede utilizar para varios propósitos. Estos incluyen identificar especies, localizar dominios, establecer filogenia, mapeo de ADN y comparación.

Identificando especies
Con el uso de BLAST, es posible identificar correctamente una especie o encontrar especies homólogas. Esto puede resultar útil, por ejemplo, cuando se trabaja con una secuencia de ADN de una especie desconocida.
Localizando dominios
Cuando trabaje con una secuencia de proteínas, puede ingresarla en BLAST para ubicar dominios conocidos dentro de la secuencia de interés.
Estableciendo la filogenia
Utilizando los resultados recibidos a través de BLAST, puede crear un árbol filogenético utilizando la página web de BLAST. Las filogenias basadas únicamente en BLAST son menos confiables que otros métodos filogenéticos computacionales especialmente diseñados , por lo que solo se debe confiar en ellas para análisis filogenéticos de "primer paso".
mapeo de ADN
Cuando se trabaja con una especie conocida y se busca secuenciar un gen en una ubicación desconocida, BLAST puede comparar la posición cromosómica de la secuencia de interés con secuencias relevantes en las bases de datos. NCBI tiene una herramienta "Magic-BLAST" construida alrededor de BLAST para este propósito. [32]
Comparación
Cuando se trabaja con genes, BLAST puede localizar genes comunes en dos especies relacionadas y puede usarse para mapear anotaciones de un organismo a otro.

Ver también

Referencias

  1. ^ Notas de la versión BLAST. Centro Nacional de Información Biotecnológica (EE.UU.). 24 de octubre de 2023.
  2. ^ "Información para desarrolladores de BLAST". blast.ncbi.nlm.nih.gov .
  3. ^ abc Douglas Martin (21 de febrero de 2008). "Samuel Karlin, matemático versátil, muere a los 83 años". Los New York Times .
  4. ^ RM Casey (2005). "Las secuencias BLAST ayudan en genómica y proteómica". Red de Inteligencia Empresarial.
  5. ^ Lipman, DJ ; Pearson, WR (1985). "Búsquedas rápidas y sensibles de similitud de proteínas". Ciencia . 227 (4693): 1435–41. Código bibliográfico : 1985 Ciencia... 227.1435L. doi : 10.1126/ciencia.2983426. PMID  2983426.
  6. ^ "Temas EXPLOSIVOS".
  7. ^ Dan Stober (16 de enero de 2008). "Sam Karlin, matemático que mejoró el análisis de ADN, muere a los 83 años". Stanford.edu . Archivado desde el original el 12 de junio de 2016 . Consultado el 16 de julio de 2019 .
  8. ^ ab Stephen Altschul ; Warren Gish ; Webb Miller ; Eugenio Myers ; David J. Lipman (1990). "Herramienta básica de búsqueda de alineación local". Revista de biología molecular . 215 (3): 403–410. doi :10.1016/S0022-2836(05)80360-2. PMID  2231712. S2CID  14441902.
  9. ^ Ohmen, C.; Nieplocha, J. (2006). "ScalaBLAST: una implementación escalable de BLAST para análisis bioinformático con uso intensivo de datos de alto rendimiento". Transacciones IEEE en sistemas paralelos y distribuidos . 17 (8): 740. doi :10.1109/TPDS.2006.112. S2CID  11122366.
  10. ^ Ohmen, CS; Baxter, DJ (2013). "ScalaBLAST 2.0: Cálculos BLAST rápidos y robustos en sistemas multiprocesador". Bioinformática . 29 (6): 797–798. doi : 10.1093/bioinformática/btt013. PMC 3597145 . PMID  23361326. 
  11. ^ "Sentido de las secuencias: Stephen F. Altschul sobre cómo mejorar BLAST". Reloj científico. Julio-agosto de 2000. Archivado desde el original el 7 de octubre de 2007.
  12. ^ Steven Henikoff ; Jorja Henikoff (1992). "Matrices de sustitución de aminoácidos de bloques de proteínas". PNAS . 89 (22): 10915–10919. Código bibliográfico : 1992PNAS...8910915H. doi : 10.1073/pnas.89.22.10915 . PMC 50453 . PMID  1438297. 
  13. ^ Monte, DW (2004). Bioinformática: análisis de secuencia y genoma (2ª ed.). Prensa de Cold Spring Harbor. ISBN 978-0-87969-712-9.
  14. ^ Adaptado de Análisis de secuencia biológica I, Temas actuales en el análisis del genoma [1].
  15. ^ Yim, baño; Cushman, JC (2017). "Divide and Conquer (DC) BLAST: ejecución BLAST rápida y sencilla en entornos HPC". PeerJ . 5 : e3486. doi : 10.7717/peerj.3486 . PMC 5483034 . PMID  28652936. 
  16. ^ "Tablas de selección de programas del sitio web de Blast NCBI".
  17. ^ "¿Qué programa BLAST debo utilizar?". recursos.qiagenbioinformatics.com . Consultado el 18 de enero de 2022 .
  18. ^ Camacho, C.; Coulouris, G.; Avagyan, V.; Hombre.; Papadopoulos, J.; Bealer, K.; Enloquecer, TL (2009). "BLAST+: Arquitectura y aplicaciones". Bioinformática BMC . 10 : 421. doi : 10.1186/1471-2105-10-421 . PMC 2803857 . PMID  20003500. 
  19. ^ Vouzis, PD; Sahinidis, Nevada (2010). "GPU-BLAST: uso de procesadores gráficos para acelerar la alineación de secuencias de proteínas". Bioinformática . 27 (2): 182–8. doi : 10.1093/bioinformática/btq644. PMC 3018811 . PMID  21088027. 
  20. ^ Liu W, Schmidt B, Müller-Wittig W (2011). "CUDA-BLASTP: aceleración de BLASTP en hardware de gráficos habilitado para CUDA". IEEE/ACM Trans Comput Biol Bioinform . 8 (6): 1678–84. doi :10.1109/TCBB.2011.33. PMID  21339531. S2CID  18221547.
  21. ^ Zhao K, Chu X (mayo de 2014). "G-BLASTN: aceleración de la alineación de nucleótidos mediante procesadores gráficos". Bioinformática . 30 (10): 1384–91. doi : 10.1093/bioinformática/btu047 . PMID  24463183.
  22. ^ Loh PR, Baym M, Berger B (julio de 2012). "Genómica compresiva". Nat. Biotecnología . 30 (7): 627–30. doi : 10.1038/nbt.2241 . PMID  22781691.
  23. ^ Enloquecer, Tom; Boratyn, Greg (2017). "QuickBLASTP: alineaciones de proteínas más rápidas" (PDF) . Actas del Festival de Investigación de los NIH . Consultado el 16 de mayo de 2019 .página abstracta
  24. ^ Kent, W. James (1 de abril de 2002). "BLAT: la herramienta de alineación tipo BLAST". Investigación del genoma . 12 (4): 656–664. doi :10.1101/gr.229202. ISSN  1088-9051. PMC 187518 . PMID  11932250. 
  25. ^ Lavandería, D.; Lavanier, Dominique (2009). "PLAST: herramienta de búsqueda de alineación local paralela para comparación de bases de datos". Bioinformática BMC . 10 : 329. doi : 10.1186/1471-2105-10-329 . PMC 2770072 . PMID  19821978. 
  26. ^ Lavander, D. (2009). "Algoritmo de semilla de índice ordenado para comparación intensiva de secuencias de ADN" (PDF) . Simposio internacional IEEE de 2008 sobre procesamiento distribuido y paralelo (PDF) . págs. 1–8. CiteSeerX 10.1.1.155.3633 . doi :10.1109/IPDPS.2008.4536172. ISBN  978-1-4244-1693-6. S2CID  10804289.
  27. ^ Buchfink, Xie y Huson (2015). "Alineación de proteínas rápida y sensible con DIAMOND". Métodos de la naturaleza . 12 (1): 59–60. doi :10.1038/nmeth.3176. PMID  25402007. S2CID  5346781.
  28. ^ Steinegger, Martín; Soeding, Johannes (16 de octubre de 2017). "MMseqs2 permite la búsqueda de secuencias de proteínas sensibles para el análisis de conjuntos de datos masivos". Biotecnología de la Naturaleza . 35 (11): 1026–1028. doi :10.1038/nbt.3988. hdl : 11858/00-001M-0000-002E-1967-3 . PMID  29035372. S2CID  402352.
  29. ^ Maleki, Ehsan; Koohi, Somayyeh; Kavehvash, Zahra; Mashaghi, Alireza (2020). "OptCAM: una arquitectura totalmente óptica ultrarrápida para el descubrimiento de variantes de ADN". Revista de Biofotónica . 13 (1): e201900227. doi : 10.1002/jbio.201900227 . PMID  31397961.
  30. ^ "Explicación de la bioinformática: BLAST versus Smith-Waterman" (PDF) . 4 de julio de 2007.
  31. ^ Neumann, Kumar y Shalchian-Tabrizi (2014). "Visualización de resultados BLAST en la nueva era de la secuenciación". Sesiones informativas en Bioinformática . 15 (4): 484–503. doi : 10.1093/bib/bbt009 . PMID  23603091.
  32. ^ "NCBI Magic-BLAST". ncbi.github.io . Consultado el 16 de mayo de 2019 .

enlaces externos