stringtranslate.com

Алгоритм Баума-Велча

В электротехнике , статистических вычислениях и биоинформатике алгоритм Баума–Велча является частным случаем алгоритма максимизации ожидания , используемого для нахождения неизвестных параметров скрытой марковской модели (HMM). Он использует алгоритм «вперед-назад» для вычисления статистики для шага ожидания.

История

Алгоритм Баума-Уэлча был назван в честь его изобретателей Леонарда Э. Баума и Ллойда Р. Уэлча . Алгоритм и скрытые марковские модели были впервые описаны в серии статей Баума и его коллег в Центре исследований коммуникаций IDA в Принстоне в конце 1960-х и начале 1970-х годов. [1] Одним из первых крупных применений HMM была область обработки речи . [2] В 1980-х годах HMM стали полезным инструментом для анализа биологических систем и информации, в частности генетической информации . [3] С тех пор они стали важным инструментом в вероятностном моделировании геномных последовательностей. [4]

Описание

Скрытая марковская модель описывает совместную вероятность набора « скрытых » и наблюдаемых дискретных случайных величин. Она основана на предположении, что i -я скрытая переменная, заданная ( i − 1)-й скрытой переменной, независима от предыдущих скрытых переменных, а текущие переменные наблюдения зависят только от текущего скрытого состояния.

Алгоритм Баума-Уэлча использует известный алгоритм EM для нахождения оценки максимального правдоподобия параметров скрытой марковской модели с учетом набора наблюдаемых векторов признаков.

Пусть будет дискретной скрытой случайной величиной с возможными значениями (т.е. Мы предполагаем, что всего есть состояния). Мы предполагаем, что не зависит от времени , что приводит к определению независимой от времени стохастической матрицы перехода

Начальное распределение состояний (т.е. когда ) определяется выражением

Переменные наблюдения могут принимать одно из возможных значений. Мы также предполагаем, что наблюдение, заданное "скрытым" состоянием, не зависит от времени. Вероятность определенного наблюдения в момент времени для состояния определяется как

Учитывая все возможные значения и , получаем матрицу , где принадлежит всем возможным состояниям и принадлежит всем наблюдениям.

Последовательность наблюдений задается формулой .

Таким образом, мы можем описать скрытую цепь Маркова с помощью . Алгоритм Баума-Велча находит локальный максимум для (т.е. параметры HMM , которые максимизируют вероятность наблюдения). [5]

Алгоритм

Устанавливаются со случайными начальными условиями. Они также могут быть установлены с использованием предварительной информации о параметрах, если она доступна; это может ускорить алгоритм, а также направить его к желаемому локальному максимуму.

Процедура пересылки

Пусть , вероятность увидеть наблюдения и оказаться в состоянии в момент времени . Это находится рекурсивно:

Поскольку этот ряд экспоненциально сходится к нулю, алгоритм будет численно недогружаться для более длинных последовательностей. [6] Однако этого можно избежать в слегка измененном алгоритме путем масштабирования в прямой и обратной процедуре ниже.

Обратная процедура

Пусть это вероятность конечной частичной последовательности при заданном начальном состоянии в момент времени . Мы вычисляем как,

Обновлять

Теперь мы можем вычислить временные переменные согласно теореме Байеса:

что является вероятностью нахождения в состоянии в момент времени, учитывая наблюдаемую последовательность и параметры

что является вероятностью нахождения в состоянии и в определенное время и соответственно при данной наблюдаемой последовательности и параметрах .

Знаменатели и одинаковы; они представляют вероятность осуществления наблюдения при заданных параметрах .

Параметры скрытой марковской модели теперь можно обновить:

что является ожидаемой частотой нахождения в состоянии в момент времени .

что является ожидаемым числом переходов из состояния i в состояние j по сравнению с ожидаемым общим числом переходов из состояния i . Для ясности, число переходов из состояния i не означает переходы в другое состояние j , а в любое состояние, включая само себя. Это эквивалентно числу раз, когда состояние i наблюдается в последовательности от t  = 1 до t  =  T  − 1.

где

является индикаторной функцией и представляет собой ожидаемое количество раз, когда выходные наблюдения были равны , находясь в состоянии , по сравнению с ожидаемым общим количеством раз в состоянии .

Эти шаги теперь повторяются итеративно до достижения желаемого уровня сходимости.

