Patrones, perfiles y dominios.
Parte teórica

Federico Abascal



 
 
 



 
Limitación de los métodos de comparación entre pares de secuencias
 
Los métodos como BLAST son muy útiles como un primer paso en el análisis de secuencias, por dos razones: porque generalmente un análisis de este tipo lo comenzamos con una sola secuencia y porque son muy rápidos. Sin embargo tienen serias limitaciones para encontrar homólogos remotos, que son aquéllos que comparten un mismo origen evolutivo pero que han divergido mucho y su identidad de secuencia está por debajo del ~25% (es un porcentaje aproximado, en realidad depende de cada caso). Tales porcentajes de identidad aparecen por azar en las enormes bases de datos y por eso no son distinguibles las homologías.  Es decir, los métodos de comparación entre pares de secuencias (como BLAST) nos dicen poco acerca de la historia evolutiva de las proteínas.
¿Por qué tienen esa limitación? Estos métodos de comparación de pares de secuencias determinan las puntuaciones (scores) entre dos secuencias a partir de matrices de substitución generales, como por ejemplo BLOSUM62, en las que se establecen cuáles son los aminoácidos que menos varían, qué mutaciones son las más frecuentes, etcétera. Sin embargo ésa es una aproximación limitada ya que las distintas posiciones de las secuencias tienen mayor o menor importancia dependiendo de su relación con la función: p.e., los aminoácidos de los centros activos de las enzimas varían menos (los cambios en ellos frecuentemente son seleccionados negativamente y no pasan a la siguiente generación). Por otra parte, en una determinada posición de la proteína se tolerarán de forma distinta las posibles sustituciones, pero las matrices del tipo de BLOSUM son generales y no tienen en cuenta las particularidades de cada familia de proteínas.
 

Por ejemplo, si dos proteínas se parecen en un 15 o un 20% de su secuencia (es decir, sólo coinciden en uno de cada 5 ó 6 aminoácidos) no sabremos si son homólogas, pero si resulta que este parecido se concentra en los residuos funcionales de la proteína (p.e. en el centro activo), la probabilidad de que tengan un origen evolutivo común es mayor. ¿Cómo podemos saber si las identidades se concentran en esos residuos importantes? Es lo que veremos hoy. La fuente principal son los alineamientos múltiples.

Estos aspectos son los que han motivado el surgimiento de métodos de comparación de secuencias (y de búsqueda de homólogos) más sofisticados, entre los que destacamos los patrones, los perfiles y los HMMs (hidden markov models o modelos de Markov ocultos).

En esta clase explicaremos estos métodos y también los recursos que podemos encontrar en la web para utilizarlos. Asimismo, veremos que existen muchas bases de datos que utilizan estos métodos y ofrecen mucha información. En la siguiente clase (Familias de proteínas) hablaremos de las familias de proteínas, del interés que tiene su clasificación y estudio y de cómo los perfiles y otros métodos nos ayudan a identificarlas dentro del océano de secuencias que conocemos.
 

Secuencias consenso y expresiones regulares

Cuando consultamos la literatura referente a estos aspectos que vamos a tratar de las proteínas, encontramos que existe cierta laxitud y, a veces también mal uso, respecto a algunos términos como son "motivo" o "dominio". El segundo, el término dominio, lo introduciremos más adelante.

 
Motivo: si observamos un alineamiento múltiple de proteínas homólogas veremos que algunas columnas varían bastante, mientras que otras están más conservadas. Cuando observamos ciertas columnas cercanas con una alta conservación, es decir, cuando encontramos trocitos de las secuencias que se conservan más que otros y que podrían caracterizar funcionalmente a las proteínas, entonces solemos hablar de MOTIVOS. (ver ejemplo en el alineamiento de más arriba)
Los alineamientos múltiples son la fuente principal para determinar qué partes de la secuencia son más importantes para su función o estructura, y existen diversas aproximaciones para utilizar esta información.

Secuencias consenso:

