| Bioinformatics Toolbox | ![]() |
Create a profile HMM structure
Model = hmmprofstruct(Length) Model = hmmprofstruct(Length, 'Field1', FieldValues1,...) hmmprofstruct(Model, 'Field1', Field1Values1,...)
| 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. |
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 |
| ModelLength | Length 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]. |
| LoopX | Loop 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] |
| NullX | Null 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).
Match state means that the target sequence is aligned to the profile at the specific location,
Delete state represents a gap or symbol absence in the target sequence (also know as a silent state because it does not emit any symbol),
Insert state represents the excess of one or more symbols in the target sequence that are not included in the profile.
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.

hmmprofstruct(100,'Alphabet','AA')
Bioinformatics Toolbox functions gethmmprof, hmmprofalign, hmmprofestimate, hmmprofgenerate, hmmprofmerge, pfamhmmread, showhmmprof
| hmmprofmerge | imageneread | ![]() |
© 1994-2005 The MathWorks, Inc.