Примечание: возможно переобучение определенного набора данных. То есть, . Алгоритм также не гарантирует глобального максимума.

Несколько последовательностей

Описанный до сих пор алгоритм предполагает одну наблюдаемую последовательность . Однако во многих ситуациях наблюдается несколько последовательностей:. В этом случае информация из всех наблюдаемых последовательностей должна использоваться при обновлении параметров , и . Предполагая, что вы вычислили и для каждой последовательности , параметры теперь можно обновить:

где

является индикаторной функцией

Пример

Предположим, у нас есть курица, у которой мы собираем яйца в полдень каждый день. Теперь то, отложила ли курица яйца для сбора, зависит от некоторых неизвестных факторов, которые скрыты. Однако мы можем (для простоты) предположить, что курица всегда находится в одном из двух состояний, которые влияют на то, откладывает ли она яйца, и что это состояние зависит только от состояния в предыдущий день. Теперь мы не знаем состояние в начальной точке, мы не знаем вероятности перехода между двумя состояниями и мы не знаем вероятность того, что курица отложит яйцо при заданном состоянии. [7] [8] Для начала мы сначала угадываем матрицы перехода и испускания.

Затем мы берем набор наблюдений (E = яйца, N = нет яиц): N, N, N, N, N, E, E, N, N, N

Это дает нам набор наблюдаемых переходов между днями: NN, NN, NN, NN, NE, EE, EN, NN, NN.

Следующий шаг — оценить новую матрицу перехода. Например, вероятность последовательности NN и состояния ⁠ ⁠ then ⁠ ⁠ задается следующим образом:

Таким образом, новая оценка для перехода ⁠ ⁠ в ⁠ ⁠ теперь (называемая «Псевдовероятностями» в следующих таблицах). Затем мы вычисляем вероятности перехода в , в и в ⁠ ⁠ и нормализуем так, чтобы они в сумме давали 1. Это дает нам обновленную матрицу перехода:

Далее мы хотим оценить новую матрицу выбросов,

Новая оценка E, получаемая в результате выбросов , теперь составляет .

Это позволяет нам вычислить матрицу эмиссии, как описано выше в алгоритме, путем сложения вероятностей для соответствующих наблюдаемых последовательностей. Затем мы повторяем для , если N пришло из ⁠ ⁠ и для , если N и E пришли из ⁠ ⁠ и нормализуем.

Для оценки начальных вероятностей мы предполагаем, что все последовательности начинаются со скрытого состояния ⁠ ⁠ и вычисляем наивысшую вероятность, а затем повторяем для ⁠ ⁠ . Затем мы снова нормализуем, чтобы получить обновленный начальный вектор.

Наконец, мы повторяем эти шаги до тех пор, пока полученные вероятности не сойдутся удовлетворительно.

Приложения

Распознавание речи

Скрытые марковские модели были впервые применены к распознаванию речи Джеймсом К. Бейкером в 1975 году. [9] Распознавание непрерывной речи происходит с помощью следующих шагов, смоделированных с помощью HMM. Анализ признаков сначала выполняется на основе временных и/или спектральных признаков речевого сигнала. Это создает вектор наблюдения. Затем признак сравнивается со всеми последовательностями единиц распознавания речи. Этими единицами могут быть фонемы , слоги или целые слова. Система декодирования лексикона применяется для ограничения исследуемых путей, поэтому исследуются только слова в лексиконе системы (словаре). Подобно декодированию лексикона, путь системы дополнительно ограничивается правилами грамматики и синтаксиса. Наконец, применяется семантический анализ, и система выводит распознанное высказывание. Ограничением многих приложений HMM для распознавания речи является то, что текущее состояние зависит только от состояния на предыдущем временном шаге, что нереалистично для речи, поскольку зависимости часто имеют продолжительность в несколько временных шагов. [10] Алгоритм Баума-Уэлча также широко применяется при решении задач HMM, используемых в области синтеза речи. [11]

Криптоанализ

Алгоритм Баума-Уэлча часто используется для оценки параметров HMM при расшифровке скрытой или зашумленной информации и, следовательно, часто используется в криптоанализе . В области безопасности данных наблюдатель хотел бы извлечь информацию из потока данных, не зная всех параметров передачи. Это может включать обратную разработку кодера канала . [12] HMM и, как следствие, алгоритм Баума-Уэлча также использовались для идентификации произнесенных фраз в зашифрованных вызовах VoIP. [13] Кроме того, криптоанализ HMM является важным инструментом для автоматизированных исследований данных синхронизации кэша. Он позволяет автоматически обнаруживать критическое состояние алгоритма, например, ключевые значения. [14]