La aproximación más sencilla y básica para utilizar la ingente información que contiene un alineamiento múltiple es derivar a partir de éste una secuencia consenso, que viene a indicar qué aminoácido es más frecuente en cada posición del alineamiento.
Ejemplo:
AGTVATVSC
AGTSATHAC
IGRCARGSC
IGEMARLAC
IGDYARWSC
.........
IGTVARVSC <= Ejemplo de secuencia consenso
Supuestamente, si ahora buscamos con esta secuencia con un método simple como BLAST, seremos capaces de encontrar más homólogos que si lo hacemos con alguna de las secuencias reales que conforman el alineamiento múltiple.
Esta aproximación desperdicia mucha de la información del alineamiento múltiple, como quedará de manifiesto al estudiar los siguientes métodos. Por ejemplo, seguimos sin saber qué posiciones son más importantes, o por ejemplo, qué variaciones se permiten en determinadas posiciones: en la primera posición vemos que tanto A como I parecen frecuentes, pero sólo se selecciona I. Parece también que la segunda posición, la G, está totalmente conservada, pero en la secuencia consenso nada indica que esa G caracterice mejor a la familia que la I anterior.
Patrones - Expresiones regulares:
Las expresiones regulares se utilizan en muchos ámbitos de la informática. Por ejemplo cuando buscamos archivos "*.txt", estamos buscando todos aquellos que terminen en ".txt". Eso es una expresión regular simple.

Estas expresiones o patrones se pueden utilizar para caracterizar motivos, indicando qué posiciones son más importantes y cuáles pueden variar y qué variaciones pueden sufrir. Primero veremos cómo hablar en el lenguaje de las expresiones regulares.

 
¿Cómo expresarse "regularmente"? (el código usado en PROSITE, una base de datos de motivos)
Así, a partir del alineamiento anterior:
Ejemplo:
AGTVATVSC
AGTSATHAC
IGRCARGSC
IGEMARLAC
IGDYARWSC
.........
IGTVARVSC <= Ejemplo de secuencia consenso
podríamos generar el siguiente patrón:
[AI]-G-X-X-A-[RT]-[SA]-C
 
Cuando construyamos una expresión regular deberemos tener en cuenta determinados aspectos. Una expresión regular ideal permitirá encontrar a todos los homólogos sin incluir a proteínas no relacionadas. Desafortunadamente, esto no siempre es posible.
Se puede intuir fácilmente que la construcción de un patrón no tiene reglas claras: por ejemplo, en la posición 3 en lugar de X podríamos haber puesto [VSCMY]. Consideramos que es mejor poner X en lugar de [VSCMY] porque ésa parece una posición muy variable y posiblemente cuando conozcamos nuevas proteínas de esa familia alguna tendrá allí algún aminoácido distinto de [VSCMY].
Las expresiones regulares han de ser lo más cortas posibles para evitar ese tipo de situaciones, pero han de ser suficientemente largas para que no aparezcan demasiado frecuentemente por azar, es decir, para que sean específicas de la familia. En cuanto a la penúltima posición observamos que hay serinas y alaninas, pero quizás allí también deberíamos poner una X: siempre es una elección complicada y muchas veces hay que seguir el método de ensayo y error, es decir, ir probando y corrigiendo.
Afortunadamente, existen bases de datos como PROSITE donde expertos construyen patrones para los distintos motivos conocidos. Esto lo hacen consultando la bibliografía y analizando alineamientos múltiples. Luego ensayan los patrones sobre Swiss-Prot para estudiar su sensibilidad y especificidad. No está de más saber construirlos, especialmente en aquellos casos en que el patrón que nos interesa no está descrito en PROSITE.
Los patrones que encontramos en prosite se corresponden con centros activos de enzimas, sitios de modificaciones post-traduccionales, sitios de unión de ligandos, etcétera. Ya lo veremos.
La limitación básica de los patrones es la dificultad de definirlos y que son muy estrictos (aunque existen sistemas que pueden buscar con patrones tolerando errores). Básicamente existen dos estados: posiciones importantes y posiciones no importantes (por ejemplo las marcadas como "x"), pero en el mundo real existe una mayor graduación.

 
 

Perfiles

Primeramente definiremos el concepto de dominio, ya que tiene bastante relación con los perfiles, los cuales usualmente cubren una mayor parte de las secuencias que los motivos (se podría decir que los patrones son a los motivos lo que los perfiles a los dominios).

 
Dominio: el concepto de dominio define una unidad estructural independiente en las proteínas. Sin embargo se utiliza con cierta laxitud: por ejemplo, en estudios genéticos de deleción a veces se utiliza como sinónimo de la parte mínima de la secuencia capaz de realizar la función estudiada. En las bases de datos de dominios como PFam, un dominio se suele corresponder con el núcleo del dominio estructural, aquella zona más similar entre todas las proteínas de una familia, aunque no tiene por qué coincidir exactamente con los límites del dominio estructural.
Un perfil es una matriz de sustitución específica para cada posición de la secuencia (position specific scoring matrix). Esta matriz, en lugar de tener como dimensiones 20x20, tiene como dimensiones 20xL, siendo L la longitud del alineamiento múltiple. A partir del alineamiento múltiple se construye dicha matriz teniendo en cuenta la frecuencia de los aminoácidos en cada posición así como sus propiedades físico-químicas (es decir, combina la información del alineamiento múltiple con la información de una matriz del tipo de BLOSUM).
Existen distintos métodos para construir estas matrices. El método clásico es el de Gribskov y colaboradores. Es el método que por ejemplo se emplea en PROSITE (donde además de patrones se utilizan perfiles para describir algunas familias), aunque con algunas modificaciones.

