Hva er tidsserier

Hva er tidsserier

Tidsserieanalyse er en fremtredende maskinlæring Utforskende dataanalyseteknikk som lar oss se hvordan datapunkter endres over tid. Flere tidsseriebaserte problemuttalelser, for eksempel billettsalgsprognose, aksjekursanalyse osv. Tidsserien kan ha en rekke trender som er vanskelig å analysere bare ved å se på plottet. Som et resultat er det en god idé å gruppere tidsserienes trender. Vi ser på hva en tidsserie er, hva gruppering er, og hvordan du klynger tidsseriedata.

Hva er tidsserier?

En tidsserie er en samling av datatekere gruppert i tidens tid. Datapunktene representerer en aktivitet som oppstår over en periode. Et vanlig eksempel er det totale antallet aksjer som omsettes med et gitt tidsintervall, sammen med andre parametere som aksjekurser og deres respektive handelsinformasjon på hvert sekund. I motsetning til en kontinuerlig tidsvariabel, har disse tidsserie-datapunktene diskrete verdier på forskjellige øyeblikk i tid. Som et resultat blir diskrete datavariabler ofte brukt. Data for en tidsserie kan samles over lengre tid, fra noen minutter til flere år. Tiden som dataene blir samlet inn på har ingen nedre eller øvre grense. Det er forskjellige tidsseriebaserte prediksjonsproblemer innen maskinlæring og dyp læring som å forutsi et selskaps aksjekurs, menneskelig aktivitetsgjenkjenning, spådommer for flybillett, etc. Dette sparer mye penger og hjelper selskaper med å ta nøye beslutninger før de investerer i noe. Eksempelplottet er gitt nedenfor viser variasjonen av observasjoner med tiden.

Hva er klynging?

Clustering er en type maskinlæring uten tilsyn læringsteknikk. Konklusjonene er anskaffet fra datasett som ikke har merket utgangsvariabler i uovervåket læringsmetode. Det er en type undersøkende dataanalyse som lar oss se på multivariate datasett.

Clustering er maskinlæring eller matematisk tilnærming der datapunkter er gruppert i et spesifisert antall klynger med lignende funksjoner blant datapunktene i hver klynge. Klynger består av datapunkter gruppert sammen slik at rommet mellom dem holdes på et minimum. Måten klyngene produseres bestemmes av typen algoritme vi velger. Fordi det ikke er noe kriterium for god gruppering, er konklusjonene hentet fra datasettene også avhenger av hva og hvordan brukeren utvikler grupperingsalgoritmen. Clustering kan brukes til å takle problemer som kundesegmentering, anbefalingssystemer, anomalideteksjon og så videre. K-Means Clustering-tilnærmingen, der vi ikke har etiketter og må plassere hvert datapunkt i sin egen klynge, kan være gjenkjennelig for deg. En fremtredende klyngemetode er K-Means. Figuren nedenfor viser hvordan vi klynger forskjellige datapunkter med de samme funksjonene i samme klynge.

Hva er tidsserieklynger?

Tidsserie -klyngeteknikken er en uovervåket databehandlingstilnærming for klassifisering av datapunkter basert på deres likhet. Målet er å maksimere datalikheten mellom klynger mens jeg minimerer det. En grunnleggende teknikk innen datavitenskap for anomaliidentifikasjon og mønsteroppdagelse er tidsserie-klynging, som brukes som en subroutine for andre mer kompliserte algoritmer. Denne teknikken er spesielt nyttig når du analyserer trendene i veldig store datasett av tidsserier. Vi kan ikke skille trendene bare ved å se på tidsserien. Her kan du gruppere trendene. Ulike trender vil da bli gruppert i forskjellige klynger.

Kernel K betyr

Kernelteknikk refererer til å transformere data til en annen dimensjon med en tydelig skille kant mellom ikke-lineært separerbare datagrupper. Kernel K-Means Technique bruker samme triks som K-betyr, bortsett fra at kjernetoden brukes til å beregne avstand i stedet for euklidisk avstand. Når den brukes på algoritmen, kan kjernetilnærmingen finne ikke-lineære strukturer og er best egnet for datasett i den virkelige verden.

K betyr for tidsserie -klynging

Den hyppigste metoden for tidsserie -gruppering er K -gjennomsnittet. Den vanlige tilnærmingen er å flate tidsseriedataene til en 2-D-matrise, med hver kolonne for hver tid indeks, og deretter bruke standard klyngealgoritmer som K-betyr for å gruppere dataene. Imidlertid er typiske grupperingsalgoritmers avstandsmålinger, for eksempel euklidisk avstand, ofte upassende for tidsserier. En foretrukket måte er å bruke en beregning for å sammenligne trendene i tidsserien i stedet for standardavstandstiltaket. En av de mest populære teknikkene som brukes til dette er Dynamic Time Warping.

Dynamisk tidsperiode

Selv om det ene signalet er tidsforskyvet fra det andre, lar Dynamic Time Warping et system å sammenligne to signaler og se etter likheter. Dens kapasitet til å sjekke for kjente talegjenstander uavhengig av talerens talende tempo, gjør det nyttig for talegjenkjenningsproblemer også. For eksempel, hvis det er to matriser: [1, 2, 3] og [4, 5, 6], er det enkelt å beregne avstanden mellom dem, da du ganske enkelt kan gjøre elementsmessig subtraksjon og legge til alle forskjellene. Imidlertid vil det ikke være lett når størrelsen på matrisene er annerledes. Vi kan betrakte disse matriser som signalens sekvens. Den "dynamiske" komponenten antyder at signalsekvensen kan flyttes frem og tilbake for å se etter en kamp uten å få fart eller bremse hele sekvensen. Hvis tidsforvaltningen strekker seg eller krymper et gummibånd, utvider DTW eller krymper det gummibåndet for å passe konturene på en overflate. Nedenfor er den visuelle representasjonen av DTW.

Trinn for dynamisk tidsveving

  1. Lage et like antall poeng i hver av de to seriene.
  2. Ved hjelp av den euklidiske avstandsformelen, beregner du avstanden mellom det første punktet i den første serien og hvert punkt i den andre serien. Lagre den beregnede minimumsavstanden.
  3. Gå til det andre punktet og gjenta 2. Gå trinn for trinn sammen med poeng og gjenta to til alle poengene er fullført.
  4. Ta den andre serien som et referansepunkt og gjenta 2 og 3.
  5. Legg sammen alle de lagrede minimumsavstandene for et ekte estimat av likhet mellom de to seriene.

Implementering av DTW i Python

fra FastDTW import Fastdtw
Fra scipy.romlig.avstand import euklidisk
SIG1 = NP.Array ([1, 2, 3, 4])
sig2 = np.Array ([1, 2, 2, 4, 4, 5])
Avstand, sti = FastDTW (SIG1, SIG2, DIST = EUCLIDEAN)
trykk (avstand)
trykk (bane)

Bruk tilfeller av tidsserie -klynging

  1. Brukt i anomalideteksjon for å spore uvanlige trender i serie.
  2. Brukt i talegjenkjenning.
  3. Brukt i outlier -deteksjon.
  4. Brukt i biologiske applikasjoner, inkludert DNA -anerkjennelse.

Konklusjon

Denne artikkelen så gjennom definisjonen av tidsserier, gruppering og kombinasjon av de to til klyngens tidsserietrender. Vi gikk gjennom en populær metode for denne kalt Dynamic Time Warping (DTW) og prosessene og implementeringen som er involvert i å bruke den.