Robocikowo>ROBOCIKOWO
Architektura

Markov Chain

1906AktywnyOpublikowano: 30 maja 2026Aktualizacja: 30 maja 2026Opublikowany
Stochastyczny proces matematyczny opisujący przejścia między stanami, w którym prawdopodobieństwo następnego stanu zależy wyłącznie od stanu bieżącego (własność Markowa).
Kluczowa innowacja
Sformalizowanie procesów stochastycznych z własnością memoryless — przyszły stan zależy wyłącznie od stanu bieżącego, nie od pełnej historii. Fundament całej teorii procesów Markowa, MDP i RL.
Kategoria
Architektura
Poziom abstrakcji
Primitive
Poziom operacji
ModelTrening
Zastosowania
Markov Chain Monte Carlo (MCMC) — próbkowanie i wnioskowanie bayesowskieHidden Markov Models (HMM) — rozpoznawanie mowy, bioinformatykaModelowanie języka — n-gramy, generacja tekstuPageRank — ranking stron internetowych jako stacjonarna dystrybucjaTeoria kolejek i analiza wydajności systemówFizyka statystyczna — symulacje IsingaBioinformatyka — modelowanie sekwencji DNA, dopasowanie sekwencjiModelowanie pogody i procesów meteorologicznychModele dyfuzji (diffusion models) w generative AIAnaliza niezawodności systemów technicznych

Jak działa

Łańcuch Markowa definiuje się przez: (1) przestrzeń stanów S, (2) rozkład początkowy μ₀, (3) macierz przejść P (lub generator Q dla CTMC). Ewolucja: rozkład w kroku n to μ_n = μ₀ · Pⁿ. Stany klasyfikuje się jako: rekurencyjne (powracające) vs. tranzyentne, periodyczne vs. aperiodyczne, komunikujące się (te same klasy ekwiwalencji). Centralne twierdzenia: (a) twierdzenie o zbieżności — łańcuch ergodyczny zbiega do unikalnej dystrybucji stacjonarnej π = πP, (b) twierdzenie ergodyczne — średnia czasowa funkcji f(X_n) zbiega do średniej przestrzennej E_π[f]. Algorytmy: obliczanie π przez rozwiązanie równania liniowego, potęgowanie macierzy, iteracja von Mises. W praktyce algorytmicznej (MCMC) konstruuje się łańcuchy Markowa o zadanej dystrybucji stacjonarnej (np. Metropolis-Hastings, Gibbs sampling) — próbkowanie z rozkładu trudnego do bezpośredniego losowania.

Rozwiązany problem

Jak modelować i analizować systemy stochastyczne ewoluujące w czasie tak, aby możliwe było obliczenie długoterminowych własności (rozkład stacjonarny, czas powrotu, klasy stanów) bez konieczności śledzenia pełnej historii.

Komponenty

Przestrzeń stanów (S)Reprezentacja możliwych konfiguracji systemu

Zbiór wszystkich możliwych stanów łańcucha. Może być skończony, przeliczalny (DTMC) lub ciągły.

Macierz przejść (P)Dynamika stochastyczna

P_ij = P(X_{n+1}=j | X_n=i). Stochastyczna macierz (wiersze sumują się do 1). Definiuje pełną dynamikę łańcucha.

Rozkład początkowy (μ₀)Punkt startowy procesu

Rozkład prawdopodobieństwa stanu w chwili 0. Często wybierany jako rozkład deterministyczny (X₀ = s₀ z prawdopodobieństwem 1).

Oficjalna

Rozkład stacjonarny (π)Długoterminowe zachowanie łańcucha

Dystrybucja π spełniająca π = πP. Dla łańcucha ergodycznego: unikalna i jest granicą rozkładu μ_n niezależnie od μ₀.

Implementacja

Pułapki implementacyjne
Naruszenie własności MarkowaKrytyczna

Modelowanie systemu jako łańcuch Markowa, gdy stan nie zawiera wystarczającej informacji do predykcji przyszłości — prowadzi do błędnych wniosków o dystrybucji stacjonarnej i czasach przejść.

Rozwiązanie:Rozszerzenie reprezentacji stanu (state augmentation), użycie łańcuchów wyższego rzędu (n-gram), HMM z odpowiednio licznymi stanami ukrytymi.
Problemy zbieżności MCMC (mixing time)Wysoka

Łańcuch może potrzebować bardzo długiego czasu do zbieżności do dystrybucji stacjonarnej (slow mixing) — szczególnie w wysokowymiarowych przestrzeniach z wąskimi korytarzami.

Rozwiązanie:Diagnostyka konwergencji (R-hat, ESS), parallel tempering, Hamiltonian Monte Carlo, NUTS, reparametryzacja modelu.
Niestacjonarność / nieergodycznośćWysoka

Łańcuch może nie posiadać unikalnej dystrybucji stacjonarnej (przywiedlność, periodyczność) — wtedy klasyczne twierdzenia o zbieżności nie obowiązują.

