Delen via


ForecastingSettings Klas

Prognose-instellingen voor een AutoML-taak.

Overname
azure.ai.ml.entities._mixins.RestTranslatableMixin
ForecastingSettings

Constructor

ForecastingSettings(*, country_or_region_for_holidays: str | None = None, cv_step_size: int | None = None, forecast_horizon: str | int | None = None, target_lags: str | int | List[int] | None = None, target_rolling_window_size: str | int | None = None, frequency: str | None = None, feature_lags: str | None = None, seasonality: str | int | None = None, use_stl: str | None = None, short_series_handling_config: str | None = None, target_aggregate_function: str | None = None, time_column_name: str | None = None, time_series_id_column_names: str | List[str] | None = None, features_unknown_at_forecast_time: str | List[str] | None = None)

Parameters

Name Description
country_or_region_for_holidays
Vereist

Het land/de regio die wordt gebruikt om vakantiefuncties te genereren. Deze moeten ISO 3166 land-/regiocode van twee letters zijn, bijvoorbeeld 'US' of 'GB'.

cv_step_size
Vereist

Aantal perioden tussen de origin_time van de ene CV-vouw en de volgende. Als bijvoorbeeld n_step = 3 voor dagelijkse gegevens, is de oorsprongstijd voor elke vouw drie dagen uit elkaar.

forecast_horizon
Vereist

De gewenste maximale prognoseperiode in eenheden van de tijdreeksfrequentie. De standaardwaarde is 1.

Eenheden zijn gebaseerd op het tijdsinterval van uw trainingsgegevens, bijvoorbeeld maandelijks, wekelijks dat de prognosefunctie moet voorspellen. Wanneer het taaktype een prognose is, is deze parameter vereist. Zie Een tijdreeksprognosemodel automatisch trainen voor meer informatie over het instellen van prognoseparameters.

target_lags
Vereist

Het aantal eerdere perioden dat uit de doelkolom moet worden achtergelopen. De vertragingen zijn standaard uitgeschakeld.

Bij het voorspellen vertegenwoordigt deze parameter het aantal rijen om de doelwaarden achter te laten op basis van de frequentie van de gegevens. Dit wordt weergegeven als een lijst of één geheel getal. Vertraging moet worden gebruikt wanneer de relatie tussen de onafhankelijke variabelen en de afhankelijke variabele niet standaard overeenkomt of correleert. Wanneer u bijvoorbeeld de vraag voor een product probeert te voorspellen, kan de vraag in een maand afhankelijk zijn van de prijs van specifieke goederen 3 maanden ervoor. In dit voorbeeld wilt u het doel (de vraag) mogelijk 3 maanden negatief laten liggen, zodat het model wordt getraind op de juiste relatie. Zie Een tijdreeksprognosemodel automatisch trainen voor meer informatie.

Opmerking over automatische detectie van doelvertragingen en de grootte van doorlopende vensters. Zie de bijbehorende opmerkingen in de sectie Voortschrijdend venster. We gebruiken het volgende algoritme om de optimale doelvertraging en de grootte van het doorlopende venster te detecteren.

  1. Maak een schatting van de maximale vertragingsvolgorde voor de functieselectie voor terugkijken. In ons geval is het het aantal perioden tot de volgende datumfrequentiegranulariteit, d.w.w. als frequentie dagelijks is, is het een week (7), als het een week is, is het maand (4). Deze waarden vermenigvuldigd met twee zijn de grootst mogelijke waarden van vertragings-/doorlopende vensters. In onze voorbeelden houden we rekening met de maximale vertragingsvolgorde van respectievelijk 14 en 8).

  2. Maak een niet-seizoensgebonden reeks door trend- en restonderdelen toe te voegen. Dit wordt gebruikt in de volgende stap.

  3. Schat de PACF - Gedeeltelijke automatische correlatiefunctie op de op de gegevens van (2) en zoek naar punten, waarbij de automatische correlatie significant is, d.w.z. de absolute waarde is meer dan 1,96/square_root (maximale vertragingswaarde), wat overeenkomt met de significantie van 95%.

  4. Als alle punten belangrijk zijn, beschouwen we dit als een sterke seizoensgebondenheid en maken we geen terugblikfuncties.

  5. We scannen de PACF-waarden vanaf het begin en de waarde voordat de eerste onbeduidende automatische correlatie de vertraging aangeeft. Als het eerste significante element (waarde correleert met zichzelf) wordt gevolgd door onbeduidend, is de vertraging 0 en gebruiken we geen functies om terug te kijken.

