Это 17-й день моего участия в августовском испытании обновлений. Ознакомьтесь с подробностями мероприятия: Испытание августовского обновления
Markov
Модель Маркова отличается от моделей регрессии и классификации, которые имеют дело с независимыми выборочными данными.Данные временного ряда, то есть данные с отношениями временного ряда между выборками. Основная идея Маркова: «Текущее состояние связано только с состоянием в предыдущий момент и не имеет ничего общего с состоянием любого другого момента до». Лично я считаю, что это самая большая проблема Маркова, почему — в конце статьи. Давайте рассмотрим пример, чтобы подробно объяснить марковскую модель.
Сейчас есть такой человек, у которого каждый день три состояния: есть, спать и играть. Это легендаГосударственное распределение
Теперь вы хотите знать, в каком состоянии он находится в n-й день, ест, играет или спит? Какова вероятность возникновения этих состояний?
Сначала сделайте предположение, предполагая, что его ежедневный переход состояния имеет фиксированную вероятность. Например, если мы играем сегодня, вероятность поесть завтра равна 0,6, вероятность поспать завтра равна 0,3, а вероятность продолжить игру завтра равна 0,1, то мы можем построить следующую матрицу
Эта матрицаМатрица вероятности перехода состояния, и этопостоянный, то есть матрица вероятности перехода состояния в первый день такая же, как матрица вероятности перехода состояния во второй день и каждый последующий день.
С помощью этой матрицы и если известно распределение состояний (вектор) первого дня, можно рассчитать распределение вероятностей (вектор) состояния любого дня.
Чтобы привести очень простой пример, предположим, что вероятность того, что этот человек будет есть, играть и спать 1 октября, равна,Так
Вектор распределения состояний на 2 октября
Вектор распределения штатов на 3 октября(Смотри, следуйничего простоСвязанный)
Вектор распределения штатов на 4 октября(Смотрите, просто следуйтеСвязанный)
Вектор распределения состояний за октябрь n(Смотрите, он следует только за состоянием перед нимСвязанный)
Вот вам и простой марковский контент. Наконец, подведем итоги, собственно, если вы хотите вычислить состояние n-го момента, нужно только рассчитатьПросто
Что касается вопроса Маркова, о котором я упоминал в начале, я не знаю, видели ли вы его или нет, я думаю, что его самая большая проблема в том, что он не уделяет слишком много внимания предыдущим данным. Чтобы привести очень простой пример, предположим, что вы вернулись домой из торгового центра, и мы будем изучать этот путь.
Предположим, мы делим путь поровну на 5 моментов (синие точки на рисунке). Мы можем подумать о процессе принятия решений этой женщиной: она, должно быть, хотела пойти домой, как только вышла из торгового центра, и у нее уже была идея в сердце.длиннаяпланирование. Что, если Марков сделал предсказания? Марковская модель рассматривает это каккороткий срокОно думает, что этот человек вдруг захотел уйти домой только в начале зеленой точки Марков не знает и ему все равно, что вы думаете до этого, потому что, по его мнению, самое главное — это состояние предыдущего момента .
Лично я думаю, что у Маркова в любом случае большие проблемы с данными временных рядов. Это также то, что я обнаружил, когда писал статью.Первоначально в статье планировалось использовать модель Маркова, но позже она была изменена на модель, которая может предсказывать долгосрочные тренды + стратегия коррекции Маркова. Если вам интересно, вы можете прочитать мою статьюбумага
HMM (скрытая марковская модель)
Скрытый значит невидимый. Заимствуем фразу: «Когда пакетик с маслом в лапше быстрого приготовления затвердевает, отаку знает, что приближается зима». Сезон (зима) здесь является скрытой переменной, отаку (наблюдатель) не выходит на улицу, поэтому он не может видеть погоду, он может видеть только приправу для лапши быстрого приготовления (наблюдаемый результат). В дополнение к требованию фиксированной вероятности перехода между самими скрытыми состояниями, HMM также требует отношения фиксированной вероятности между последовательностью наблюдения и последовательностью скрытых состояний.
Предполагатьмножество всех возможных (скрытых) состояний,множество всех возможных наблюдений:
в,число возможных состояний,число возможных наблюдений.
длинапоследовательность состояний,– соответствующая последовательность наблюдений:
- (скрытая) матрица вероятности перехода состояния:
в,
выражено на данный моментв состояниисостояние, на данный моментпереход в состояниеВероятность. Например, сейчас зима, а вероятность перехода на весну, осень и лето в следующий момент
матрица наблюдения:
в,
выражено на данный моментв состояниипроизводить наблюдения в условияхВероятность. Например, вероятность того, что отаку подумает, что сейчас зима, когда увидит, что мешок с маслом затвердел.
– вектор вероятности начального состояния:
в,
время для шоув состоянииВероятность. Например, вероятность четырех сезонов весны, лета, осени и зимы в начале
Скрытая марковская модель по вектору вероятности начального состояния, матрица вероятности перехода состоянияи матрица вероятности наблюденияПринять решение.иопределить последовательность состояний,Определите последовательность наблюдения. Так скрытая марковская модельможет быть представлено троичной записью, т.е.
три элемента, называемые скрытыми марковскими моделями
Матрица вероятности перехода состоянияс вектором вероятности начального состоянияВыявлены скрытые цепи Маркова, генерирующие ненаблюдаемые последовательности состояний. Матрица вероятности наблюдения B определяет, как наблюдения генерируются из состояний, а комбинация с последовательностью состояний определяет, как генерируется последовательность наблюдений.
Из определения скрытая марковская модель делает два основных предположения:
- Однородная гипотеза Маркова. То есть предполагается, что скрытая цепь Маркова в любой момент времениСостояниеНе имеет значения:
-
Допущение наблюдательной независимости. То есть предполагается, что наблюдение в любой момент времени зависит только от состояния цепи Маркова в этот момент и не имеет ничего общего с другими наблюдениями и состояниями:
Скрытые марковские модели можно использовать для маркировки, где состояния соответствуют меткам. Задача маркировки состоит в том, чтобы предсказать соответствующую помеченную последовательность с учетом последовательности наблюдений. Данные, которые можно использовать для обозначения проблемы, генерируются скрытой марковской моделью. Таким образом, мы можем использовать алгоритм обучения и прогнозирования скрытой марковской модели для маркировки
Рассмотрим пример скрытой марковской модели.
Предположим, что есть 4 ящика, и в каждом ящике лежат красные и белые шары.Количество красных и белых шаров в ящике указано в следующей таблице
номер коробки | 1 | 2 | 3 | 4 |
---|---|---|---|---|
Количество красных шаров | 5 | 3 | 6 | 8 |
Количество белых шаров | 5 | 7 | 4 | 2 |
Последовательность наблюдений за цветом мяча формируется следующим образом:
-
В начале случайным образом выберите 1 ящик из 4 ящиков с равной вероятностью, случайным образом вытащите из этого ящика шарик, запишите его цвет и положите обратно.
-
Затем случайным образом переносите из текущего ящика в следующий ящик, по правилу: если текущий ящик — ящик 1, то следующий ящик должен быть ящиком 2; если текущий ящик — 2 или 3, то переносите влево и вправо. с вероятностью 0,4 и 0,6 ящик соответственно; если текущий ящик 4, то остаться в ящике 4 или перейти в ящик 3 с вероятностью 0,5
-
Определив переданный ящик, вытащите из ящика случайным образом шар, запишите его цвет и положите обратно.
-
Таким образом, повторите 5 раз, чтобы получить последовательность наблюдений за цветом мяча.
В этом процессе наблюдатель может наблюдать только последовательность цвета шарика, но не может наблюдать, из какой коробки был взят шарик, то есть последовательность коробки наблюдать нельзя.
В этом примере есть две случайные последовательности: последовательность ящиков (последовательность состояний) и последовательность цветов шаров (последовательность наблюдений). Первое скрыто, только второе видно. Это пример скрытой марковской модели. В соответствии с заданными условиями можно четко определить три элемента набора состояний, набора наблюдений, длины последовательности и модели.
Блоки соответствуют состояниям, а набор состояний:
Цвет шарика соответствует наблюдению. И этот набор наблюдений:
Последовательность состояний и длина последовательности наблюдений
Начальное распределение вероятностей
Распределение вероятности перехода состояния
Наблюдаемое распределение вероятностей
Генерация последовательностей наблюдений
Согласно определению скрытой марковской модели длинаПоследовательность наблюдения заПроцесс генерации описывается следующим образом:
Вход: скрытая марковская модель, длина последовательности наблюдений
Выход: последовательность наблюдений
- По начальному распределению состоянийпроизводить состояние
- сделать
- По статусуНаблюдаемое распределение вероятностейгенерировать
- По статусуРаспределение вероятности перехода состоянияпроизводить состояние
- сделать;если, перейти к шагу 3, если нет, завершить
3 основные проблемы скрытых марковских моделей (курсив)
Есть 3 основные проблемы со скрытыми марковскими моделями:
- Проблема расчета вероятности. данная модельи последовательность наблюдения, рассчитанный в моделинижняя последовательность наблюденийвероятность возникновения
- проблемы с обучением. известная последовательность наблюдений, расчетная модельтакие, что наблюдаемая вероятность последовательности в этой моделимаксимум. То есть использовать метод оценки максимального правдоподобия для оценки параметров
- Проблема предсказания, также известная как проблема декодирования. известная модельи последовательность наблюдения, найти условие для заданной последовательности наблюденийсамая большая последовательность состояний. То есть, учитывая последовательность наблюдений, найдите наиболее вероятную соответствующую последовательность состояний.
Вероятностный метод расчета HMM
Нижеследующее в основном вводит расчет вероятности последовательности наблюдения.прямой и обратный алгоритмы. Сначала введите метод прямого расчета, который концептуально возможен, но невозможен с точки зрения вычислений.
1. Метод прямого расчета
данная модельи последовательность наблюдения, вычислить последовательность наблюденийвероятность возникновения. Самый прямой метод — расчет непосредственно по формуле вероятности. Перечисляя все возможные длины какпоследовательность состояний, найти каждую последовательность состоянийс последовательностью наблюдениясовместная вероятность, а затем, просуммировав все возможные последовательности состояний, получим
последовательность состоянийВероятность
для фиксированной последовательности состояний, последовательность наблюденияВероятность
Тогда для всех возможных последовательностей состоянийСуммируем, получаем последовательность наблюденийВероятность,Сейчас
Однако приведенная выше формула очень требовательна к вычислительным ресурсам, а временная сложность составляетпорядок, этот алгоритм не выполним
Ниже описано, как рассчитать вероятность последовательности наблюдений.Эффективный алгоритм для: вперед-назад алгоритм
2. Прямой алгоритм
Сначала определите форвардную вероятность. Учитывая скрытую марковскую модель, определено на данный моментЧасть последовательности наблюденийи статусВероятность - это прямая вероятность, обозначаемая как
Перспективную вероятность можно найти рекурсивнои вероятность последовательности наблюдений
Вход: скрытая марковская модель, последовательность наблюдения
Выход: вероятность последовательности наблюдений
(1) Начальное значение
(2) Рекурсия, да
(3) Прекращение
Форвардный алгоритм, шаг (1) инициализирует форвардную вероятность, которая является состоянием в начальный моменти наблюдениясовместная вероятность . Шаг (2) представляет собой рекуррентную формулу форвардной вероятности, рассчитанную до моментаЧасть последовательности наблюденийи на данный моментв состоянииФорвардная вероятность , как показано на следующем рисунке
В квадратных скобках формулы шага (2), посколькупоранаблюдаемыйи на данный моментв состояниифорвардная вероятность , то произведениевовремянаблюдаемыйи на данный моментв состояниии на данный моментдостичь состояниясовместная вероятность . для этого продукта во времявсе возможноесостояниясумме, получается, что на данный моментнаблюдается каки на данный моментв состояниисовместная вероятность . Значения в квадратных скобках и наблюдаемые вероятностиПродукт точно соответствует моментунаблюдаемыйи на данный моментв состоянииФорвардная вероятность. Шаг (3) даетформула расчета. так как
так
В качестве примера рассмотрим модель коробки и мяча., набор состояний, набор наблюдений
Предполагать, попробуйте прямой алгоритм для вычисления
**Решение:** По прямому алгоритму
(1) Рассчитать начальное значение
(2) Рекурсивный расчет
(3) Прекращение
3. Обратный алгоритм
Учитывая скрытую марковскую модель, определяя моментСтатуссостояние, отприбытьЧастичная последовательность наблюденияВероятность - это обратная вероятность, обозначаемая как
Обратная вероятность может быть получена рекурсиейвероятность последовательности наблюдений
Вход: скрытая марковская модель, последовательность наблюдения
Выход: вероятность последовательности наблюдений
(1)
(2 пары
(3)
Шаг (1) Инициализировать обратную вероятность для всех состояний в последний моментРегулирование. Шаг (2) представляет собой рекурсивную формулу обратной вероятности. Как показано ниже
Для расчета на данный моментСтатусвремя в условияхПоследующая последовательность наблюденийОбратная вероятность, просто рассмотрите моментвсе возможноесостоянияВероятность перехода (т.е.срок), и наблюдения в этом состоянииНаблюдаемая вероятность (т.е.пункт), то рассмотрим состояниеОбратная вероятность последующей последовательности наблюдений (т.пункт). Шаг (3) ПоискИдея та же, что и в шаге (2), только начальная вероятностьАльтернативные вероятности перехода
Используя определения прямой вероятности и обратной вероятности, вероятность последовательности наблюдений может бытьнаписано в унисон