hmmprofstruct

Create a profile HMM structure

Syntax

Model = hmmprofstruct(Length)
Model = hmmprofstruct(Length, 'Field1', FieldValues1,...)
hmmprofstruct(Model, 'Field1', Field1Values1,...)

Arguments

Length

Number of match states in the model.

Model

Hidden Markov model created with the function hmmprofstruc.

Field1

Field name in the structure Model. Enter a name from the table below.

Description

Model = hmmprofstruct(Length) returns a structure with the fields containing the required parameters of a profile HMM. Length specifies the number of match states in the model. All other mandatory model parameters are initialized to the default values.

Model = hmmprofstruct(Length, 'Field1', FieldValues1, ...) creates a profile HMM using the specified fields and parameters. All other mandatory model parameters are initialized to default values.

hmmprofstruct(Model, 'Field1', Field1Values1, ...) returns the updated profile HMM with the specified fields and parameters. All other mandatory model parameters are taken from the reference MODEL.

HMM Profile Structure Format

Model parameters fields (mandatory). All probability values are in the [0 1] range.

Field name

Description

ModelLengthLength of the profile (number of MATCH states)

Alphabet

'AA' or 'NT'. Default is 'AA'.

MatchEmission

Symbol emission probabilities in the MATCH states

Size is [ModelLength x AlphaLength]. Defaults to uniform distributions. May accept a structure with residue counts (see aacount or basecount).

InsertEmission

Symbol emission probabilities in the INSERT state.

Size is [ModelLength x AlphaLength]. Defaults to uniform distributions. May accept a structure with residue counts (see aacount or basecount).

NullEmission

Symbol emission probabilities in the MATCH and INSERT states for the NULL model. NULL model, size is [1 x AlphaLength]. Defaults to a uniform distribution. May accept a structure with residue counts (see aacount or basecount). The NULL model is used to compute the log-odds ratio at every state and avoid overflow when propagating the probabilities through the model.

BeginX

BEGIN state transition probabilities

Format is

[B->D1 B->M1 B->M2 B->M3 .... B->Mend]

Notes:

sum(S.BeginX) = 1

For fragment profiles

sum(S.BeginX(3:end)) = 0

Default is [0.01 0.99 0 0 ... 0].

MatchX

MATCH state transition probabilities

Format is

[M1->M2 M2->M3 ... M[end-1]->Mend;
M1->I1 M2->I2 ... M[end-1]->I[end-1];
M1->D2 M2->D3 ... M[end-1]->Dend;
M1->E  M2->E  ... M[end-1]->E  ]

Notes:

sum(S.MatchX) = [ 1 1 ... 1 ]

For fragment profiles

sum(S.MatchX(4,:)) = 0

Default is repmat([0.998 0.001 0.001 0],profLength-1,1).

InsertX

INSERT state transition probabilities

Format is

[I1->M2 I2->M3 ... I[end-1]->Mend;
[I1->I1 I2->I2 ... I[end-1]->I[end-1] ]

Note:

sum(S.InsertX) = [ 1 1 ... 1 ]

Default is repmat([0.5 0.5],profLength-1,1).

DeleteX

DELETE state transition probabilities. The format is

[D1->M2 D2->M3 ... D[end-1]->Mend ;
[D1->D2 D2->D3 ... D[end-1]->Dend  ]

Note: sum(S.DeleteX) = [ 1 1 ... 1 ]

Default is repmat([0.5 0.5],profLength-1,1).

FlankingInsertX

Flanking insert states (N and C) used for LOCAL profile alignment. The format is

[N->B  C->T ;
[N->N  C->C ]

Note: sum(S.FlankingInsertsX) = [1 1]

To force global alignment use

S.FlankingInsertsX = [1 1; 0 0]

Default is [0.01 0.01; 0.99 0.99].

LoopXLoop states transition probabilities used for multiple hits alignment. The format is
[E->C  J->B ;
E->J  J->J ]

Note: sum(S.LoopX) = [1 1]

Default is [0.5 0.01; 0.5 0.99]

NullXNull transition probabilities used to provide scores with log-odds values also for state transitions. The format is
[G->F ; G->G]

Note: sum(S.NullX) = 1

Default is [0.01; 0.99]

Annotation fields (optional)

Name

Model Name

IDNumber

Identification Number

Description

Short description of the model

A profile Markov model is a common statistical tool for modeling structured sequences composed of symbols . These symbols include randomness in both the output (emission of symbols) and the state transitions of the process. Markov models are generally represented by state diagrams.

The figure shown below is a state diagram for a HMM profile of length 4. Insert, match, and delete states are in the regular part (middle section).

Flanking states (S, N, B, E, C, T) are used for proper modeling of the ends of the sequence, either for global, local or fragment alignment of the profile. S, N, E, and T are silent while N and C are used to insert symbols at the flanks.

Examples

hmmprofstruct(100,'Alphabet','AA')

See Also

Bioinformatics Toolbox functions gethmmprof, hmmprofalign, hmmprofestimate, hmmprofgenerate, hmmprofmerge, pfamhmmread, showhmmprof


© 1994-2005 The MathWorks, Inc.