Delen via


Deductie en evaluatie van prognosemodellen (preview)

Belangrijk

Deze functie is momenteel beschikbaar als openbare preview-versie. Deze preview-versie wordt geleverd zonder service level agreement en wordt niet aanbevolen voor productieworkloads. Misschien worden bepaalde functies niet ondersteund of zijn de mogelijkheden ervan beperkt.

Zie Supplemental Terms of Use for Microsoft Azure Previews (Aanvullende gebruiksvoorwaarden voor Microsoft Azure-previews) voor meer informatie.

In dit artikel worden concepten geïntroduceerd met betrekking tot modeldeductie en -evaluatie in prognosetaken. Instructies en voorbeelden voor trainingsprognosemodellen in AutoML vindt u in het artikel AutoML instellen voor tijdreeksprognoses .

Zodra u AutoML hebt gebruikt om een beste model te trainen en te selecteren, bestaat de volgende stap uit het genereren van prognoses en vervolgens, indien mogelijk, het evalueren van de nauwkeurigheid van een testset op basis van de trainingsgegevens. Zie onze handleiding over deductie- en evaluatieonderdelen voor meer informatie over het instellen en uitvoeren van evaluatiemodellen in geautomatiseerde machine learning.

Deductiescenario's

In machine learning is deductie het proces van het genereren van modelvoorspellingen voor nieuwe gegevens die niet in de training worden gebruikt. Er zijn meerdere manieren om voorspellingen te genereren in prognoses vanwege de tijdafhankelijkheid van de gegevens. Het eenvoudigste scenario is wanneer de deductieperiode direct volgt op de trainingsperiode en we voorspellingen genereren tot aan de prognoseperiode. Dit scenario wordt geïllustreerd in het volgende diagram:

Diagram met een prognose direct na de trainingsperiode.

In het diagram ziet u twee belangrijke deductieparameters:

  • De contextlengte of de hoeveelheid geschiedenis die het model nodig heeft om een prognose te maken,
  • De prognosehorizg, die aangeeft hoe ver vooruit in de tijd de prognosefunctie is getraind om te voorspellen.

Bij prognosemodellen wordt meestal gebruikgemaakt van historische informatie, de context, om op tijd voorspellingen te doen tot aan de prognosehorizg. Wanneer de context deel uitmaakt van de trainingsgegevens, slaat AutoML op wat het nodig heeft om prognoses te maken, zodat u deze niet expliciet hoeft op te geven.

Er zijn twee andere deductiescenario's die ingewikkelder zijn:

  • Het genereren van voorspellingen verder in de toekomst dan de prognosehorizre,
  • Voorspellingen krijgen wanneer er een hiaat is tussen de training en deductieperioden.

We bekijken deze gevallen in de volgende subsecties.

Voorspelling voorbij de prognoseperiode: recursieve prognose

Wanneer u prognoses na de horizon nodig hebt, past AutoML het model recursief toe gedurende de deductieperiode. Dit betekent dat voorspellingen van het model worden teruggegeven als invoer om voorspellingen te genereren voor volgende prognosevensters. In het volgende diagram ziet u een eenvoudig voorbeeld:

Diagram met een recursieve prognose voor een testset.

Hier genereren we prognoses voor een periode die drie keer zo lang is als de horizon door voorspellingen uit het ene venster te gebruiken als context voor het volgende venster.

Waarschuwing

Recursieve prognoses vormen modelleringsfouten, zodat voorspellingen minder nauwkeurig worden naarmate ze zich verder van de oorspronkelijke prognoseperiode bevinden. In dit geval kunt u een nauwkeuriger model vinden door opnieuw te trainen met een langere horizon.

Voorspelling met een hiaat tussen training en deductieperioden

Stel dat u een model in het verleden hebt getraind en u dit wilt gebruiken om voorspellingen te doen op basis van nieuwe waarnemingen die nog niet beschikbaar waren tijdens de training. In dit geval is er een tijdsverschil tussen de trainings- en deductieperioden:

Diagram met een prognose met een hiaat tussen de training en deductieperioden.

AutoML ondersteunt dit deductiescenario, maar u moet de contextgegevens in de onderbrekingsperiode opgeven, zoals wordt weergegeven in het diagram. De voorspellingsgegevens die worden doorgegeven aan het deductieonderdeel , hebben waarden nodig voor functies en geobserveerde doelwaarden in de hiaat en ontbrekende waarden of 'NaN'-waarden voor het doel in de deductieperiode. In de volgende tabel ziet u een voorbeeld van dit patroon:

