www.eprace.edu.pl » sztuczna-inteligencja » Techniki wstępnego przetwarzania danych » Wstępna inicjalizacja i normalizacja szeregów czasowych

Wstępna inicjalizacja i normalizacja szeregów czasowych

Przygotowywanie danych wejściowych

Jedną z najtrudniejszych części procesu predykcji szeregów czasowych jest ich inicjalizacja i dostosowanie do wymogów formalnych. Często dane wejściowe nie dają się w łatwy sposób poddać generalizacji, co w efekcie końcowym daje kiepski wynik działania algorytmu klasyfikującego szeregi czasowe. W najlepszym wypadku niedostosowanie ciągu czasowego do wymogów formalnych powoduje wydłużenie czasu predykcji.

Segmentacja danych

Jedną z najważniejszych operacji wstępnych przed przystąpieniem do generalizacji danych, jest segmentacja powstałego ciągu czasowego na tzw. "okna" z częścią wspólną (rysunek 4.1 ). Ma to za zadanie pomóc algorytmowi klasyfikacji w stworzeniu odpowiedniej struktury sieci. Podział na okna można porównać do lekcji i nauki partiami. Kiedy człowiek uczy się to nie przyswaja sobie całego dostępnego materiału, lecz jakiś zadany przedział. Niekiedy przedziały się wzajemnie zazębiają, dzięki czemu łatwiej jest zrozumieć nowe działy. Tak samo dzieje się z algorytmami klasyfikującymi/predygującymi, dzięki czemu łatwiej jest osiągnąć dobre rezultaty po relatywnie krótkim czasie nauki algorytmu.



Rysunek 4.1: Podział ciągu na okna.

Źródło: Badania własne

W bardziej ścisły sposób problem segmentacji przedstawia w swojej rozprawie doktorskiej [33] Pan dr Piotr Wais:

Do przeprowadzenia procesu predykcji przy wykorzystaniu sztucznej sieci immunologicznej wektory danych uczących należy poddać segmentacji. Segmentacja polega na podziale całych wektorów uczących zadanym oknem czasowym (window).

Algorytm segmentacji danych

Dla każdego wektora uczącego V w postaci szeregu czasowego, który V Ě Au należy do zbioru uczącego Au przeprowadzona zostaje operacja segmentacji, która jest opisana w algorytmie 4.1 .

  1. "V i i = 1,...,n wykonaj 3, 4.
  2. krok = 1
  3. dla j = krok,...,krok + window - 1 stwórz okno czasowe i zapisz jako nowy wiersz do macierzy M.
  4. krok = krok - 1

Opis zmiennych:

V

wektor poddawany segmentacji

n

maksymalna ilość elementów w wektorze V

window

zmienna w której określona jest wielkość segmentu (okna czasowego)



Algorytm 4.1: Algorytm segmentacji danych.

Normalizacja danych

Normalizacja jest bardzo ważną operacją, od której zależeć będzie dalsza analiza danych wejściowych. Jak już w pracy pisano (rozdział 3 ), normalizacja nie jest banalną operacją. W celu poprawnego zunifikowania danych stworzono własną funkcje normalizującą, która w sposób liniowy faworyzuje wszystkie dane dostępne na wejściu (algorytm 3.1 ).

komentarze

Copyright © 2008-2010 EPrace oraz autorzy prac.