Приложения в биоинформатике

Поиск генов

Прокариотические

Программное обеспечение GLIMMER ( Gene Locator and Interpolated Markov ModelER) было одной из первых программ поиска генов, используемых для идентификации кодирующих областей в прокариотической ДНК. [15] [16] GLIMMER использует интерполированные модели Маркова (IMM) для идентификации кодирующих областей и отличия их от некодирующей ДНК . Было показано, что последняя версия (GLIMMER3) обладает повышенной специфичностью и точностью по сравнению с ее предшественниками в отношении прогнозирования участков инициации трансляции, демонстрируя среднюю точность 99% при поиске 3'-мест по сравнению с подтвержденными генами у прокариот. [17]

Эукариотические

Веб -сервер GENSCAN — это локатор генов, способный анализировать эукариотические последовательности длиной до одного миллиона пар оснований (1 Мбн). [18] GENSCAN использует общую неоднородную, трехпериодическую, пятого порядка марковскую модель кодирующих областей ДНК. Кроме того, эта модель учитывает различия в плотности и структуре генов (например, длины интронов), которые возникают в разных изохорах . В то время как большинство интегрированных программ для поиска генов (на момент выпуска GENSCAN) предполагали, что входные последовательности содержат ровно один ген, GENSCAN решает общий случай, когда присутствуют частичные, полные или множественные гены (или даже ни одного гена). [19] Было показано, что GENSCAN точно предсказывает местоположение экзона с точностью 90% и специфичностью 80% по сравнению с аннотированной базой данных. [20]

Обнаружение вариаций числа копий

Вариации числа копий (CNV) являются распространенной формой вариации структуры генома у людей. Была использована дискретно-значная двумерная HMM (dbHMM), приписывающая хромосомным областям семь различных состояний: незатронутые области, делеции, дупликации и четыре переходных состояния. Решение этой модели с использованием метода Баума-Велча продемонстрировало возможность предсказывать местоположение точки разрыва CNV примерно в 300 п.н. из экспериментов с микроматрицами . [21] Такая величина разрешения обеспечивает более точные корреляции между различными CNV и между популяциями , чем это было возможно ранее, что позволяет изучать частоты популяции CNV. Она также продемонстрировала прямую схему наследования для конкретной CNV .

Реализации

Смотрите также