Tabel met een voorbeeld van voorspellingsgegevens wanneer er een hiaat is tussen de trainings- en deductieperioden.

Hier worden bekende waarden van het doel en functies opgegeven voor 2023-05-01 tot en met 2023-05-03. Ontbrekende doelwaarden vanaf 2023-05-04 geven aan dat de deductieperiode op die datum begint.

AutoML gebruikt de nieuwe contextgegevens voor het bijwerken van vertraging en andere lookbackfuncties, en ook voor het bijwerken van modellen zoals ARIMA die een interne status behouden. Met deze bewerking worden modelparameters niet bijgewerkt of aangepast.

Modelevaluatie

Evaluatie is het proces van het genereren van voorspellingen op een testset op basis van de trainingsgegevens en het berekenen van metrische gegevens op basis van deze voorspellingen die de modelimplementatiebeslissingen begeleiden. Daarom is er een deductiemodus die specifiek geschikt is voor modelevaluatie: een doorlopende prognose. We bekijken dit in de volgende subsectie.

Doorlopende prognose

Een best practice-procedure voor het evalueren van een prognosemodel is om de getrainde forecaster in de tijd vooruit te draaien over de testset, waarbij het gemiddelde van de metrische foutgegevens wordt berekend over verschillende voorspellingsvensters. Deze procedure wordt ook wel een backtest genoemd, afhankelijk van de context. In het ideale opzicht is de testset voor de evaluatie lang ten opzichte van de prognoseperiode van het model. Schattingen van voorspellingsfouten kunnen anders statistisch ruis veroorzaken en daarom minder betrouwbaar zijn.

In het volgende diagram ziet u een eenvoudig voorbeeld met drie prognosevensters:

Diagram met een doorlopende prognose voor een testset.

Het diagram illustreert drie rolling evaluatieparameters:

  • De contextlengte of de hoeveelheid geschiedenis die het model nodig heeft om een prognose te maken,
  • De prognosehorizg, die aangeeft hoe ver vooruit in de tijd de forecaster is getraind om te voorspellen,
  • De stapgrootte, dit is hoe ver vooruit in de tijd het lopende venster gaat bij elke iteratie in de testset.

Belangrijk is dat de context meegaat met het prognosevenster. Dit betekent dat werkelijke waarden uit de testset worden gebruikt om prognoses te maken wanneer ze binnen het huidige contextvenster vallen. De laatste datum van werkelijke waarden die voor een bepaald prognosevenster worden gebruikt, wordt de oorsprongstijd van het venster genoemd. In de volgende tabel ziet u een voorbeelduitvoer van de doorlopende prognose met drie vensters met een horizon van drie dagen en een stapgrootte van één dag:

Voorbeeld van een uitvoertabel van een doorlopende prognose.

Met een tabel als deze kunnen we de prognoses versus de werkelijke waarden visualiseren en de gewenste metrische evaluatiegegevens berekenen. AutoML-pijplijnen kunnen rolling prognoses genereren voor een testset met een deductieonderdeel.

Notitie

Wanneer de testperiode dezelfde lengte heeft als de prognosehorizk, geeft een doorlopende prognose één venster met prognoses tot aan de horizon.

Metrische evaluatiegegevens

De keuze voor evaluatiesamenvatting of metrische gegevens wordt meestal bepaald door het specifieke bedrijfsscenario. Enkele veelvoorkomende opties zijn onder andere:

  • Plots van geobserveerde doelwaarden versus voorspelde waarden om te controleren of bepaalde dynamiek van de gegevens wordt vastgelegd door het model,
  • MAPE (gemiddelde absolute foutpercentage) tussen werkelijke en voorspelde waarden,
  • RMSE (wortel gemiddelde kwadratische fout), mogelijk met een normalisatie, tussen werkelijke en voorspelde waarden,
  • MAE (gemiddelde absolute fout), mogelijk met een normalisatie, tussen werkelijke en voorspelde waarden.

Er zijn veel andere mogelijkheden, afhankelijk van het bedrijfsscenario. Mogelijk moet u uw eigen hulpprogramma's voor naverwerking maken voor het berekenen van metrische evaluatiegegevens op basis van deductieresultaten of voortschrijdende prognoses. Zie voor meer informatie over metrische gegevens ons artikel regressie en prognose van metrische gegevens .

Volgende stappen