HMMER

Pblicado originalmente por CLC bio bajo licencia Creative Commons. Traducido por Germán González

La búsqueda en bases de datos es ampliamente utilizada en bioinformática y hay un gran número de diferentes maneras de buscar en, por ejemplo, bases de datos de proteínas. Los algoritmos de alineamiento como BLAST [Altschul et al., 1990] ySmith-Waterman [Smith and Waterman, 1981] comparan dos secuencias y determinan sus similitudes asociando un único puntaje para cada sustitución de un aminoácido con otro usando matrices de sustitución y puntajes de penalidad por gap. Este tipo de comparaciones de pares basadas en secuencias calculan la similitud entre dos secuencias para identificar coincidencias significativas. Cuando dos secuencias son consideradas similares a un nivel significativo, significa que comparten propiedades biológicas como un origen evolutivo común, una estructura molecular similar y una función similar.

Como las posiciones específicas y los aminoácidos específicos pueden no tener los mismo patrones de conservación en diferentes contextos, comparar las secuencias de proteínas usando las matrices estándares de sustitución es un forma muy simplista de buscar similitudes, y puede ser mejor buscar similitudes de familia o de dominio en lugar de buscar similitudes de secuencia. Puede ser más beneficioso buscar similitudes usando puntajes de sustitución que reflejen las frecuencias de posiciones individuales de aminoácidos de muchas secuencias en un dominio, en lugar de usar los puntajes de sustitución estándares que reflejan solo la sustitución de un aminoácido por otro, uno por uno a lo largo de las secuencias buscadas.

Perfil de modelos ocultos de Markov (profile HMMs)

“Un modelo oculto de Markov describe una distribución de probabilidad sobre un número de secuencias potencialmente infinito” [Eddy, 1998]. Se puede decir que el HMM es un modelo generador de secuencias.

El perfil HMM mejora la búsqueda de secuencias relacionadas de forma distante al convertir un alineamiento múltiple de secuencias en un sistema de puntaje de posiciones específicas basado en probabilidad [Eddy, 1998].

Un perfil HMM contiene estados para coincidencia, inserción o eliminación que son usados para modelar una familia de secuencias. Cada estado en el modelo tiene distribuciones de probabilidad y cada transición tiene una probabilidad. Entonces, si tienes un aminoácido comúnmente representado en una posición particular en el alineamiento múltiple de secuencias, este obtiene un puntaje más alto. También existe la posibilidad de asignar puntajes a las inserciones o eliminaciones en posiciones específicas. Una secuencia es comparada al modelo asignando los residuos a los estados en el HMM. El puntaje resultante es la probabilidad de que la secuencia esté relacionada con el modelo dado y la probabilidad es usada para encontrar un valor-e (e-value) para la coincidencia.

Los HMM fueron introducidos en el campo de la biología computacional a fines de los ’80, y la utilización de HMM como modelos de perfil fue introducida por Krogh et al. [Krogh et al., 1994] a mediados de los ’90 [Eddy, 1998]. Algunos ejemplos del uso de HMM en el campo de la biología son el descubrimiento de genes, el mapeo de ligamientos genéticos y la predicción de estructura secundaria.

La idea de usar perfiles HMM para la búsqueda en bases de datos es comparar una secuencia con un modelo estadístico que describe un familia o patrón de secuencias al contrario de la simple comparación de aminoácidos individuales de dos secuencias. Comparando una secuencia a un modelo estadístico puedes obtener información extra. Por ejemplo:
• Algunos sitios pueden estar conservados para residuos específicos mientras que otros sitios presentan considerables variaciones
• Algunos sitios pueden ser eliminados sin afectar la funcionalidad mientras que otros sitios no
• Las inserciones pueden ser aceptables en algunos sitios pero no en otros

Basándose en esta información, puede ser más fácil ver si una secuencia específica y una familia están relacionados. Las relaciones distantes entre las secuencias también son más proclives a ser identificadas cuando se utilizan modelos estadísticos en lugar de matrices de sustitución estándar.