A continuación se muestra un alineamiento múltiple y cómo se construiría el perfil según el método empleado en PROSITE.
 

                  F   K   L   L   S   H   C   L   L   V
                  F   K   A   F   G   Q   T   M   F   Q
                  Y   P   I   V   G   Q   E   L   L   G
                  F   P   V   V   K   E   A   I   L   K
                  F   K   V   L   A   A   V   I   A   D
                  L   E   F   I   S   E   C   I   I   Q
                  F   K   L   L   G   N   V   L   V   C
 

          A     -18 -10  -1  -8   8  -3   3 -10  -2  -8

          C     -22 -33 -18 -18 -22 -26  22 -24 -19  -7
          D     -35   0 -32 -33  -7   6 -17 -34 -31   0
          E     -27  15 -25 -26  -9  23  -9 -24 -23  -1
          F      60 -30  12  14 -26 -29 -15   4  12 -29
          G     -30 -20 -28 -32  28 -14 -23 -33 -27  -5
          H     -13 -12 -25 -25 -16  14 -22 -22 -23 -10
          I       3 -27  21  25 -29 -23  -8  33  19 -23
          K     -26  25 -25 -27  -6   4 -15 -27 -26   0
          L      14 -28  19  27 -27 -20  -9  33  26 -21
          M       3 -15  10  14 -17 -10  -9  25  12 -11
          N     -22  -6 -24 -27   1   8 -15 -24 -24  -4
          P     -30  24 -26 -28 -14 -10 -22 -24 -26 -18
          Q     -32   5 -25 -26  -9  24 -16 -17 -23   7
          R     -18   9 -22 -22 -10   0 -18 -23 -22  -4
          S     -22  -8 -16 -21  11   2  -1 -24 -19  -4
          T     -10 -10  -6  -7  -5  -8   2 -10  -7 -11
          V       0 -25  22  25 -19 -26   6  19  16 -16
          W       9 -25 -18 -19 -25 -27 -34 -20 -17 -28
          Y      34 -18  -1   1 -23 -12 -19   0   0 -18

 

Como se puede apreciar, los pesos para cada aminoácido para cada columna no sólo se corresponden con sus frecuencias, sino también con sus propiedades físico-químicas, ya que se utiliza la información contenida en matrices como BLOSUM62 para completar la información. Por ejemplo, la A (alanina) de la tercera columna recibe una puntuación menor (-1) que la M (metionina) (+10), a pesar de que no haya ninguna metionina. Esto es porque la M es más parecida en sus propiedades a L, I, V y F que la alanina.

Los perfiles también son capaces de incluir información de inserciones y deleciones.

Alineamiento de una secuencia con un perfil:

                            S   E   Q   U   E   N   C   E
                          .   .   .   .   .   .   .   .   .
                       p
                          .   .   .   .   .   .   .   .   .
                       r    \
                          .   . _ . _ .   .   .   .   .   .
                       o                \
                          .   .   .   .   .   .   .   .   .
                       f                    \
                          .   .   .   .   .   .   .   .   .
                       i                      |
                          .   .   .   .   .   .   .   .   .
                       l                        \
                         .   .   .   .   .   .   .   .   .
                       e
                          .   .   .   .   .   .   .   .   .
 

Es similar al alineamiento de dos secuencias, pero no se comparan pares de aminoácidos o posiciones sino que cada aminoácido de la secuencia se compara con cada posición del perfil. Es decir, la puntuación no se obtiene de una matriz como BLOSUM, sino que viene implícita en el perfil con el que estamos alineando nuestra secuencia.

El camino definido mediante las líneas horizontales, verticales y diagonales describe el alineamiento:
 

