0 / 0
Go back to the English version of the documentation
Szczegóły implementacji serii czasowej
Last updated: 22 sie 2023
Szczegóły implementacji serii czasowej

Te szczegóły implementacji opisują etapy i przetwarzanie specyficzne dla eksperymentu serii czasowej AutoAI .

Szczegóły implementacji

Zapoznaj się z tymi informacjami na temat implementacji i konfiguracji dla eksperymentu serii czasowej.

Etapy szeregów czasowych

Eksperyment szeregów czasowych AutoAI obejmuje te etapy, gdy uruchamiany jest eksperyment:

  1. Inicjowanie
  2. Wybór potoku
  3. Ocena modeli
  4. Końcowe generowanie potoku
  5. Backtest

Etap 1: Inicjowanie

Etap inicjowania przetwarza dane uczących, w następującej kolejności:

  • Załaduj dane
  • Podziel zestaw danych L na dane treningowe T i dane wstrzymane H
  • Służy do ustawiania sprawdzania poprawności, obsługi kolumn datownika i generowania okna wyszukiwania. Uwagi:
    • Dane uczących (T) są równe dla zestawu danych (L) pomniejszonego o wartość wydrążone (H). Podczas konfigurowania eksperymentu można dostosować wielkość danych holdout. Domyślnie wielkość danych holdout wynosi 20 kroków.
    • Opcjonalnie można określić kolumnę datownika.
    • Domyślnie okno wyszukiwania jest generowane automatycznie przez wykrywanie okresu sezonowego za pomocą metody przetwarzania sygnału. Jeśli jednak użytkownik ma pomysł na odpowiednie okno wyszukiwania, można określić wartość bezpośrednio.

Etap 2: Wybór rurociągu

W kroku wyboru potoku używana jest efektywna metoda o nazwie T-Daub (przydzielanie danych szeregów czasowych z użyciem ograniczeń górnych). Metoda wybiera rurociągi poprzez przydzielenie większej ilości danych uczących do najbardziej obiecujących rurociągów, przy jednoczesnym przydzielaniu mniej danych treningowych do bezobiecujących rurociągów. W ten sposób nie wszystkie potokiny widzą kompletny zestaw danych, a proces wyboru jest zwykle szybszy. Przegląd procesu zawiera następujące kroki:

  1. Wszystkie rurociągi są kolejno przydzielane do kilku małych podgrup danych uczących. Najpierw przydzielane są najnowsze dane.
  2. Każdy rurociąg jest przeszkolony w odniesieniu do każdego przydzielonego podzbioru danych uczących i oceniany na podstawie danych testowych (dane holdout).
  3. Model regresji liniowej jest stosowany do każdego potoku przy użyciu zestawu danych opisanego w poprzednim kroku.
  4. Wynik dokładności dla potoku jest prognozowany na całym zestawie danych uczących. Ta metoda powoduje, że zestaw danych zawiera dokładność i wielkość przydzielonych danych dla każdego potoku.
  5. Najlepszy rurociąg dobierany jest zgodnie z przewidywaną dokładnością i przydzielaniem stopnia 1.
  6. Więcej danych jest przydzielanych do najlepszego gazociągu. Następnie prognozowana dokładność jest aktualizowana dla pozostałych rurociągów.
  7. Dwa wcześniejsze kroki są powtarzane do czasu, aż górne N potoków zostaną przeszkolone we wszystkich danych.

Etap 3: Ocena modelu

W tym kroku zwycięskie rurociągi N są przećwiczane na całym zestawie danych treningowych T. Następnie są one oceniane przy użyciu danych wstrzymanych H.

Etap 4: Końcowe generowanie rurociągu

W tym kroku zwycięskie rurociągi są ponownie przeszkolone w całym zestawie danych (L) i są generowane jako ostatnie potokowe.

Gdy przekwalifikowanie każdego rurociągu kończy się, rurociąg jest publikowanej na tablicy. Można wybrać, aby sprawdzić szczegóły rurociągu lub zapisać potok jako model.

Etap 5: Backtest

