Создайте или отредактируйте скрытую структуру профиля модели Маркова (HMM)
Model = hmmprofstruct(Length)
Model = hmmprofstruct(Length, Field1, Field1Value, Field2, Field2Value,
...)
NewModel = hmmprofstruct(Model, Field1, Field1Value, Field2, Field2Value,
...)
Length | Количество совпадающих состояний в модели. |
Model | MATLAB® структура, содержащая поля для параметров профиля HMM, созданного с помощью hmmprofstruct функция. |
Field | Вектор символов или строка, содержащая имя поля в структуре Model. Имена полей см. в таблице ниже. |
FieldValue | Значение, сопоставленное с Field. Описание приведено в таблице ниже. |
Model | Структура MATLAB, содержащая поля для параметров профиля HMM. |
возвращает Model = hmmprofstruct(Length)Model, структуру MATLAB, содержащую поля для параметров профиля HMM. Length задает количество совпадающих состояний в модели. Все другие обязательные параметры устанавливаются на значения по умолчанию.
возвращает структуру профиля HMM с использованием заданных параметров. Для всех остальных обязательных параметров заданы значения по умолчанию.Model = hmmprofstruct(Length, Field1, Field1Value, Field2, Field2Value,
...)
возвращает обновленную структуру профиля HMM с использованием заданных параметров. Все другие параметры взяты из входа NewModel = hmmprofstruct(Model, Field1, Field1Value, Field2, Field2Value,
...)Model.
Структура MATLAB Model содержит следующие поля, которые являются обязательными и необязательными параметрами профиля HMM. Все значения вероятностей находятся в области значений [0 1].
| Область | Описание |
|---|---|
ModelLength | Целое число, задающее длину профиля (количество состояний MATCH). |
Alphabet | Вектор символов или строка, задающая алфавит, используемый в модели. Варианты 'AA' (по умолчанию) или 'NT'. Примечание
|
MatchEmission | Вероятности излучения символов в состояниях MATCH. Одно из следующих: |
InsertEmission | Вероятности излучения символов в состоянии INSERT. Одно из следующих: |
NullEmission | Вероятности излучения символов в состояниях MATCH и INSERT для модели NULL. Одно из следующих: Примечание Модель NULL используется, чтобы вычислить отношение логарифмических шансов в каждом состоянии и избежать переполнения при распространении вероятностей через модель. Примечание Вероятности NULL также известны как фоновые вероятности. |
BeginX | Вероятности перехода BEGIN. Формат: 1-by- [B->D1 B->M1 B->M2 B->M3 .... B->Mend] Примечание При необходимости, sum(Model.BeginX) = 1 Для профилей фрагментов: sum(Model.BeginX(3:end)) = 0 По умолчанию это |
MatchX | Вероятности перехода состояния MATCH. Формат: 4-бай- [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 ] Примечание При необходимости, sum(Model.MatchX) = [ 1 1 ... 1 ] Для профилей фрагментов: sum(Model.MatchX(4,:)) = 0 По умолчанию это |
InsertX | INSERT состояния вероятности перехода. Формат: 2-бай- [ I1->M2 I2->M3 ... I[end-1]->Mend; I1->I1 I2->I2 ... I[end-1]->I[end-1] ] Примечание При необходимости, sum(Model.InsertX) = [ 1 1 ... 1 ] По умолчанию это |
DeleteX | Вероятность перехода DELETE. Формат: 2-бай- [ D1->M2 D2->M3 ... D[end-1]->Mend ; D1->D2 D2->D3 ... D[end-1]->Dend ] Примечание При необходимости, sum(Model.DeleteX) = [ 1 1 ... 1 ] По умолчанию это |
FlankingInsertX | Состояния фланцевой вставки (N и C), используемые для выравнивания профиля LOCAL. Формат является матрицей 2 на 2: [N->B C->T ; N->N C->C] Примечание При необходимости, sum(Model.FlankingInsertsX) = [1 1] Примечание Чтобы принудительно выполнить глобальное выравнивание, используйте: Model.FlankingInsertsX = [1 1; 0 0] По умолчанию это |
LoopX | Переходные вероятности состояний цикла, используемые для выравнивания нескольких ударов. Формат является матрицей 2 на 2: [E->C J->B ; E->J J->J] Примечание При необходимости, sum(Model.LoopX) = [1 1] По умолчанию это |
NullX | Пустые вероятности перехода, используемые для обеспечения счетов со значениями логарифмических шансов, также для переходов состояния. Формат представляет собой вектор-столбец 2 на 1: [G->F ; G->G] Примечание При необходимости, sum(Model.NullX) = 1 По умолчанию это |
IDNumber | Необязательно. Присвоенный пользователем идентификационный номер. |
Description | Необязательно. Присвоенное пользователем описание модели. |
Модель профиля HMM является общим статистическим инструментом для моделирования структурированных последовательностей, состоящих из символов. Эти символы включают случайность как в выходе (эмиссия символов), так и в переходах состояния процесса. Модели Маркова обычно представлены диаграммами состояний.
Следующий рисунок является диаграммой состояний для профиля HMM длины четыре. Состояния INSERT, MATCH и DELETE находятся в центральном разделе.
Состояние INSERT представляет избыток одного или нескольких символов в целевой последовательности, которые не включены в профиль.
Состояние MATCH означает, что целевая последовательность выровнена по профилю в определенном месте.
Состояние DELETE представляет погрешность или отсутствие символов в целевой последовательности (также известной как состояние молчания, поскольку оно не излучает никаких символов).
Фланкирующие состояния (S, N, B, E, C, T) используются для правильного моделирования концов последовательности, для глобального, локального или фрагментного выравнивания профиля. S, B, E, и T молчат, в то время как N и C используются для вставки обозначений на боковые стороны.

Создайте структуру профиля HMM с 100 состояниями MATCH, используя алфавит аминокислоты.
hmmProfile = hmmprofstruct(100,'Alphabet','AA') hmmProfile = ModelLength: 100 Alphabet: 'AA' MatchEmission: [100x20 double] InsertEmission: [100x20 double] NullEmission: [1x20 double] BeginX: [101x1 double] MatchX: [99x4 double] InsertX: [99x2 double] DeleteX: [99x2 double] FlankingInsertX: [2x2 double] LoopX: [2x2 double] NullX: [2x1 double]
Используйте pfamhmmread функция для создания структуры профиля HMM из pf00002.ls, файл в формате HMM PFAM, входящий в состав программного обеспечения.
hmm02 = pfamhmmread('pf00002.ls');Измените структуру профиля HMM, чтобы принудительно создать глобальное выравнивание путем установки нулевого нуля вероятностей циклического перехода в состояниях фланцевой вставки.
hmm02 = hmmprofstruct(hmm02,'FlankingInsertX',[0 0;1 1]);
hmm02.FlankingInsertX
ans =
0 0
1 1aacount | basecount | gethmmprof | hmmprofalign | hmmprofestimate | hmmprofgenerate | hmmprofmerge | pfamhmmread | showhmmprof