S E Q U E - N
r - - o f i l
La puntuación del alineamiento se obtiene sumando las puntuaciones que da el perfil para cada posición.
Por ejemplo, para el caso anterior:
                  F   K   L   L   S   H   C   L   L   V
                  F   K   A   F   G   Q   T   M   F   Q
                  Y   P   I   V   G   Q   E   L   L   G
                  F   P   V   V   K   E   A   I   L   K
                  F   K   V   L   A   A   V   I   A   D
                  L   E   F   I   S   E   C   I   I   Q
                  F   K   L   L   G   N   V   L   V   C

          A     -18 -10  -1  -8   8  -3   3 -10  -2  -8
          C     -22 -33 -18 -18 -22 -26  22 -24 -19  -7
          D     -35   0 -32 -33  -7   6 -17 -34 -31   0
          E     -27  15 -25 -26  -9  23  -9 -24 -23  -1
          F      60 -30  12  14 -26 -29 -15   4  12 -29
          G     -30 -20 -28 -32  28 -14 -23 -33 -27  -5
          H     -13 -12 -25 -25 -16  14 -22 -22 -23 -10
          I       3 -27  21  25 -29 -23  -8  33  19 -23
          K     -26  25 -25 -27  -6   4 -15 -27 -26   0
          L      14 -28  19  27 -27 -20  -9  33  26 -21
          M       3 -15  10  14 -17 -10  -9  25  12 -11
          N     -22  -6 -24 -27   1   8 -15 -24 -24  -4
          P     -30  24 -26 -28 -14 -10 -22 -24 -26 -18
          Q     -32   5 -25 -26  -9  24 -16 -17 -23   7
          R     -18   9 -22 -22 -10   0 -18 -23 -22  -4
          S     -22  -8 -16 -21  11   2  -1 -24 -19  -4
          T     -10 -10  -6  -7  -5  -8   2 -10  -7 -11
          V       0 -25  22  25 -19 -26   6  19  16 -16
          W       9 -25 -18 -19 -25 -27 -34 -20 -17 -28
          Y      34 -18  -1   1 -23 -12 -19   0   0 -18

supongamos que queremos alinear la secuencia FKTLGCCLLV:
El mejor alineamiento será:
                  F   K   L   L   S   H   C   L   L   V
                  F   K   A   F   G   Q   T   M   F   Q
                  Y   P   I   V   G   Q   E   L   L   G
                  F   P   V   V   K   E   A   I   L   K
                  F   K   V   L   A   A   V   I   A   D
                  L   E   F   I   S   E   C   I   I   Q
                  F   K   L   L   G   N   V   L   V   C

                 F   K   T   L   G   C   C   L   L   V
Y la puntuación:  60  25 -6   27  28 -26  22  33  26 -16
lo cual suma en total: 173.

Éste es un caso sencillo, sin incluir 'gaps', es decir, sin inserciones ni deleciones.

Cada puntuación tiene un significado estadístico, es decir, se pueden obtener p-values o e-values.

Los perfiles sin embargo son sensibles a determinados problemas. Por ejemplo, si existe un sesgo en la representación de las secuencias del alineamiento, es decir, si hay muchas secuencias demasiado parecidas y sólo unas pocas un poco más divergentes, entonces el perfil dará preferencia a encontrar secuencias del primer tipo. Existen formas de corregir estos sesgos, por ejemplo dando distintos pesos a las secuencias.

Por otra parte, en algunos casos es mejor usar patrones, especialmente cuando queremos describir motivos pequeños en los que no debería haber variaciones, por ejemplo, sabemos que en dicho motivo en la posición x debe haber un glutamato (E) y como tal lo expresamos en la expresión regular. Sin embargo, la flexibilidad del perfil podría tolerar que en esa posición un aspártico (D) obtuviera una puntuación positiva (E y D son muy parecidos en sus propiedades físico-químicas).

La limitación más importante de los perfiles es que el sistema de puntuación que emplean tiene una base estadística pobre.
 

Perfiles HMM

Los modelos de Markov ocultos (HMMs: hidden Markov models) se desarrollaron inicialmente para el reconocimiento automático de voz. Este problema es similar al del reconocimiento de relaciones evolutivas entre las proteínas. Lo que se hacía era fragmentar el mensaje hablado en trocitos (frames) o sonidos aislados (de 10-20 milisegundos). Cada trocito o frame era automáticamente asignado a una de 256 categorías de sonido predefinidas (a la que más se pareciera). El resultado de esto era una cadena o larga secuencia de etiquetas de categorías a partir de las cuales realizar el reconocimiento de voz automático, detectando qué fonemas y qué palabras se han dicho. El problema es que existen grandes variaciones en la pronunciación, también en la duración de las distintas partes de la palabra.

Un HMM se entrena a partir de diversas observaciones en las que esperamos que las posibles variaciones se hayan producido, por ejemplo, para reconocer la palabra "vaca" u "otorrinolaringólogo" se debe entrentar el HMM a partir de muchas muestras de "vaca" y "otorrinolaringólogo", pronunciadas en distintos contextos o por distintas personas. El resultado es una estructura del siguiente modo:








Un HMM está compuesto por una serie de nodos o estados cada uno de los cuales emite símbolos (una de las 256 categorías de sonido o uno de los 20 aminoácidos, por ejemplo) con una probabilidad dada (como en los perfiles). Los distintos estados están conectados secuencialmente existiendo probabilidades de transición entre ellos. Además existen probabilidades de inserción y deleción (en realidad éstas también se consideran estados). Eso es lo que son básicamente los HMMs, cuya principal ventaja es que tienen una base probabilística muy sólida.

Una vez entrenado un HMM para "vaca", cada vez que alguien diga algo y lo convirtamos en una cadena de etiquetas podremos determinar con qué probabilidad esa cadena podría ser emitida por el HMM de "vaca". En el caso de las secuencias lo tenemos más fácil incluso, ya que éstas ya vienen en forma de cadenas o secuencias.

Un ejemplo:







Por último señalar que éste es sólo un ejemplo del amplio abanico de aplicación de los HMMs, que pueden construirse con muy variadas arquitecturas y aplicarse para solucionar muy diversos problemas:







Búsquedas con secuencias intermedias (ISS: intermediate sequence searches)

Este método no utiliza información de qué posiciones son más importantes, ni utiliza alineamientos múltiples. Sin embargo, puede superar algunas de las limitaciones que tienen los métodos de búsquedas simples (BLAST, FASTA, ...).

Recordemos la limitación de BLAST: que no es capaz de distinguir entre parecidos que son reflejo de una relación de homología y parecidos que se producen al azar cuando el % de identidad está por debajo del ~25% (aprox.).

¿Cómo consiguen las búsquedas con secuencias intermedias superar esta limitación? Gracias a que la homología entre las proteínas presenta la propiedad transitiva, esto es: si la proteína A es homóloga a la proteína B, y B es homóloga a C, entonces A también es homóloga a C (aunque A y C no se parezcan). Esto sólo es cierto cuando las zonas homólogas se corresponden, es decir, sólo se aplica a nivel de dominios.
 
 







Por tanto, si realizamos búsquedas recursivas con los homólogos que vamos encontrando quizás seamos capaces de encontrar homólogos remotos, pero su éxito depende de que existan secuencias intermedias a distancias suficientemente cercanas (por ejemplo con % de identidad de secuencia > 30%). El método es como ir saltando de secuencia en secuencia. Más adelante veremos que, además de la detección de homólogos remotos, este método tiene otras utilidades para clasificar las proteínas en familias.

Ejemplo:








Algunas bases de datos de patrones, perfiles y hmms. Prosite y Pfam.

A continuación describiremos las bases de datos PROSITE y PFam, de forma que podamos realizar la práctica con ellas. En la siguiente lección hablaremos de las familias de proteínas y en ese contexto volveremos a hablar de esas bases de datos y de otras similares.
 

Prosite.

La versión 18.20 de Prosite, del 2 de febrero de 2004, contiene 1.245 entradas de documentación, las cuales describen 1691 patrones, reglas (rules) y perfiles. En http://us.expasy.org/prosite/prosuser.html hay una descripción de la base de datos.

Y en http://us.expasy.org/cgi-bin/nicedoc.pl?PDOC50020 hay un ejemplo de una entrada de documentación.

La construcción de los patrones es manual: a partir de revisiones bibliográficas acerca de familias de proteínas, se consultan los alineamientos múltiples y se derivan expresiones regulares. La eficiencia (sensibilidad/especificidad) de estos patrones es comprobada aplicándolos a las secuencias de la base de datos Swiss-Prot (la cual está anotada por expertos). Si el patrón no es satisfactorio se intenta refinar. En este procedimiento se intenta generar patrones los más cortos posibles.

En Prosite también existen perfiles. Se construyen a partir de los mismos alineamientos múltiples que los patrones, para intentar superar las limitaciones de las expresiones regulares.

Existen dos tipos de entradas en Prosite: las que definen los patrones y los perfiles y las que contienen la documentación.

La estructura de una entrada de Prosite es ésta:

   ID  Identification                     (Begins each entry; 1 per entry)

   AC  Accession number                   (1 per entry)
   DT  Date                               (1 per entry)
   DE  Short description                  (1 per entry)
   PA  Pattern                            (>=0 per entry)
   MA  Matrix/profile                     (>=0 per entry)
   RU  Rule                               (>=0 per entry)
   NR  Numerical results                  (>=0 per entry)
   CC  Comments                           (>=0 per entry)
   DR  Cross-references to SWISS-PROT     (>=0 per entry)
   3D  Cross-references to PDB            (>=0 per entry)
   DO  Pointer to the documentation file  (1 per entry)
   //  Termination line                   (Ends each entry; 1 per entry)
 