W ostatnim kroku zwycięskie rurociągi są przećwiczane i oceniane przy użyciu metody backtest. Metoda backtest zawiera następujące kroki:

  1. Długość danych uczących jest określana na podstawie liczby wywołań, długości przerw i wielkości wypustów. Więcej informacji na temat tych parametrów znajduje się w sekcji Budowanie eksperymentu z serią czasową.
  2. Począwszy od najstarszych danych, eksperyment jest przeszkolony z wykorzystaniem danych uczących.
  3. Następnie eksperyment jest oceniany na podstawie pierwszego zestawu danych sprawdzania poprawności. Jeśli długość luki jest niezerowa, wszystkie dane w przerwie są pomijane.
  4. Okno danych uczących jest zaawansowane, zwiększając wielkość holdout i dystans, aby utworzyć nowy zestaw treningowy.
  5. Świeży eksperyment jest przeszkolony w zakresie nowych danych i jest wartościowany przy użyciu kolejnego zestawu danych sprawdzania poprawności.
  6. Poprzednie dwa kroki są powtarzane dla pozostałych okresów.

Wielkości mierzone optymalizacji szeregów czasowych

Zaakceptuj wartość domyślną lub wybierz metrykę, która ma być zoptymalizowana pod kątem eksperymentu.

Metryka Opis
Symetryczny średni bezwzględny błąd procentowy (SMAPE) W każdym dopasowanym punkcie bezwzględna różnica między wartością rzeczywistą a wartością przewidywaną dzieli się przez połowę sumy bezwzględnej rzeczywistej wartości i wartości przewidywanej. Następnie, średnia jest obliczana dla wszystkich takich wartości we wszystkich dopasowanych punktach.
Średni błąd bezwzględny (MAE) Średnia bezwzględna różnica między rzeczywistymi wartościami a wartościami przewidywanymi.
Pierwiastek z błędu średniokwadratowego (RMSE) Pierwiastek kwadratowy ze średniej kwadratu różnic między wartościami rzeczywistymi a wartościami przewidywanymi.
R2 Miara sposobu porównywania wydajności modelu z modelem bazowym lub modelem średniej. Wartość R2 musi być równa lub mniejsza od 1. Ujemna wartość R2 oznacza, że rozważany model jest gorszy od modelu średniej. Wartość zero R2 oznacza, że rozważany model jest tak dobry lub zły, jak model średniej. Dodatnia wartość R2 oznacza, że model uwzględniany w rozważanym modelu jest lepszy od modelu średniej.

Algorytmy szeregów czasowych

Algorytmy te są dostępne dla eksperymentu serii czasowej. Można użyć algorytmów, które są wybrane domyślnie, lub można skonfigurować eksperyment w celu uwzględnienia lub wykluczenia konkretnych algorytmów.

Algorytm Opis
ARIMA Autoregresyjna zintegrowana średnia ruchoma (ARIMA) jest typowym modelem szeregów czasowych, który może transformować dane niestacjonarne do danych stacjonarnych poprzez różnicowanie, a następnie prognozować kolejną wartość przy użyciu przeszłych wartości, w tym opóźnionych wartości i opóźnionych błędów prognozy
BATS Algorytm BATS łączy w sobie czynniki transformacji Box-Cox, reszt ARMA, Trend i Seasonality w celu prognozowania przyszłych wartości.
Ensembler Ensembler łączy wiele metod prognozowania w celu pokonania dokładności prostego przewidywania i uniknięcia możliwego przepełnienia.
Holt-Winters Wykorzystuje potrójne wygładzanie wykładnicze do prognozowania punktów danych z serii, jeśli seria jest powtarzalna w czasie (sezonowe). Dostępne są dwa rodzaje modeli Holt-Winters: dodatek Holt-Winters oraz multiplikatywny Holt-Winters
Las losowy Model regresji oparty na drzewie, w którym każde drzewo w komplecie jest zbudowane z próbki, która jest rysowana wraz z wymianą (na przykład próbką startową) z zestawu treningowego.
SVM (ang. Support Vector Machine) Maszyny wirtualne są typem modeli uczenia maszynowego, które mogą być używane zarówno dla regresji, jak i dla klasyfikacji. Maszyny wirtualne używają hiperpłaszczyzny, aby podzielić dane na osobne klasy.
Regresja liniowa Buduje liniową relację między zmienną szeregów czasowych a indeksem daty/czasu lub czasu z resztami, które są zgodne z procesem AR.

