Modelowanie strumieni danych
Wprowadzenie
- Model: celowo uproszczona reprezentacja fragmentu rzeczywistości.
- Typy modeli:
- Fizyczne
- Komputerowe
- Podział ze względu na strukturę:
- Liniowe
- Nieliniowe
- Statyczne
- Dynamiczne
- Stacjonarne
- Niestacjonarne
Modele liniowe (rodzina ARMAX)
- ARMAX (AutoRegressive Moving Average with eXogenous input):
y(k) + a₁y(k-1) + ... + aₘₐy(k-Mₐ) = b₁u(k-1) + ... + bₘ₆u(k-M₆) + c₁e(k-1) + ... + cₘ₆e(k-M₆)
- e: biały szum
- a: parametry AR
- b: parametry wejścia
- c: parametry MA
- Zastosowania: predykcja (np. obciążenie sieci energetycznej)
- AR (AutoRegressive):
y(k) + a₁y(k-1) + ... + aₘₐy(k-Mₐ) = e(k)
- Bazuje na przeszłych wartościach wyjścia
- Oznaczenie: AR(1), AR(3) itp.
- MA (Moving Average):
y(k) + c₁e(k-1) + ... + cₘ₆e(k-M₆) = e(k)
- Zależy od błędów modelowania (biały szum, rozkład normalny)
- Oznaczenie: MA(1), MA(3) itp.
- ARX (AutoRegressive with eXogenous input): y(k) + a₁y(k-1) + ... + aₘₐy(k-Mₐ) = b₁u(k-1) + ... + bₘ₆u(k-M₆) + e(k)
- ARMA (AutoRegressive Moving Average):
- Kombinacja AR i MA
- Właściwości ARMAX:
- Dziedzina czasu
- Strumienie stacjonarne: stała średnia, wariancja, rozkład prawdopodobieństwa
Modele odcinkowo-liniowe
- y(k) = a₀⁽ⁱ⁾ + Σₘₐ aₘₐ⁽ⁱ⁾y(k-mₐ) + Σₘ₆ bₘ₆⁽ⁱ⁾u(k-m₆)
- Liczba punktów pracy zależy od danych pomiarowych
- Więcej punktów pracy zwiększa złożoność obliczeniową
- Przykład: DFA (Detrended Fluctuation Analysis)
- Analiza długoterminowych zależności w niestacjonarnych strumieniach
- Usuwa trend z danych
Szereg Volterry
- Ogólna postać: y(k) = k_imp0 + Σⱼ Σₘ₁...ₘⱼ k_impj(m₁,...,mⱼ)u(k-m₁)...u(k-mⱼ)
- Model pierwszego rzędu: y(k) = k_imp0 + Σₘ k_imp1(m)u(k-m)
- Charakterystyka:
- Modeluje słabe nieliniowości
- Jądra (k_imp) opisują liniowe i nieliniowe zachowania
- Złożoność obliczeniowa rośnie z rzędem modelu
- Zastosowania: medycyna (neuronauka)
- Inspiracja: szereg Taylora z pamięcią
Modele blokowo zorientowane
- Kombinacja liniowych modeli dynamicznych i nieliniowych statycznych
- Model Wienera:
y(k) = Σⱼ bⱼ(Σₘ k_imp1(m)u(k-m))ʲ
- Nieliniowość na wyjściu
- Model Hammersteina:
y(k) = Σₘ k_imp1(m)(Σⱼ bⱼuʲ(k-m))
- Nieliniowość na wejściu
- Model Wienera-Hammersteina:
y(k) = Σₘ₂ k_imp2(m₂)Σⱼ bⱼ[Σₘ₁ k_imp1u(k-m₂-m₁)]
- Dwa bloki dynamiczne i statyczny między nimi
Modele NARMAX
- Nonlinear AutoRegressive Moving Average with eXogenous input
- Przykład NARX:
y(k) = g_nx(y(k-1),...,y(k-M_y), u(k-d_u),...,u(k-d_u-M_u), e(k-1),...,e(k-M_e)) + e(k)
- g_nx: nieliniowa funkcja
- NARX z siecią neuronową:
y(k) = b₀ + Σₘ bₘΦₘ(x_nx(k)) + e(k)
- x_nx(k): wektor przeszłych wyjść i wejść
- NARMAX z uczeniem głębokim: y(k) = B_h Φ_hN_h(W_hN_h Φ_hN_h-1(...W_h1 x_h(k) + b_01) + b_02...) + b_0N_h
- NARMAX z transformacją falkową:
s(k) = Σₘ c_j0,m φ_j0,m(t) + Σⱼ Σₘ d_j,m ψ_j,m(t)
- φ_j0,m(t): funkcja skalująca
- Przykłady: WTVAR, WTVARX
- WTVAR: y(k) = Σₘₐ Σₘ_w cₘₐ,ₘ_w yₘ_w(k-mₐ) + e(k)
- WTVARX: y(k) = Σₘₐ Σₘ_w cₘₐ,ₘ_w yₘ_w(k-mₐ) + Σₘ₆ Σₘ_u dₘ₆,ₘ_u uₘ_u(k-m₆) + e(k)
Modele TVARMAX
- Modelowanie niestacjonarnych sygnałów
- Warianty:
- TVAR: y(k) = Σₘₐ aₘₐ(k)y(k-mₐ) + e(k)
- TVARMA: y(k) = Σₘₐ aₘₐ(k)y(k-mₐ) + Σₘ₆ cₘ₆(k)e(k-m₆)
- TVARX: y(k) = Σₘₐ aₘₐ(k)y(k-mₐ) + Σₘ₆ bₘ₆(k)u(k-m₆)
- TVARMAX: y(k) = Σₘₐ aₘₐ(k)y(k-mₐ) + Σₘ₆ bₘ₆(k)u(k-m₆) + Σₘ₆ cₘ₆(k)e(k-m₆)
*Based on lectures of Krzysztof Brzostowski ©
designed & developed by dimon.work