Un ejemplo de patrón:
   ID   T4_DEIODINASE; PATTERN.
   AC   PS01205;
   DT   NOV-1997 (CREATED); JUL-1999 (DATA UPDATE); JUL-1999 (INFO UPDATE).
   DE   Iodothyronine deiodinases active site.
   PA   R-P-L-[IV]-x-[NS]-F-G-S-[CA]-T-C-P-x-F.
   NR   /RELEASE=40.7,103373;
   NR   /TOTAL=16(16); /POSITIVE=16(16); /UNKNOWN=0(0); /FALSE_POS=0(0);
   NR   /FALSE_NEG=0; /PARTIAL=0;
   CC   /TAXO-RANGE=??E??; /MAX-REPEAT=1;
   CC   /SITE=12,active_site;
   DR   P49894, IOD1_CANFA, T; O42411, IOD1_CHICK, T; P49895, IOD1_HUMAN, T;
   DR   Q61153, IOD1_MOUSE, T; O42449, IOD1_ORENI, T; P24389, IOD1_RAT  , T;
   DR   P79747, IOD2_FUNHE, T; Q92813, IOD2_HUMAN, T; Q9Z1Y9, IOD2_MOUSE, T;
   DR   P49896, IOD2_RANCA, T; P70551, IOD2_RAT  , T; O42412, IOD3_CHICK, T;
   DR   P55073, IOD3_HUMAN, T; P49898, IOD3_RANCA, T; P49897, IOD3_RAT  , T;
   DR   P49899, IOD3_XENLA, T;
   DO   PDOC00925;
   //
 
Un ejemplo de perfil:
   ID   HSP20; MATRIX.
   AC   PS01031;
   DT   JUN-1994 (CREATED); JUN-1994 (DATA UPDATE); NOV-1995 (INFO UPDATE).
   DE   Heat shock hsp20 proteins family profile.
   MA   /GENERAL_SPEC: ALPHABET='ACDEFGHIKLMNPQRSTVWY'; LENGTH=97;
   MA   /DISJOINT: DEFINITION=PROTECT; N1=2; N2=96;
   MA   /NORMALIZATION: MODE=1; FUNCTION=GLE_ZSCORE;
   MA    R1=239.0; R2=-0.0036; R3=0.8341; R4=1.016; R5=0.169;
   MA   /CUT_OFF: LEVEL=0; SCORE=400; N_SCORE=10.0; MODE=1;
   MA   /DEFAULT: MI=-210; MD=-210; IM=0; DM=0; I=-20; D=-20;
   MA   /M: SY='R'; M=-12,-44,-11,-13,-13,-22,-2,-7,18,-12,5,-3,-11,0,21,-6,-5,-11,-16,-34;
   MA   /M: SY='D'; M=1,-41,17,16,-41,-3,3,-11,-1,-22,-12,8,-7,12,-7,0,-2,-19,-53,-36;
   MA   /M: SY='D';  M=2,-37,15,13,-36,2,5,-15,-3,-26,-17,10,-6,7,-10,3,2,-17,-53,-28;
   MA   /M: SY='P'; M=1,-41,6,8,-38,-4,2,-20,9,-30,-14,6,13,9,8,3,0,-22,-48,-45;
   MA   /M: SY='D'; M=2,-43,23,20,-42,2,9,-18,2,-30,-18,14,-5,14,-6,2,0,-21,-57,-35;
   MA   /M: SY='D'; M=4,-34,9,8,-34,6,0,-17,5,-29,-14,8,-1,5,1,5,2,-17,-47,-38;
   MA   /M: SY='F'; M=-28,-32,-38,-38,50,-42,-1,2,-11,6,-6,-21,-35,-27,-27,-24,-23,-14,-3,47;
   MA   /M: SY='Q'; M=0,-33,-2,-7,-26,-9,-4,1,1,-10,1,-1,-5,2,0,-2,1,0,-44,-37;
   MA   /M: SY='L'; M=-13,-36,-34,-37,23,-31,-21,28,-15,29,24,-24,-25,-24,-27,-20,-10,22,-33,0;
   MA   /M: SY='K'; M=-8,-32,-5,-5,-19,-16,3,-11,13,-19,-2,1,-9,2,12,-3,-3,-15,-32,-28;
   MA   /M: SY='L'; M=-10,-39,-30,-32,15,-26,-20,20,-16,27,20,-21,-20,-21,-27,-17,-9,16,-32,-5;
   MA   /M: SY='D'; M=3,-48,33,27,-51,4,6,-19,0,-35,-22,18,-10,13,-13,2,0,-16,-65,-41;
   MA   /I: MI=-55; MD=-55; I=-5;
   MA   /M: SY='V'; D=-5; M=-3,-33,-23,-32,-5,-19,-21,28,-16,26,30,-17,-14,-15,-19,-12,-1,30,-48,-28;
   MA   /I: MI=-55; MD=-55; I=-5;
   MA   /M: SY='P'; D=-5; M=1,-2,-1,0,-3,0,0,-1,-1,-2,-2,0,4,0,0,1,0,-1,-4,-4;
   MA   /I: MI=-55; MD=-55; I=-5;
   ..
   ... Some lines omitted..
   ..
   MA   /M:  SY='K'; M=-11,-52,1,-1,-1,-17,2,-18,43,-28,3,9,-10,8,33,-2,-1,-23,-33,-43;
   MA   /I: MI=*; MD=*; I=0;
   NR   /RELEASE=40.7,103373;
   NR   /TOTAL=181(180); /POSITIVE=176(175); /UNKNOWN=5(5); /FALSE_POS=0(0);
   NR   /FALSE_NEG=0; /PARTIAL=4;
   CC   /MATRIX_TYPE=protein_domain;
   CC   /SCALING_DB=reversed;
   CC   /AUTHOR=P_Bucher;
   CC   /TAXO-RANGE=A?EP?; /MAX-REPEAT=2;
   DR   P30223, 14KD_MYCTU, T; P46729, 18K1_MYCAV, T; P46730, 18K1_MYCIT, T;
   DR   P46731, 18K2_MYCAV, T; P46732, 18K2_MYCIT, T; P12809, 18KD_MYCLE, T;
   DR   P80485, ASP1_STRTR, T; O30851, ASP2_STRTR, T; P02497, CRA2_MESAU, T;
   DR   P24622, CRA2_MOUSE, T; P24623, CRA2_RAT  , T; P15990, CRA2_SPAEH, T;
   ..
   ... Some lines omitted..
   ..
   DR   P96193, IBPB_AZOVI, T; P29210, IBPB_ECOLI, T; P29778, OV21_ONCVO, T;
   DR   P29779, OV22_ONCVO, T; Q06823, SP21_STIAU, T; P34328, YKZ1_CAEEL, T;
   DR   P12812, P40_SCHMA , T;
   DR   P81083, HS11_PINPS, P; P81161, HS2M_LYCES, P; P30220, HS3E_XENLA, P;
   DR   Q9QUK5, HSB7_RAT  , P;
   DR   Q29438, ODFP_BOVIN, ?; Q14990, ODFP_HUMAN, ?; Q61999, ODFP_MOUSE, ?;
   DR   Q29077, ODFP_PIG  , ?; P21769, ODFP_RAT  , ?;
   DO   PDOC00791;
 