Obsługiwane formaty daty i godziny

Formaty daty/godziny obsługiwane w eksperymentach szeregów czasowych są oparte na definicjach udostępnianych przez program dateutil.

Obsługiwane formaty daty to:

Często:

    YYYY
    YYYY-MM, YYYY/MM, or YYYYMM
    YYYY-MM-DD or YYYYMMDD
    mm/dd/yyyy
    mm-dd-yyyy
    JAN YYYY

Niezbyt często:

    YYYY-Www or YYYYWww - ISO week (day defaults to 0)
    YYYY-Www-D or YYYYWwwD - ISO week and day

Liczba dla wartości tygodnia ISO i wartości dnia jest zgodna z tą samą logiką co datetime.date.isocalendar().

Obsługiwane formaty godziny to:

    hh
    hh:mm or hhmm
    hh:mm:ss or hhmmss
    hh:mm:ss.ssssss (Up to 6 sub-second digits)
    dd-MMM 
    yyyy/mm 

Uwagi:

  • Północ może być reprezentowana jako 00:00 lub 24:00. Separatorem dziesiętnym może być kropka lub przecinek.
  • Daty można składać w postaci łańcuchów, z podwójnymi cudzysłowami, takimi jak "1958-01-16".

Funkcje spełniające kryteria

Funkcje pomocnicze, zwane również egzogennymi funkcjami, są funkcjami wejściowymi, które mogą wpływać na cel predykcji. Można użyć funkcji pomocniczych, aby uwzględnić dodatkowe kolumny z zestawu danych, aby poprawić predykcję i zwiększyć dokładność modelu. Na przykład w eksperymencie szeregów czasowych w celu przewidywania cen w czasie, elementem wspierający mogą być dane dotyczące sprzedaży i promocji. Lub, w modelu, który prognozuje zużycie energii, w tym dzienna temperatura sprawia, że prognoza jest bardziej dokładna.

Algorytmy i rurociągi, które korzystają z funkcji obsługi

Tylko podzbiór algorytmów pozwala na obsługę funkcji. Na przykład, Holt-winters i BATS nie wspierają korzystania z funkcji pomocniczych. Algorytmy, które nie obsługują funkcji obsługi, ignorują wybór opcji obsługi po uruchomieniu eksperymentu.

Niektóre algorytmy wykorzystują funkcje obsługi dla pewnych wariantów algorytmu, ale nie dla innych. Na przykład można wygenerować dwa różne potokiny z algorytmem losowego lasu, RegressorRandomForest i ExogenousRandomForestRegressor. Odmiana ExogenousRandomForestRegressor zapewnia obsługę funkcji obsługi, natomiast RandomForestRegressor nie obsługuje funkcji.

Ta tabela zawiera szczegółowe informacje o tym, czy algorytm zapewnia obsługę funkcji obsługi w eksperymencie szeregów czasowych:

Algorytm Potok Obsługa funkcji obsługi
Las losowy Regresor RandomForest Nie
Las losowy ExogenousRandomForestRegressor Tak
SVM SVM Nie
SVM ExogenousSVM Tak
Ensembler LocalizedFlattenEnsembler Tak
Ensembler DifferenceFlattenEnsembler Nie
Ensembler FlattenEnsembler Nie
Ensembler ExogenousLocalizedFlattenEnsembler Tak
Ensembler ExogenousDifferenceFlattenEnsembler Tak
Ensembler ExogenousFlattenEnsembler Tak
Regresja MT2RForecaster Nie
Regresja ExogenousMT2RForecaster Tak
Holt-winters HoltWinterDodawanie Nie
Holt-winters HoltWinterMultiplikatywny Nie
BATS BATS Nie
ARIMA ARIMA Nie
ARIMA ARIMAX Tak
ARIMA ARIMAX_RSAR Tak
ARIMA ARIMAX_PALR Tak
ARIMA ARIMAX_RAR Tak
ARIMA ARIMAX_DMLR Tak

Więcej inform.

Ocenianie modelu szeregów czasowych

Temat nadrzędny: Budowanie eksperymentu szeregów czasowych

Generative AI search and answer
These answers are generated by a large language model in watsonx.ai based on content from the product documentation. Learn more