Base de datos Pfam

Las bibliotecas de perfiles HMM son necesarias para buscar en una secuencia de consulta dominios conocidos y la relación de la secuencia con una familia de proteínas que comparte, por ejemplo, la funcionalidad. Una de las bibliotecas más detalladas de perfiles HMM es la base de datos Pfam (base de datos de familia de proteína) que está disponible públicamente.

La base de datos Pfam consiste en un alineamiento múltiple para cada familia de proteínas que se ha utilizado como la base para construir un perfil HMM. Los investigadores en el Sanger Center han hecho pública esta colección [Bateman et al., 2002], y la base de datos representa actualmente 9318 familias de proteínas, que abarcan el 74% de proteínas (julio de 2007) [PFAM,].

Figura 1: Una parte de un alineamiento de la familia globina tomado del sitio web de Pfam

Pfam es una clasificación de familias de proteínas de acuerdo a las familias, dominios, repeticiones y motivos. Una familia es la clase predeterminada de proteínas relacionadas entre sí. Las familias en Pfam son representadas por una semilla, que contiene un número representativo de miembros de familia, y un alineamiento completo que contiene todos los miembros de la familia. Los alineamientos completos de familias pueden contener hasta 2500 secuencias. Los dominios representan elementos de la estructura o secuencia que pueden ser identificados y tener relevancia en diferentes contextos proteicos. Las repeticiones y los motivos describen partes cortas de la secuencia [Bateman et al., 2002].

La base de datos Pfam se presenta en dos variantes, Pfam-A y Pfam-B. Pfam-A es una base de datos bien anotada, que es curada a mano y, por lo tanto, contiene datos de alta calidad. Pfam-B es una base de datos generada automáticamente y de menor calidad. Pfam-B tiene por objeto incorporar dominios que aún no están representados en Pfam-A [PFAM,].

Ambas bases de datos están disponibles en dos variantes: una base de datos de fragmentos (fs), que permite coincidencias parciales con un dominio a encontrar, por ejemplo, la identificación de una coincidencia con la mitad de un dominio de globina, y una base de datos de dominios completos (ls) que sólo permite coincidencias con dominios completos. La base de datos de dominios completos es más específica que la base de datos de fragmentos y sólo se basa en modelos globales de HMMs [Bateman et al., 2002]. Se puede acceder a la base de datos Pfam desde pfam.sanger.ac.uk
(Reino Unido) o pfam.wust1.edu (EE. UU.).

Paquete HMMER

Hay varias implementaciones de software que usan perfiles HMM en biología computacional, una de las más populares es HMMER [Eddy, 2003].

HMMER es un implementación de perfiles HMM para el análisis de secuencias biológicas. Una secuencia se compara con un perfil HMM mediante la asignación de la secuencia de residuos a los estados en los HMM, y el puntaje resultante es una probabilidad de que la secuencia esté relacionada con el modelo dado. Los valores-e para la coincidencia se encuentran utilizando la probabilidad de la secuencia en comparación con un modelo.

La implementación del perfiles HMM en el paquete HMMER contiene programas para la construcción y el uso de matrices de puntaje de posición específica. HMMER fue escrito por Sean Eddy y colegas y fue lanzado por primera vez en 1995 [Eddy, 2003]. Se puede acceder al paquete HMMER desde hmmer.janelia.org.

Programas en HMMER

Actualmente, el paquete HMMER contiene nueve programas. Dos de estos son programas para buscar en bases de datos:
• hmmpfam Busca coincidencias para una secuencia de consulta dentro de una base de datos de HMM
• hmmsearch Busca coincidencias para un único perfil HMM dentro de una base de datos de secuencias