target_rolling_window_size
Vereist

Het aantal afgelopen perioden dat is gebruikt om een voortschrijdend venster van de doelkolom te maken.

Bij het voorspellen vertegenwoordigt deze parameter n historische perioden die moeten worden gebruikt om voorspelde waarden te genereren, <= grootte van trainingsset. Als u dit weglaat, is n de volledige grootte van de trainingsset. Geef deze parameter op als u alleen rekening wilt houden met een bepaalde hoeveelheid geschiedenis bij het trainen van het model. Als dit is ingesteld op 'auto', wordt rolling window geschat als de laatste waarde waarbij de PACF meer is dan de significantiedrempelwaarde. Zie target_lags sectie voor meer informatie.

frequency
Vereist

Prognosefrequentie.

Bij het maken van prognoses geeft deze parameter de periode aan waarmee de prognose wordt gewenst, bijvoorbeeld dagelijks, wekelijks, jaarlijks, enzovoort. De prognosefrequentie is standaard de frequentie van de gegevensset. U kunt deze desgewenst instellen op een hogere (maar niet minder) dan de frequentie van de gegevensset. We aggregeren de gegevens en genereren de resultaten met de prognosefrequentie. Voor dagelijkse gegevens kunt u bijvoorbeeld instellen dat de frequentie dagelijks, wekelijks of maandelijks is, maar niet per uur. De frequentie moet een pandas-offsetalias zijn. Raadpleeg de pandas-documentatie voor meer informatie: https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#dateoffset-objects

feature_lags
Vereist

Vlag voor het genereren van vertragingen voor de numerieke functies met 'auto' of Geen.

seasonality
Vereist

Stel de seizoensgebondenheid van tijdreeksen in als een geheel getal van de reeksfrequentie. Als seizoensgebondenheid is ingesteld op 'auto', wordt dit afgeleid. Als deze optie is ingesteld op Geen, wordt uitgegaan van niet-seizoensgebonden, wat gelijk is aan seizoensgebondenheid=1.

use_stl
Vereist

STL-ontleding van de doelkolom van de tijdreeks configureren. use_stl kunnen drie waarden aannemen: Geen (standaard) - geen stl-decompositie, 'season' - alleen seizoencomponent genereren en season_trend - zowel seizoens- als trendcomponenten genereren.

short_series_handling_config
Vereist

De parameter die definieert hoe autoML korte tijdreeksen moet verwerken.

Mogelijke waarden: 'auto' (standaard), 'pad', 'drop' en None.

  • automatische korte reeksen worden opgevuld als er geen lange reeksen zijn, anders worden korte reeksen verwijderd.
  • alle korte reeksen worden opgevuld.
  • alle korte reeksen worden verwijderd'.
  • Geen de korte reeks wordt niet gewijzigd. Als dit is ingesteld op 'pad', wordt de tabel opgevuld met de nullen en lege waarden voor de regressors en willekeurige waarden voor het doel met het gemiddelde gelijk aan de doelwaarde mediaan voor de opgegeven tijdreeks-id. Als de mediaan meer is dan of gelijk is aan nul, wordt de minimale opgevulde waarde met nul geknipt. Invoer:

Datum

numeric_value

Tekenreeks

Doel

2020-01-01

23

groen

55

De uitvoer ervan uitgaande dat het minimale aantal waarden vier is:

Datum

numeric_value

Tekenreeks

Doel

2019-12-29

0

NA

55.1

2019-12-30

0

NA

55.6

2019-12-31

0

NA

54.5

2020-01-01

23

groen

55

Opmerking: We hebben twee parameters short_series_handling_configuration en verouderde short_series_handling. Wanneer beide parameters zijn ingesteld, worden ze gesynchroniseerd zoals wordt weergegeven in de onderstaande tabel (short_series_handling_configuration en short_series_handling zijn gemarkeerd als respectievelijk handling_configuration en verwerking).