Ссылки

  1. ^ Рабинер, Лоуренс. «Из первых рук: скрытая марковская модель». IEEE Global History Network . Получено 2 октября 2013 г.
  2. ^ Jelinek, Frederick; Bahl, Lalit R.; Mercer, Robert L. (май 1975). «Разработка лингвистического статистического декодера для распознавания непрерывной речи». IEEE Transactions on Information Theory . 21 (3): 250–6. doi :10.1109/tit.1975.1055384.
  3. ^ Бишоп, Мартин Дж.; Томпсон, Элизабет А. (20 июля 1986 г.). «Выравнивание последовательностей ДНК с максимальным правдоподобием». Журнал молекулярной биологии . 190 (2): 159–65. doi :10.1016/0022-2836(86)90289-5. PMID  3641921.
  4. ^ Дурбин, Ричард (23 апреля 1998 г.). Анализ биологической последовательности: вероятностные модели белков и нуклеиновых кислот. Cambridge University Press. ISBN 978-0-521-62041-3.
  5. ^ Билмес, Джефф А. (1998). Мягкое руководство по алгоритму EM и его применению к оценке параметров для гауссовых смесей и скрытых марковских моделей . Беркли, Калифорния: Международный институт компьютерных наук. С. 7–13.
  6. ^ Рабинер, Лоуренс (февраль 1989 г.). «Учебное пособие по скрытым марковским моделям и их избранным приложениям в распознавании речи» (PDF) . Труды IEEE . Получено 29 ноября 2019 г.
  7. ^ "Baum-Welch and HMM applications" (PDF) . Школа общественного здравоохранения Bloomberg при Университете Джонса Хопкинса. Архивировано из оригинала (PDF) 2021-04-14 . Получено 11 октября 2019 .
  8. ^ Фраззоли, Эмилио. "Введение в скрытые марковские модели: алгоритм Баума-Велча" (PDF) . Аэронавтика и астронавтика, Массачусетский технологический институт . Получено 2 октября 2013 г. .
  9. ^ Бейкер, Джеймс К. (1975). «Система DRAGON — обзор». Труды IEEE по акустике, речи и обработке сигналов . 23 : 24–29. doi :10.1109/TASSP.1975.1162650.
  10. ^ Рабинер, Лоуренс (февраль 1989 г.). «Учебник по скрытым марковским моделям и избранным приложениям в распознавании речи». Труды IEEE . 77 (2): 257–286. CiteSeerX 10.1.1.381.3454 . doi :10.1109/5.18626. S2CID  13618539. 
  11. ^ Токуда, Кейичи; Ёсимура, Такаёши; Масуко, Такаши; Кобаяши, Такао; Китамура, Тадаши (2000). «Алгоритмы генерации речевых параметров для синтеза речи на основе HMM». Международная конференция IEEE по акустике, речи и обработке сигналов . 3 .
  12. ^ Дингель, Янис; Хагенауэр, Иоахим (24 июня 2007 г.). «Оценка параметров сверточного кодера по зашумленным наблюдениям». Международный симпозиум IEEE по теории информации .
  13. ^ Райт, Чарльз; Баллард, Лукас; Коулл, Скотт; Монроуз, Фабиан; Массон, Джеральд (2008). «Найди меня, если сможешь: Раскрытие произнесенных фраз в зашифрованных разговорах VoIP». Международный симпозиум IEEE по безопасности и конфиденциальности .
  14. ^ Брамли, Боб; Хакала, Ристо (2009). «Атаки на шаблоны с синхронизацией кэша». Достижения в криптологии – ASIACRYPT 2009. Конспект лекций по информатике. Том 5912. С. 667–684. doi :10.1007/978-3-642-10366-7_39. ISBN 978-3-642-10365-0.
  15. ^ Зальцберг, Стивен; Делчер, Артур Л.; Касиф, Саймон; Уайт, Оуэн (1998). «Идентификация микробных генов с использованием интерполированных марковских моделей». Nucleic Acids Research . 26 (2): 544–548. doi :10.1093/nar/26.2.544. PMC 147303. PMID  9421513 . 
  16. ^ "Glimmer: Microbial Gene-Finding System". Университет Джонса Хопкинса - Центр вычислительной биологии.
  17. ^ Делчер, Артур; Братке, Кирстен А.; Пауэрс, Эдвин К.; Зальцберг, Стивен Л. (2007). «Идентификация бактериальных генов и эндосимбионтной ДНК с помощью Glimmer». Биоинформатика . 23 (6): 673–679. doi :10.1093/bioinformatics/btm009. PMC 2387122. PMID  17237039 . 
  18. ^ Бердж, Кристофер. «Веб-сервер GENSCAN в MIT». Архивировано из оригинала 6 сентября 2013 г. Получено 2 октября 2013 г.
  19. ^ Бердж, Крис; Карлин, Сэмюэл (1997). «Предсказание полных структур генов в геномной ДНК человека». Журнал молекулярной биологии . 268 (1): 78–94. CiteSeerX 10.1.1.115.3107 . doi :10.1006/jmbi.1997.0951. PMID  9149143. 
  20. ^ Бердж, Кристофер; Карлин, Сэмюэл (1998). «Поиск генов в геномной ДНК». Current Opinion in Structural Biology . 8 (3): 346–354. doi : 10.1016/s0959-440x(98)80069-9 . PMID  9666331.
  21. ^ Корбель, Ян ; Урбан, Александр; Груберт, Фабьен; Ду, Цзян; Ройс, Томас; Старр, Питер; Чжун, Гуоненг; Эмануэль, Беверли; Вайсман, Шерман; Снайдер, Майкл; Герштейн, Марг (12 июня 2007 г.). «Систематическое предсказание и проверка точек разрыва, связанных с вариациями числа копий в геноме человека». Труды Национальной академии наук Соединенных Штатов Америки . 104 (24): 10110–5. Bibcode : 2007PNAS..10410110K. doi : 10.1073/pnas.0703834104 . PMC 1891248. PMID  17551006 . 

Внешние ссылки