Los otros programas incluidos en el paquete son:
• hmmalign Alinea secuencias a un modelo existente
• hmmbuild Construye un modelo a partir de un alineamiento múltiple de secuencias
• hmmcalibrate Toma un HMM y determina empíricamente los parámetros que son utilizados para realizar búsquedas más sensibles, calculando puntajes de valor esperado (valor-e) más precisos.
• hmmconvert Convierte un archivo de modelo a diferentes formatos, incluyendo un formato binario compacto HMMER 2, y la emulación de “mejor esfuerzo” de perfiles GCG.
• hmmemit Emite secuencias de un perfil HMM probabilísticamente.
• hmmfetch Obtiene un único modelo de una base de datos HMM.
• hmmindex Indexa una base de datos HMM.

[Eddy, 2003]
Normalmente cuando un investigador utiliza una base de datos Pfam sólo tienen que utilizar los dos programas de búsqueda ya que la base de datos ya ha sido construida. Los investigadores que tratan de construir su propio perfil HMM deben utilizar los programas hmmalign, hmmbuild y hmmcalibrate.

Ejemplos del uso de HMMER

Esta sección da algunos ejemplos de cómo usar los dos programas de búsqueda en bases de datos, hmmpfam y hmmsearch.

La proteína leghemoglobina es una globina de plantas que se une al oxígeno y un miembro de la familia de las globinas. El primer ejemplo de hmmpfam muestra como la leghemoglobina 1 de un poroto (número de acceso de Swiss-Prot P02232 lgb1_vicfa) es reconocida como relacionada a una familia. El hmmsearch muestra si cualquier secuencia en una base de datos dada coincide con un HMM, una familia de proteínas. En el segundo ejemplo, se usa hmmsearch para identificar miembros de la familia de proteínas globina entre 1000 secuencias de Swiss-Prot.

hmmpfam La versión de línea de comandos de hmmpfam requiere dos parámetros, el primero es archivo de la base de datos de perfiles HMM y el segundo es un archivo con una o más secuencias. hmmpfam acepta un cierto número de parámetros, principalmente para ajustar los truncamientos por calidad de coincidencias que se desean presentar.

Aquí está la ejecución del ejemplo (no todos los resultados se muestra, véase el apéndice en el artículo original para la la salida completa):

La secuencia de consulta en la búsqueda de coincidencias en la base de datos Pfam es Leghemoglobina 1 de un poroto.

La salida comienza con alguna información general y luego sigue con los resultados para cada secuencia, una por vez (a menudo solo una secuencia). Los resultados muestran una tabla con una lista de perfiles HMM que coinciden con la secuencia e información acerca de la calidad de la coincidencia. El valor-e es similar al valor-e que BLAST informa, es decir, es el número de coincidencias de calidad similar que se espera que ocurran en una base de datos aleatoria del mismo tamaño.

También obtienes una tabla que describe las coincidencias de dominios individuales, incluida la información acerca de que parte de la secuencia coincide con que parte del perfil HMM. Esto se muestra en la salida completa que se encuentra en el apéndice.

Por último, se presentan los alineamientos de dominios individuales. El perfil HMM está representado por la línea superior en el alineamiento. Cada letra representa el residuos más probable de cada estado en el HMM utilizado en la comparación. Las letras mayúsculas indican que el residuo está muy conservados en ese estado.
Arriba se muestra el alineamiento del dominio de mayor puntaje en la búsqueda hmmpfam.

La conclusión de esta búsqueda es que la leghemoglobina es definitivamente una globina. Mirando los valores-e, no hay otros dominios Pfam que coincidan bien con la secuencia (el modelo de globina es el único que coincide con un valor-e inferior a 1).

Fíjese cómo se utiliza una versión binaria de la base de datos Pfam. Esto reduce la cantidad de tiempo gastado en la lectura del disco, ya que el formato de base de datos binarios es más compacto que el formato de texto.
Un archivo de base de datos HMM puede convertirse a binario utilizando el programa hmmconvert:

localhost :~… hmmer% hmmconvert-b Pfam_fs Pfam_fs.bin

hmmsearch La ejecución del programa hmmsearch se hace en gran medida de la misma manera que hmmpfam. La gran diferencia es que el archivo HMM debe contener un único perfil HMM y el archivo de secuencia es (por lo general) una base de datos importante donde se busca el HMM. En la base de datos de secuencias se buscan coincidencias con un HMM.