Behandeling

configuratie verwerken

resulterende verwerking

resulterende verwerkingconfiguratie

Waar

auto

Waar

auto

Waar

pad

Waar

auto

Waar

drop

Waar

auto

Waar

Geen

False

Geen

False

auto

False

Geen

Niet waar

pad

False

Geen

Niet waar

drop

False

Geen

Niet waar

Geen

False

Geen

target_aggregate_function
Vereist
str

De functie die moet worden gebruikt om de doelkolom van de tijdreeks te aggregeren om te voldoen aan een door de gebruiker opgegeven frequentie. Als de target_aggregation_function is ingesteld, maar de freq-parameter niet is ingesteld, treedt de fout op. De mogelijke doelaggregatiefuncties zijn: 'sum', 'max', 'min' en 'mean'.

  • De waarden van de doelkolom worden geaggregeerd op basis van de opgegeven bewerking. Normaal gesproken is som geschikt voor de meeste scenario's.

  • Numerieke voorspellende kolommen in uw gegevens worden geaggregeerd op som, gemiddelde, minimumwaarde en maximumwaarde. Als gevolg hiervan genereert geautomatiseerde ML nieuwe kolommen met achtervoegsel met de naam van de aggregatiefunctie en wordt de geselecteerde aggregatiebewerking toegepast.

  • Voor categorische voorspellende kolommen worden de gegevens geaggregeerd op modus, de meest prominente categorie in het venster.

  • Datum voorspellende kolommen worden geaggregeerd op basis van minimumwaarde, maximumwaarde en modus.

Freq

target_aggregation_function

Mechanisme voor regelmatigheidsfixing van gegevens

Geen (standaard)

Geen (standaard)

De aggregatie wordt niet toegepast. Als de geldige frequentie niet kan worden bepaald, wordt de fout gegenereerd.

Bepaalde waarde

Geen (standaard)

De aggregatie wordt niet toegepast. Als het aantal gegevenspunten dat aan het opgegeven frequentieraster voldoet kleiner is dan 90%, worden deze punten verwijderd, anders wordt de fout gegenereerd.

Geen (standaard)

Aggregatiefunctie

De fout over de parameter missingfrequency wordt gegenereerd.

Bepaalde waarde

Aggregatiefunctie

Aggregeren naar frequentie met behulp van een afzonderlijke aggregatiefunctie.

time_column_name
Vereist

De naam van de tijdkolom. Deze parameter is vereist bij het voorspellen van de datum/tijd-kolom in de invoergegevens die worden gebruikt voor het samenstellen van de tijdreeks en het afleiden van de frequentie.

time_series_id_column_names
Vereist

De namen van kolommen die worden gebruikt om een tijdreeks te groepeert. Het kan worden gebruikt om meerdere reeksen te maken. Als de kolomnamen van tijdreeks-id's niet zijn gedefinieerd of als de opgegeven id-kolommen niet alle reeksen in de gegevensset identificeren, worden de tijdreeks-id's automatisch gemaakt voor uw gegevensset.

features_unknown_at_forecast_time
Vereist

De functiekolommen die beschikbaar zijn voor training, maar die onbekend zijn op het moment van prognose/deductie. Als features_unknown_at_forecast_time is ingesteld op een lege lijst, wordt ervan uitgegaan dat alle functiekolommen in de gegevensset bekend zijn op het tijdstip van deductie. Als deze parameter niet is ingesteld, is de ondersteuning voor toekomstige functies niet ingeschakeld.

Keyword-Only Parameters

Name Description
country_or_region_for_holidays
Vereist
cv_step_size
Vereist
forecast_horizon
Vereist
target_lags
Vereist
target_rolling_window_size
Vereist
frequency
Vereist
feature_lags
Vereist
seasonality
Vereist
use_stl
Vereist
short_series_handling_config
Vereist
target_aggregate_function
Vereist
time_column_name
Vereist
time_series_id_column_names
Vereist
features_unknown_at_forecast_time
Vereist