Rozwiązanie:Sprawdzenie nieprzywiedlności i aperiodyczności, analiza klas komunikujących się, regularizacja przez "lazy chain" (P' = (P+I)/2).
Skala numeryczna macierzy PŚrednia

Dla bardzo dużych |S| (np. modele językowe na poziomie słów) macierz P jest niemożliwa do jawnego przechowywania. Naiwne potęgowanie traci precyzję numeryczną.

Rozwiązanie:Reprezentacje rzadkie (sparse), aproksymacje niskiego rzędu (low-rank), próbkowanie zamiast pełnej macierzy, log-space arithmetic.

Ewolucja

Oryginalny paper · 1906 · Izvestiya Fiziko-matematicheskogo obschestva pri Kazanskom universitete · Andrey Markov
Rasprostranenie zakona bolʹshikh chisel na velichiny, zavisiashchie drug ot druga (Extension of the law of large numbers to dependent quantities)
Andrey Markov
1906
Markow definiuje łańcuchy zależnych zmiennych
Punkt przełomowy

Andriej Markow rozszerza prawo wielkich liczb na zmienne losowe zależne — pierwsza formalna definicja łańcucha Markowa.

1913
Markow stosuje łańcuchy do "Eugeniusza Oniegina"

Pierwsze zastosowanie łańcuchów do tekstu naturalnego — analiza statystyczna sekwencji samogłosek/spółgłosek w poemacie Puszkina. Prekursor n-gramowych modeli językowych.

1953
Algorytm Metropolisa
Punkt przełomowy

Metropolis et al. publikują pierwszy algorytm MCMC — używają łańcucha Markowa do próbkowania z rozkładu Boltzmanna w fizyce statystycznej.

1957
Markov Decision Process (Bellman)
Punkt przełomowy

Bellman rozszerza łańcuchy Markowa o akcje i nagrody — definiuje MDP, fundament Reinforcement Learning.

1970
Hastings uogólnia algorytm Metropolisa
Punkt przełomowy

W. K. Hastings publikuje uogólnienie — Metropolis-Hastings staje się głównym algorytmem MCMC w statystyce bayesowskiej.

1989
Hidden Markov Models w rozpoznawaniu mowy (Rabiner)

Lawrence Rabiner publikuje fundamentalny tutorial o HMM — łańcuchy Markowa stają się dominującym modelem rozpoznawania mowy aż do ery deep learning.

1998
PageRank (Brin & Page, Google)
Punkt przełomowy

PageRank definiuje ranking stron jako stacjonarną dystrybucję łańcucha Markowa "random surfer" — fundament rewolucji wyszukiwarek.

2015
Modele dyfuzji w generative AI
Punkt przełomowy

Sohl-Dickstein et al. używają forward Markov chain do stopniowego szumienia danych — fundament współczesnych modeli dyfuzji (DDPM, Stable Diffusion).

Hiperparametry (konfigurowalne osie)

Rozmiar przestrzeni stanówKrytyczna

Liczba lub wymiarowość stanów. Wpływa na rozmiar macierzy P (|S|×|S|) i koszt obliczeń stacjonarnych.

Indeksacja czasowaWysoka

Dyskretna (DTMC, sekwencja kroków) vs. ciągła (CTMC, generator Q i prawdopodobieństwa eksponencjalne).

discreteStandard dla MCMC, modeli językowych.
continuousTeoria kolejek, fizyka statystyczna.
Rząd łańcuchaŚrednia

Liczba poprzednich stanów wpływających na rozkład następnego. Standardowy łańcuch ma rząd 1; n-gramy w NLP to łańcuchy wyższego rzędu.

Złożoność obliczeniowa

Złożoność czasowa: O(|S|³) — obliczenie π przez rozwiązanie układu liniowego. Złożoność przestrzenna: O(|S|²).

Paradygmat wykonania

Tryb główny
Warunkowy

Łańcuch Markowa to formalny model matematyczny — sposób wykonania zależy od konkretnego algorytmu (forward simulation, Metropolis-Hastings, Gibbs sampling, eigen-decomposition).

Wzorzec aktywacji
Zależne od wejścia

Równoległość

Poziom równoległości
Częściowo równoległy

Pojedynczy łańcuch jest wewnętrznie sekwencyjny. Można paralelizować wiele niezależnych łańcuchów (parallel tempering, multiple-chain MCMC). Operacje macierzowe (potęgowanie P) są w pełni paralelizowalne.

Zakres
Trening

Wymagania sprzętowe

Dobry fit

Symulacja sekwencyjna łańcucha Markowa jest typowo CPU-bound. Wektoryzacja AVX przyspiesza próbkowanie z dyskretnych rozkładów.

Dobry fit

Operacje macierzowe (potęgowanie P, eigen-decomposition) i równoległe próbkowanie wielu łańcuchów (parallel tempering, batch MCMC) są bardzo dobrze przyspieszane na GPU.

Podstawowe

Łańcuch Markowa to formalny model matematyczny — nie ma preferencji sprzętowych jako takich. Wybór hardware'u zależy od konkretnej implementacji.