De belangrijkste factoren die van invloed zijn op de snelheid van uw prognose-engine
Hoe lang moet het duren voordat een vraagprognose wordt berekend met behulp van statistische methoden? Deze vraag wordt vaak gesteld door klanten en prospects. Het antwoord hangt er echt van af. Voorspellingsresultaten voor een enkel item kunnen in een oogwenk worden berekend, in slechts enkele honderdsten van een seconde, maar soms kan het zelfs vijf seconden duren. Om de verschillen te begrijpen, is het belangrijk om te begrijpen dat er meer bij komt kijken dan alleen de rekenkundige berekeningen zelf door te spitten. Hier zijn zes factoren die de snelheid van uw prognose-engine beïnvloeden.
1) Prognosemethode. Traditionele tijdreeks-extrapolatieve technieken (zoals exponentiële afvlakking en voortschrijdend-gemiddeldemethoden) zijn, mits slim gecodeerd, razendsnel. De automatische prognose-engine Smart Forecast, die gebruikmaakt van deze technieken en onze software voor vraagplanning en voorraadoptimalisatie aandrijft, kan bijvoorbeeld in 1 seconde statistische prognoses voor 1000 artikelen genereren! Extrapolatieve methoden produceren een verwachte voorspelling en een samenvattende maatstaf voor de voorspellingsonzekerheid. Complexere modellen in ons platform die probabilistische vraagscenario's genereren, duren echter veel langer bij dezelfde computerbronnen. Dit komt deels omdat ze een veel groter outputvolume creëren, meestal duizenden plausibele toekomstige vraagreeksen. Meer tijd, ja, maar geen tijdverspilling, aangezien deze resultaten veel vollediger zijn en de basis vormen voor downstream-optimalisatie van voorraadbeheerparameters.
2) Computerbronnen. Hoe meer bronnen u naar de berekening gooit, hoe sneller het zal zijn. Middelen kosten echter geld en het is misschien niet economisch om in deze middelen te investeren. Om bijvoorbeeld bepaalde soorten op machine learning gebaseerde prognoses te laten werken, moet het systeem multithread-berekeningen over meerdere servers uitvoeren om snel resultaten te leveren. Zorg er dus voor dat u de veronderstelde rekenresources en bijbehorende kosten begrijpt. Onze berekeningen vinden plaats in de Amazon Web Services-cloud, dus het is mogelijk om desgewenst voor een groot deel van de parallelle berekeningen te betalen.
3) Aantal tijdreeksen. Moet u slechts een paar honderd artikelen op één locatie of vele duizenden artikelen op tientallen locaties voorspellen? Hoe groter het aantal combinaties van SKU x Locatie, hoe langer de benodigde tijd. Het is echter mogelijk om de tijd om vraagprognoses te krijgen te verkorten door een betere vraagclassificatie. Het is bijvoorbeeld niet belangrijk om elke combinatie van SKU x Locatie te voorspellen. Moderne software voor vraagplanning kan de gegevens eerst subsetten op basis van volume-/frequentieclassificaties voordat de prognose-engine wordt uitgevoerd. We hebben situaties waargenomen waarin meer dan een miljoen combinaties van SKU x Locatie bestonden, maar waar slechts tien procent vraag naar had in de voorgaande twaalf maanden.
4) Historisch emmeren. Maakt u prognoses met behulp van dagelijkse, wekelijkse of maandelijkse tijdsintervallen? Hoe gedetailleerder de bucketing, hoe meer tijd het kost om statistische prognoses te berekenen. Veel bedrijven zullen zich afvragen: "Waarom zou iemand dagelijks prognoses willen maken?" State-of-the-art software voor vraagvoorspelling kan echter gebruikmaken van dagelijkse gegevens om gelijktijdige dag-van-week- en week-van-maandpatronen te detecteren die anders zouden worden verdoezeld met traditionele maandelijkse vraagbuckets. En de snelheid van zaken blijft toenemen, wat de concurrentiekracht van het traditionele maandelijkse planningstempo bedreigt.
5) Hoeveelheid geschiedenis. Beperkt u het model door alleen de meest recente vraaghistorie in te voeren, of voert u alle beschikbare historie in de vraagvoorspellingssoftware? Hoe meer historie u het model voedt, hoe meer gegevens er moeten worden geanalyseerd en hoe langer het gaat duren.
6) Aanvullende analytische verwerking. Tot nu toe hebben we ons voorgesteld om de vraaggeschiedenis van items in te voeren en prognoses te krijgen. Maar het proces kan ook aanvullende analytische stappen omvatten die de resultaten kunnen verbeteren. Voorbeelden zijn onder meer:
a) Uitbijterdetectie en -verwijdering om de vervorming te minimaliseren die wordt veroorzaakt door eenmalige gebeurtenissen zoals stormschade.
b) Machine learning dat beslist hoeveel geschiedenis moet worden gebruikt voor elk item door verandering van regime te detecteren.
c) Causale modellering die identificeert hoe veranderingen in vraagbepalende factoren (zoals prijs, rentevoet, klantensentiment, enz.) de toekomstige vraag beïnvloeden.
d) Melding van uitzonderingen die data-analyse gebruikt om ongebruikelijke situaties te identificeren die nadere beoordeling door het management verdienen.
De rest van het verhaal. Het is ook van cruciaal belang om te begrijpen dat de tijd om een antwoord te krijgen meer inhoudt dan de snelheid van het voorspellen van berekeningen per se. Gegevens moeten in het geheugen worden geladen voordat de berekening kan beginnen. Zodra de prognoses zijn berekend, moet uw browser de resultaten laden zodat ze op het scherm kunnen worden weergegeven zodat u ermee kunt werken. Als u een product opnieuw voorspelt, kunt u ervoor kiezen om de resultaten op te slaan. Als u werkt met producthiërarchieën (het samenvoegen van artikelprognoses tot productfamilies, families tot productlijnen, enz.), zal de nieuwe prognose de hiërarchie beïnvloeden en moet alles op elkaar worden afgestemd. Dit kost allemaal tijd.
Snel genoeg voor jou? Wanneer u software evalueert om te zien of aan uw behoefte aan snelheid zal worden voldaan, kan dit allemaal worden getest als onderdeel van een proof of concept of proef aangeboden door leveranciers van software voor vraagplanning. Test het uit, en zorg ervoor dat de berekenen, laden en opslaan tijden zijn acceptabel gezien de hoeveelheid gegevens en prognosemethoden die u wilt gebruiken om uw proces te ondersteunen.