Un patrón y un perfil pueden corresponderse con un mismo documento de Prosite, ya que una familia puede haber sido definida tanto con un perfil como con un patrón.
La línea "CC /TAXO-RANGE" puede resultarnos útil para discriminar falsas conexiones, falsas homologías. Si una proteína de un eucariota presenta un patrón x que tiene un rango taxonómico P (es decir, que sólo está en bacterias), entonces el hecho de que encontremos el patrón en la secuencia del eucariota probablemente sea fruto del azar y no tenga un significado biológico.
Código empleado en el campo "TAXO-RANGE":
'A': archaea
'B': bacteriofagos
'E': eucariotas
'P': procariotas o bacterias
'V': virus de eucariotas
En cuanto a las entradas de documentación, como podemos observar, contienen mucha información (online http://us.expasy.org/cgi-bin/nicedoc.pl?PDOC50020).


(hay más información del formato de PROSITE aquí).
Tour: Prosite: (browse, search, scanprosite, motifscan, pratt)
 

Pfam

Pfam (http://www.sanger.ac.uk/Software/Pfam/index.shtml) es una base de datos de perfiles tipo HMM. Se divide en dos partes: pfam-A y pfam-B. La primera se construye manualmente: cada vez que se identifica una nueva familia de proteínas un experto elabora un HMM diagnóstico: un HMM capaz de detectar a todas las otras proteínas de la familia y sólo a éstas. Por otra parte, como pfam-A sólo cubre el 73% de Swiss-Prot y TrEMBL, existe pfam-B. Ésta se genera automáticamente a partir de aquellos perfiles que existen en PRODOM (también generados automáticamente) que no se corresponden con ningún pfam-A. Un 21% de las proteínas de Swiss-Prot y TrEMBL presentan al menos un pfam-B.

Pfam-A contiene 7.316 familias de proteínas (bastante más que Prosite).

Pfam trabaja con dominios, es decir, cada perfil HMM se corresponde con un dominio, aunque no necesariamente cumplan la definición de dominio estructural independiente, sino más bien suelen ser regiones características de una determinada familia de proteínas.

Además de las ventajas que de por sí tiene esta clasificación, pfam resulta útil para:

-analizar los alineamientos múltiples que contiene.
-estudiar la organización de dominios de las proteínas.

-examinar la distribución filogenética de las proteínas que presentan el dominio.
-también permite ver la estructura tridimensional de los dominios, cuando ésta se conoce.
-y, de las más importantes, permite buscar con una secuencia de una proteína empleando los métodos de HMM, que hoy por hoy son los más eficaces en el análisis de secuencias.

Tour: Pfam: (browse, protein search, dna search, taxonomy). En el ejemplo de CARD (http://www.sanger.ac.uk/cgi-bin/Pfam/getacc?PF00619) podemos ver algunas de las características de una entrada de Pfam.
 
 


Búsqueda en bases de datos. PSI-BLAST y HMMer
 

PSI-BLAST y PHI-BLAST

A los programas de BLAST, PSI-BLAST, PHI-BLAST.... se puede acceder desde el sitio del NCBI.

Podéis encontrar un interesante tutorial sobre PSI-BLAST en el NCBI, en: http://www.ncbi.nlm.nih.gov/Education/BLASTinfo/psi1.html.
PSI-BLAST (o Position Specific Iterated BLAST) es un programa muy útil y rápido. En su forma básica de funcionamiento lo que hace es realizar un simple BLAST con una secuencia y, a partir de los resultados, construye un perfil o PSSM. Entonces, la siguiente búsqueda la realiza con ese perfil, lo que permitirá encontrar,  idealmente, nuevos homólogos, homólogos remotos. Con esos nuevos homólogos genera un nuevo perfil, el cual, idealmente, contendrá mayor cantidad de información y podrá realizar otra búsqueda. Es un proceso iterativo.
 



Además de este modo de funcionamiento básico a partir de una secuencia, PSI-BLAST también puede iniciarse con un alineamiento múltiple.

Ejecutarlo localmente, por línea de comandos, puede resultar un poco tedioso, y resulta más sencillo utilizar el servidor del NCBI, que además ofrece algunas ventajas: por ejemplo, permite seleccionar cuáles de los homólogos deberán ser utilizados para construir el perfil.

Ejemplo (el que se sigue en el tutorial del NCBI)
>gi|2501594|sp|Q57997|Y577_METJA PROTEIN MJ0577
MSVMYKKILYPTDFSETAEIALKHVKAFKTLKAEEVILLHVIDEREIKKRDIFSLLLGVAGLNKSVEEFE
NELKNKLTEEAKNKMENIKKELEDVGFKVKDIIVVGIPHEEIVKIAEDEGVDIIIMGSHGKTNLKEILLG
SVTENVIKKSNKPVLVVKRKNS
 

PHI-BLAST (Pattern-Hit Initiated BLAST): permite realizar búsquedas que son mezcla de búsquedas de patrones y alineamiento de secuencias. Se inicia con una secuencia y un patrón (que presenta dicha secuencia y que es característico de dicha familia). Lo que hace es buscar todas aquellas secuencias que presenten ese patrón, pero para descartar aquellas ocurrencias del patrón que se producen al azar (especialmente con patrones cortos), además comprueba que las regiones vecinas al patrón sean parecidas entre las secuencias.

Instalación local

El softwarede BLAST, PSI-BLAST, PHI-BLAST y otros programas se puede obtener desde aquí. (windows, linux, etc.) (incluye documentación de cómo instalarlo y utilizarlo).
Otros programas del paquete:

2.- El paquete HMMer.
 

Este paquete HMMer sirve para utilizar HMMs en análisis de secuencias. Permite realizar múltiples tareas: construir un HMM a partir de un alineamiento múltiple, buscar con un HMM en una base de datos de secuencias, buscar con una secuencia en una base de datos de HMMs, etcétera. Dado el alto coste computacional de estas tareas, sólo se puede utilizar localmente, aunque existen algunos subprogramas que se pueden usar en la web: por ejemplo, el programa hmmpfam, que sirve para buscar con una secuencia contra una base de datos de HMMs, se puede usar en Pfam.
Instalación local
Se puede instalar en muchos sistemas, aunque quizás sea más fácil en Linux u otros sistemas Unix que en Windows.
Programas del paquete (*: los básicos):
Si ya tenemos un alineamiento, y queremos construir un HMM y buscar homólogos en una base de datos de secuencias los pasos a seguir son:
hmmbuild => hmmcalibrate => hmmsearch


3.- Resumen.