Otra vez, el primer argumento es el archive HMM y el segundo argumento es el archivo de la base de datos de secuencias. Aquí está una comparación de un HMM de globina con un archivo de 1000 secuencias elegidas al azar de Swiss-Prot:

hmmsearch soporta muchos de los mismos parámetros que hmmpfam, principalmente para ajustar los límites de significancia de los hits que se presentarán. En este ejemplo, ninguno de estos parámetros se establecen.
Este es un resumen de la hmmsearch (véase el apéndice del artículo original para la versión completa)

Otra vez, la salida comienza con alguna información de caracter general, y luego viene una tabla de secuencias que coinciden con el HMM. Esta es seguida por una tabla de las coincidencias de dominios y los alineamientos de las coincidencias reales (vea el apéndice).

La conclusión de esta hmmsearch es que cuatro de las secuencias son definitivamente globinas (los valores-e son menores a 4.1e-07), mientras que las mientras que el resto de las secuencias comparadas no son muy convincentes, ya que tienen asignados valores-e superiores a 1.

Implementaciones y aceleraciones de HMMER

Se puede acceder al paquete HMMER desde http://hmmer.janelia.org. Como los algoritmos de perfiles HMM son computacionalmente demandantes, están también disponibles diferntes implementaciones de software y hardware que aceleran las búsquedas HMM. Un ejemplo es CLC Bioinformatics Cell que acelera los programas HMMER hmmpfam y hmmsearch usando la tecnología SIMD (single instructions multiple data) [CLC bio, 2007].

References

[Altschul et al., 1990] Altschul, S. F., Gish, W., Miller, W., Myers, E. W., and Lipman, D. J.(1990). Basic local alignment search tool. J Mol Biol, 215(3):403–410.
[Bateman et al., 2002] Bateman, A., Birney, E., Cerruti, L., Durbin, R., Etwiller, L., Eddy, S. R., Griffiths-Jones, S., Howe, K. L., Marshall, M., and Sonnhammer, E. L. L. (2002). The pfam protein families database. Nucleic Acids Res, 30(1):276–280.
[Baxevanis and Ouellette, 2001] Baxevanis, A. and Ouellette, B. (2001). Bioinformatics. Wiley-Interscience.
[CLC bio, 2007] CLC bio (2007). CLC Bioinformatics Cell white paper.
[Eddy, 1998] Eddy, S. (1998). Profile hidden Markov models. Bioinformatics, 14:755–763.
[Eddy, 2003] Eddy, S. (2003). The HMMER User’s Guide (biological sequence analysis using profile hidden Markov models). Howard Hughes Medical Institute and Dept. of Genetics Washington University School of Medicine, 660 South Euclid Avenue, Box 8232 Saint Louis, Missouri 63110, USA, vesion 2.3.2 edition. hmmer.wustl.edu.
[Krogh et al., 1994] Krogh, A., Brown, M., Mian, I. S., Sjölander, K., and Haussler, D. (1994). Hidden markov models in computational biology. applications to protein modeling. J Mol Biol, 235(5):1501–1531.
[PFAM,] PFAM. pfma.sanger.ac.uk.
[Smith and Waterman, 1981] Smith, T. F. and Waterman, M. S. (1981). Identification of common molecular subsequences. J Mol Biol, 147(1):195–197.

 

Licencia Creative Commons

Todos los artículos científicos de CLC bio están licenciados bajo la Licencia Reconocimiento-No comercial-Sin obra derivada 2.5. Eres libre para copiar, distribuir, mostrar y usar el trabajo con fines educativos, bajo las siguientes condiciones: debes reconocer el trabajo en su forma original y “CLC bio” debe estar claramente señalado como el autor y proveedor del trabajo. No puede utilizar esta obra para fines comerciales. Usted no puede alterar, transformar o basarse en este trabajo.

Ver CreativeCommons.org para más información sobre como puede utilizar estos contenidos.

 

Comentarios