Algoritmus dynamické transformace časové osy

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 12. prosince 2014; kontroly vyžadují 11 úprav .

Algoritmus pro dynamickou transformaci časové škály ( DTW-algorithm , z anglického  dynamic time warping ) je algoritmus , který umožňuje najít optimální shodu mezi časovými sekvencemi. Poprvé použito v rozpoznávání řeči , kde se používá k určení, jak dva řečové signály reprezentují stejnou původní mluvenou frázi. Následně byly nalezeny aplikace v dalších oblastech [1] .

Časová řada  je široce používaný datový typ[ objasnit ] vyskytující se prakticky v jakékoli vědecké oblasti a porovnávání dvou sekvencí je standardním úkolem. Pro výpočet odchylky stačí jednoduché měření vzdálenosti mezi složkami dvou posloupností (euklidovská vzdálenost). Často však dvě sekvence mají přibližně stejné obecné tvary, ale tyto tvary nejsou zarovnány na ose x. Abychom určili podobnost mezi takovými sekvencemi, musíme „pokřivit“ časovou osu jedné (nebo obou) sekvence tak, aby dosáhnout lepšího zarovnání. [2]

Algoritmus

Měření vzdálenosti mezi dvěma časovými řadami je nezbytné pro určení jejich podobnosti a klasifikace. Takovým efektivním měřením je euklidovská metrika . Pro dvě časové sekvence je to jednoduše součet čtverců vzdáleností od každého n-tého bodu jedné sekvence k n-tému bodu druhé. Použití euklidovské vzdálenosti má však značnou nevýhodu: pokud jsou dvě časové řady stejné, ale jedna z nich je mírně posunuta v čase (podél časové osy), pak euklidovská metrika může uvažovat, že se řady od sebe liší. . Algoritmus DTW byl zaveden s cílem překonat tento nedostatek a poskytnout vizuální měření vzdálenosti mezi řadami, aniž by se věnovala pozornost jak globálním, tak lokálním posunům na časové škále . [3]

Klasický algoritmus

Uvažujme dvě časové řady – délky a délky [4] :

První fáze algoritmu je následující. Sestrojíme matici řádu ( matici vzdálenosti ), ve které je prvkem vzdálenost mezi dvěma body a . Obvykle se používá euklidovská vzdálenost: , nebo . Každý prvek matice odpovídá zarovnání mezi body a .

Ve druhé fázi vytvoříme transformační (deformační) matici , jejíž každý prvek se vypočítá na základě následujícího vztahu:

Po vyplnění transformační matice přejdeme k poslednímu kroku, kterým je sestavení nějaké optimální transformační cesty (deformace) a vzdálenosti DTW ( path cost ).
Transformační cesta  je sada sousedních prvků matice, která mapuje mezi a . Představuje cestu, která minimalizuje celkovou vzdálenost mezi a . Prvek cesty je definován jako . Takto:

kde  je délka cesty.

Transformační cesta musí splňovat následující omezující podmínky:

Přestože existuje velké množství transformačních cest, které splňují všechny výše uvedené podmínky, nás zajímá pouze cesta, která minimalizuje vzdálenost DTW ( path cost ).

Vzdálenost DTW ( náklady na cestu ) mezi dvěma sekvencemi se vypočítá na základě optimální transformační cesty pomocí vzorce:

ve jmenovateli se používá k zohlednění skutečnosti, že transformační cesty mohou mít různé délky.

Prostorová a časová složitost algoritmu  je kvadratická, protože algoritmus DTW musí zkoumat každou buňku transformační matice.

Nevýhody algoritmu

Přestože byl algoritmus úspěšně použit v mnoha oblastech, může přinést nesprávné výsledky. Algoritmus se může pokusit vysvětlit volatilitu os pomocí transformace osy . To může vést k zarovnání, ve kterém je jeden bod v první sekvenci mapován na velkou podmnožinu bodů ve druhé sekvenci.

Dalším problémem je, že algoritmus nemusí najít zřejmé zarovnání dvou řad kvůli skutečnosti, že singulární bod (vrchol, prohlubeň, plošina, inflexní bod ) jedné řady je umístěn mírně nad nebo pod odpovídajícím singulárním bodem druhé řady. [5] .

Odrůdy algoritmu DTW

Různá vylepšení algoritmu DTW mají urychlit jeho výpočty a také lépe řídit možné cesty transformačních cest.

Obecná (globální) omezení

Jednou z běžných variant algoritmu DTW je kladení obecných (globálních) omezujících podmínek na přípustné deformační dráhy [6] . Nechť  je podmnožina , která definuje oblast globálního omezení. Nyní je cesta transformace cesta obsažená v souboru . Optimální transformační cesta je cesta, která patří a minimalizuje náklady na cestu mezi všemi transformačními cestami z .

Rychlý DTW algoritmus

Tento algoritmus má lineární prostorovou a časovou složitost . Rychlý DTW algoritmus používá vrstvený přístup se třemi klíčovými operacemi [7] :

  1. Zmenšit v detailu - zmenšíme velikost časové řady zprůměrováním sousedních dvojic bodů. Výsledná časová řada je řada, která má o polovinu méně bodů než původní. Tuto operaci provádíme několikrát, abychom získali mnoho různých rozlišení časových řad.
  2. Plánování - cestu transformace vezmeme při nízkém detailu a určíme, kterými buňkami bude cesta transformace procházet při dalším detailu (řádově vyšším než předchozím). Vzhledem k tomu, že rozlišení je dvojnásobné, jeden bod patřící do transformační cesty při nízkém rozlišení bude odpovídat alespoň čtyřem bodům při vyšším rozlišení. Tato plánovaná cesta je pak použita jako heuristika během zpracování k nalezení cesty s vysokým rozlišením.
  3. Zpracování je hledání optimální deformační dráhy v okolí plánované dráhy.

Sparse DTW algoritmus

Hlavní myšlenkou této metody je dynamicky využívat přítomnost podobnosti a/nebo srovnání dat pro dvě časové sekvence. Tento algoritmus má tři specifické výhody [8] :

  1. Transformační matice je reprezentována pomocí řídkých matic , což vede ke snížení průměrné prostorové složitosti ve srovnání s jinými metodami.
  2. Řídký DTW algoritmus vždy vytváří optimální transformační cestu.
  3. Protože algoritmus vytváří optimální zarovnání, lze jej snadno použít v kombinaci s jinými metodami.

Aplikace

Poznámky

  1. Ghazi Al-Naymat, Sanjay Chawla, Javid Taheri Sparse DTW: Nový přístup k urychlení dynamického zakřivení času Archivováno 13. října 2019 na Wayback Machine  
  2. Eamonn J. Keogh, Michael J. Pazzani Derivative Dynamic Time Warping, sekce 1 Archivováno 30. července 2016 na Wayback Machine  
  3. Stan Salvador a Philip Chan Fast DTW: K přesné dynamické deformaci času v lineárním čase a prostoru Archivováno 31. října 2014 na Wayback Machine  
  4. Eamonn J. Keogh, Michael J. Pazzani Derivative Dynamic Time Warping, sekce 2 Archivováno 30. července 2016 na Wayback Machine  
  5. Eamonn J. Keogh, Michael J. Pazzani Derivative Dynamic Time Warping, sekce 1, strana 2 Archivováno 2016-07-30 .  (Angličtina)
  6. DTW Algorithm Review. Sekce 3.3 Archivováno 17. prosince 2014 na Wayback Machine  
  7. Stan Salvador a Philip ChanFast DTW: K přesné dynamické deformaci času v lineárním čase a prostoru Archivováno 31. října 2014 na Wayback Machine  
  8. Ghazi Al-Naymat, Sanjay Chawla, Javid Taheri Sparse DTW: Nový přístup ke zrychlení, Oddíl 1.1 Archivováno 13. října 2019 na Wayback Machine