HMMER es un paquete de software gratuito y de uso común para análisis de secuencias escrito por Sean Eddy . [2] Su uso general es identificar secuencias de nucleótidos o proteínas homólogas y realizar alineamientos de secuencias. Detecta homología comparando un perfil-HMM (un modelo oculto de Markov construido explícitamente para una búsqueda particular) con una secuencia única o una base de datos de secuencias. Las secuencias que obtienen una puntuación significativamente mejor en el perfil-HMM en comparación con un modelo nulo se consideran homólogas a las secuencias que se utilizaron para construir el perfil-HMM. Los Profile-HMM se construyen a partir de una alineación de secuencias múltiples en el paquete HMMER utilizando el programa hmmbuild . La implementación del perfil HMM utilizada en el software HMMER se basó en el trabajo de Krogh y sus colegas. [3] HMMER es una utilidad de consola adaptada a todos los principales sistemas operativos , incluidas diferentes versiones de Linux , Windows y macOS .
HMMER es la utilidad principal en la que se basan las bases de datos de familias de proteínas como Pfam e InterPro . Algunas otras herramientas bioinformáticas como UGENE también utilizan HMMER.
HMMER3 también hace un uso extensivo de instrucciones vectoriales para aumentar la velocidad computacional. Este trabajo se basa en una publicación anterior que muestra una aceleración significativa del algoritmo de Smith-Waterman para alinear dos secuencias. [4]
Un HMM de perfil es una variante de un HMM relacionado específicamente con secuencias biológicas. Los HMM de perfil convierten una alineación de secuencias múltiples en un sistema de puntuación de posición específica, que se puede utilizar para alinear secuencias y buscar en bases de datos secuencias remotamente homólogas. [5] Aprovechan el hecho de que ciertas posiciones en una alineación de secuencia tienden a tener sesgos en los que es más probable que se produzcan residuos y es probable que difieran en su probabilidad de contener una inserción o una eliminación. La captura de esta información les brinda una mejor capacidad para detectar verdaderos homólogos que los enfoques tradicionales basados en BLAST , que penalizan las sustituciones, inserciones y eliminaciones por igual, independientemente de en qué parte de una alineación ocurran. [6]
Los HMM de perfil se centran alrededor de un conjunto lineal de estados de coincidencia (M), con un estado correspondiente a cada columna de consenso en una alineación de secuencia. Cada estado M emite un único residuo (aminoácido o nucleótido). La probabilidad de emitir un residuo particular está determinada en gran medida por la frecuencia con la que se ha observado ese residuo en esa columna del alineamiento, pero también incorpora información previa sobre patrones de residuos que tienden a coexistir en las mismas columnas de alineamientos de secuencia. Esta cadena de estados de coincidencia que emiten aminoácidos a frecuencias particulares es análoga a matrices de puntuación o matrices de peso específicas de posición. [5]
Un perfil HMM lleva este modelado de alineamientos de secuencias más allá al modelar inserciones y eliminaciones, utilizando estados I y D, respectivamente. Los estados D no emiten residuos, mientras que los estados I sí emiten residuos. Pueden ocurrir múltiples estados I consecutivamente, correspondientes a múltiples residuos entre columnas de consenso en una alineación. Los estados M, I y D están conectados por probabilidades de transición de estado, que también varían según la posición en el alineamiento de secuencia, para reflejar las diferentes frecuencias de inserciones y eliminaciones entre los alineamientos de secuencia. [5]
Las versiones HMMER2 y HMMER3 utilizaron una arquitectura para construir HMM de perfil llamada arquitectura Plan 7, que lleva el nombre de los siete estados capturados por el modelo. Además de los tres estados principales (M, I y D), seis estados adicionales capturan una secuencia flanqueante no homóloga en la alineación. Estos 6 estados en conjunto son importantes para controlar cómo se alinean las secuencias con el modelo, por ejemplo, si una secuencia puede tener múltiples accesos consecutivos al mismo modelo (en el caso de secuencias con múltiples instancias del mismo dominio). [7]
El paquete HMMER consta de una colección de programas para realizar funciones utilizando modelos de Markov de perfil oculto. [8] Los programas incluyen:
El paquete contiene muchas otras funciones especializadas.
Además del paquete de software, la función de búsqueda HMMER está disponible en forma de servidor web. [9] El servicio facilita las búsquedas en una variedad de bases de datos, incluidas bases de datos de secuencias como UniProt , SwissProt y Protein Data Bank , y bases de datos HMM como Pfam , TIGRFAMs y SUPERFAMILY . Se admiten los cuatro tipos de búsqueda phmmer, hmmsearch, hmmscan y jackhmmer (ver Programas). La función de búsqueda acepta secuencias individuales, así como alineaciones de secuencias o HMM de perfil. [10]
Los resultados de la búsqueda van acompañados de un informe sobre el desglose taxonómico y la organización del dominio de las coincidencias. Los resultados de la búsqueda se pueden filtrar según cualquiera de los parámetros.
El servicio web se gestiona actualmente desde el Instituto Europeo de Bioinformática (EBI) en el Reino Unido, mientras que el equipo de Sean Eddy todavía realiza el desarrollo del algoritmo en los Estados Unidos. [9] Las principales razones para reubicar el servicio web fueron aprovechar la infraestructura informática de la EBI y vincular las búsquedas de HMMER con bases de datos relevantes que también mantiene la EBI.
La última versión estable de HMMER es la versión 3.0. HMMER3 es una reescritura completa del paquete HMMER2 anterior, con el objetivo de mejorar la velocidad de las búsquedas de perfiles HMM. Los principales cambios se describen a continuación:
Uno de los principales objetivos del proyecto HMMER3, iniciado en 2004, era mejorar la velocidad de las búsquedas HMMER. Si bien las búsquedas de homología basadas en HMM de perfil fueron más precisas que los enfoques basados en BLAST, su velocidad más lenta limitó su aplicabilidad. [8] La principal ganancia de rendimiento se debe a un filtro heurístico que encuentra coincidencias sin brechas de alta puntuación dentro de secuencias de bases de datos con un perfil de consulta. Esta heurística da como resultado un tiempo de cálculo comparable al de BLAST con poco impacto en la precisión. Otras mejoras en el rendimiento se deben a un modelo de probabilidad logarítmica que no requiere calibración para estimar los valores E y permite utilizar puntuaciones directas más precisas para calcular la importancia de una secuencia homóloga . [11] [6]
HMMER todavía está por detrás de BLAST en velocidad de búsquedas basadas en ADN; sin embargo, las búsquedas basadas en ADN se pueden ajustar de modo que una mejora en la velocidad se produzca a expensas de la precisión. [12]
El mayor avance en velocidad fue posible gracias al desarrollo de un enfoque para calcular la importancia de los resultados integrados en una variedad de alineamientos posibles. [11] Al descubrir homólogos remotos, las alineaciones entre las proteínas de consulta y de impacto suelen ser muy inciertas. Si bien la mayoría de las herramientas de alineación de secuencias calculan las puntuaciones de coincidencia utilizando solo la mejor alineación de puntuación, HMMER3 calcula las puntuaciones de coincidencia integrando todas las alineaciones posibles, para tener en cuenta la incertidumbre sobre cuál alineación es mejor. Las alineaciones de secuencias HMMER van acompañadas de anotaciones de probabilidad posterior, que indican a qué partes de la alineación se les ha asignado alta confianza y cuáles son más inciertas.
Una mejora importante en HMMER3 fue la inclusión de herramientas de comparación ADN/ADN. HMMER2 solo tenía funcionalidad para comparar secuencias de proteínas.
Mientras que HMMER2 podría realizar una alineación local (alinear un modelo completo con una subsecuencia del objetivo) y una alineación global (alinear un modelo completo con una secuencia objetivo completa), HMMER3 solo realiza una alineación local. Esta restricción se debe a la dificultad para calcular la importancia de los aciertos al realizar alineamientos locales/globales utilizando el nuevo algoritmo.
Se encuentran disponibles varias implementaciones de métodos HMM de perfil y métodos matriciales de puntuación específicos de la posición relacionados. Algunos se enumeran a continuación: