12
Idősor karaktersorozatként való vizsgálata – SAX algoritmus Szabó Dániel Konzulens: dr. Dobrowiecki Tadeusz Önálló Labor előadás 2011. december 12.

Idősor karaktersorozatként való vizsgálata – SAX algoritmus

Embed Size (px)

DESCRIPTION

Idősor karaktersorozatként való vizsgálata – SAX algoritmus. Szabó Dániel Konzulens: dr. Dobrowiecki Tadeusz. Önálló Labor előadás 2011. december 12. Áttekintés. Adatbányászat (Data Mining) Orvosi adatbányászat (Data Mining in Clinical Medicine) Idősorok vizsgálata (Temporal Abstraction) - PowerPoint PPT Presentation

Citation preview

Page 1: Idősor karaktersorozatként való vizsgálata – SAX algoritmus

Idősor karaktersorozatként való vizsgálata – SAX

algoritmus

Szabó Dániel

Konzulens: dr. Dobrowiecki Tadeusz Önálló Labor előadás2011. december 12.

Page 2: Idősor karaktersorozatként való vizsgálata – SAX algoritmus

Áttekintés

• Adatbányászat (Data Mining)– Orvosi adatbányászat (Data Mining in Clinical

Medicine)• Idősorok vizsgálata (Temporal Abstraction)

– Időkeretek összehasonlítása (Temporal Pattern Matching)

» SAX algoritmus (Symbolic Aggregate ApproXimation)

Page 3: Idősor karaktersorozatként való vizsgálata – SAX algoritmus

Előrejelzés adatbányászattal az orvostudományban

• Orvosi adatbányászat: olyan területeken alkalmazott, amelyek nagyméretű adathalmaz feldolgozását igénylik (molekuláris kutatások, genetikai adatok)

• Egyik fontos területe az idősorok vizsgálata (Temporal Abstraction, TA)

• Rendszeresen (akár folytonosan) mért adatok elemzésére szolgál (pl. vércukorszint változása, szívverés, ECG), ezek viselkedésére próbál magyarázatot találni

Page 4: Idősor karaktersorozatként való vizsgálata – SAX algoritmus

A tudásalapú időbeli absztrakció

• Knowledge-Based Temporal Abstraction, KBTA: egy idősorra alkalmazott adatbányászati módszer, melynek során az adott feladat öt részfeladatra oszlik, ezek közül mindegyikre különböző tudástípusokat alkalmazva más-más módszerek használatosak

• Az öt részfeladat közül az egyik az idősor mintázatait hasonlítja össze (Temporal-pattern matching) osztályozás segítségével (Classification knowledge)

Page 5: Idősor karaktersorozatként való vizsgálata – SAX algoritmus

Az idősor mintáinak hasonlósága

Brute Force Algorithm: quadratic in the length of the time series

„Poppet pulled significantly out of the solenoid before energizing”

Symbolic Aggregate ApproXimation (SAX): 3 to 4 orders of magnitudeFaster than brute force

Page 6: Idősor karaktersorozatként való vizsgálata – SAX algoritmus

Symbolic Aggregate ApproXimation (SAX)

• Egy n hosszúságú C idősor w egyenlő méretű keretre osztása (PAA – Piecewise Aggregate Approximation)

• Gauss-görbe a db egyenlő területre osztása alapján a ß értékek (Breakpoint) meghatározása

Page 7: Idősor karaktersorozatként való vizsgálata – SAX algoritmus

Symbolic Aggregate ApproXimation (SAX)

• Az azonos breakpointok közé kerülő keretek ugyanazt a szimbólumot kapják

Végül az idősor helyett egy karaktersorozatot kapunk: cbccbaab

Page 8: Idősor karaktersorozatként való vizsgálata – SAX algoritmus

SAX – fa (trie) építése• A külső és belső

heurisztikához használt adatstruktúrák:

• 1. Egy tömb készítése az egymást követő SAX szavakból. A szó hossza adott. Az utolsó oszlop a szó előfordulásának számát tartalmazza.

1. c a a 32. c a b 13. c a a 3… … … … …… … … … …(m-n)-1 c b b 2(m-n) a c b 1(m-n)+1 b c a 2

Page 9: Idősor karaktersorozatként való vizsgálata – SAX algoritmus

SAX – fa (trie) építése

• 2. Egy fa (trie) építése a szókészlet alapján. A fa levelein az adott szavak táblázatban elfoglalt helye található.

• A ritkán előforduló szavak ennek segítségével gyorsan megtalálhatók.

Page 10: Idősor karaktersorozatként való vizsgálata – SAX algoritmus

SAX algoritmus megvalósítása MATLAB-bal

• Gauss.m – ‘a’ bemeneti értékre kiszámolja az a-1 db breakpoint (ß) értékét

• Sax.m – a szimbólumok száma (=ß+1) és a keret méretének hossza alapján reprezentálja a kapott karaktersorozatot

Page 11: Idősor karaktersorozatként való vizsgálata – SAX algoritmus

Programfutás eredményeSzinuszgörbe -3*pi és 3*pi között, A=4 amplitúdóval

Page 12: Idősor karaktersorozatként való vizsgálata – SAX algoritmus

Felhasznált irodalom• Riccardo Bellazzi, Fulvia Ferrazzi, Lucia Sacchi: Predictive data

mining in clinical medicine: a focus on selected methods and applications. WIREs: Data Mining and Knowledge Discovery, Volume 1, September/October 2011, p.416-430

• Yuval Shahar: A framework for knowledge-based temporal abstraction. Artif Intell 1997, 90:79-133

• Eamonn Keogh, Jessica Lin, Ada Fu: HOT SAX: Efficiently Finding the Most Unusual Time Series Subsequence. In proceedings of the 5th IEEE International Conference on Data Mining. Houston, TX. Nov 27-30, 2005. pp. 226-233

• J. Lin, E. J. Keogh, L. Wei, and S. Lonardi. Experiencing SAX: a novel symbolic representation of time series. Data Min. Knowl. Discov., 15(2), 2007.