Flyttande genomsnittlig prognostisering. Introduktion Som du kanske antar vi tittar på några av de mest primitiva tillvägagångssätten för prognoser Men förhoppningsvis är dessa åtminstone en värdefull introduktion till några av de datorproblem som är relaterade till att implementera prognoser i kalkylblad. I den här venen fortsätter vi med Börja i början och börja arbeta med Moving Average Forecasts. Moving Average Prognoser Alla är bekanta med att flytta genomsnittliga prognoser oavsett om de tror att de är Alla studenter gör dem hela tiden Tänk på dina testresultat i en kurs där du ska Har fyra tester under terminen Låt oss anta att du fick 85 på ditt första test. Vad skulle du förutse för ditt andra testresultat. Vad tycker du att din lärare skulle förutsäga för nästa testresultat. Vad tycker du att dina vänner kan förutsäga för din nästa testpoäng. Vad tycker du att dina föräldrar kan förutsäga för nästa testresultat. Oavsett om du blabbar kan du göra din fr Älskar och föräldrar, de och din lärare förväntar mycket sannolikt att du får något i det område du bara har fått. Väl, nu låt oss anta att trots din självbefrämjande till dina vänner överskattar du dig själv Och figur du kan studera mindre för det andra testet och så får du en 73. Nu vad är alla berörda och oroade kommer att förutse att du kommer att få på ditt tredje test Det finns två mycket troliga metoder för att utveckla en uppskattning oavsett Om de kommer att dela den med dig. De kan säga till sig själva: Den här killen sprider alltid rök om hans smarts. Han kommer att få ytterligare 73 om han är lycklig. Måste föräldrarna försöker vara mer stödjande och säga, ja, så Långt har du fått en 85 och en 73, så kanske du borde räkna med att få en 85 73 2 79 Jag vet inte, kanske om du gjorde mindre fester och inte vågade väsen överallt och om du började göra en mycket mer studerar du kan få en högre poäng. Båda dessa uppskattningar är faktiska Långa rörliga genomsnittliga prognoser. Den första använder endast din senaste poäng för att prognostisera din framtida prestation. Detta kallas en glidande genomsnittlig prognos med en dataperiod. Den andra är också en glidande genomsnittlig prognos men använder två dataperioder. Låt oss anta Att alla dessa människor bråkar på ditt stora sinne, har gissat dig och du bestämmer dig för att göra det bra på det tredje testet av dina egna skäl och att lägga en högre poäng framför dina allierade. Du tar testet och din poäng är faktiskt en 89 Allting, inklusive dig själv, är imponerad. Så nu har du det sista provet på terminen som kommer upp och som vanligt känns det som om du behöver göra alla förutspåringar om hur du ska göra det sista testet. Förhoppningsvis ser du mönster. Nu kan du förhoppningsvis se mönstret. Vad tror du är det mest exakta. Hälsa medan vi arbetar Nu återvänder vi till vårt nya rengöringsföretag som startas av din främmande halvsyster kallas Whistle medan vi arbetar. Du har några tidigare försäljningsdata Representeras av följande avsnitt från ett kalkylblad Vi presenterar först data för en treårs glidande medelprognos. Inträdet för cell C6 borde vara. Nu kan du kopiera den här cellformeln ner till de andra cellerna C7 till och med C11. Notera hur genomsnittet rör sig Över de senaste historiska data men använder exakt de tre senaste perioderna som finns tillgängliga för varje förutsägelse. Du bör också märka att vi inte behöver verkligen göra förutsägelserna för de senaste perioderna för att utveckla vår senaste förutsägelse. Detta är definitivt annorlunda än Exponentiell utjämningsmodell I ve inkluderade tidigare förutsägelser eftersom vi kommer att använda dem på nästa webbsida för att mäta prediktionsgiltighet. Nu vill jag presentera de analoga resultaten för en tvåårs glidande medelprognos. Inträdet för cell C5 borde vara. Nu kan kopiera den här cellformeln ner till de andra cellerna C6 till och med C11.Notice hur nu används bara de två senaste bitarna av historiska data för varje förutsägelse igen jag har med D de senaste förutsägelserna för illustrativa ändamål och för senare användning i prognosvalidering. Några andra saker som är viktiga att notera. För en m-periods rörlig genomsnittlig prognos används endast de senaste datavärdena för att göra förutsägelsen. Inget annat är nödvändigt. . För en m-period glidande medelprognos när du gör tidigare förutsägelser märker du att den första förutsägelsen sker i period m 1.But av dessa problem kommer att vara väldigt signifikant när vi utvecklar vår kod. Utveckling av rörlig genomsnittsfunktion Nu behöver vi utveckla Koden för det glidande medelprognosen som kan användas mer flexibelt Koden följer Observera att ingångarna är för antalet perioder du vill använda i prognosen och i rad historiska värden. Du kan lagra den i vilken arbetsbok du vill. Funktion MovingAverage Historical, NumberOfPeriods As Single Declaration och initialisering av variabler Dim Item Som variant Dim Counter som integer Dim ackumulering som Single Dim HistoricalSize som heltal. Initialiserande variabler Counter 1 Accumulation 0. Bestämning av storleken på Historical array HistoricalSize. For Counter 1 till NumberOfPeriods. Ackumulera lämpligt antal senast tidigare observerade värden. Akkumuleringsackumulering Historisk historisk storlek - AntalOfPeriods Counter. MovingAverage Accumulation NumberOfPeriods. Koden kommer att förklaras i klassen. Du vill placera funktionen på kalkylbladet så att resultatet av beräkningen visas där den ska som följande. Spreadsheet genomförande av säsongjustering och exponentiell utjämning. Det är enkelt att utföra säsongjustering och passa exponentiella utjämningsmodeller med Excel. Skärmbilderna och diagrammen nedan tas från ett kalkylblad som har ställts in för att illustrera multiplikativ säsongsjustering och linjär Exponentiell utjämning på följande kvartalsvisa försäljningsdata från Outboard Marine. För att få en kopia av kalkylarkfilen själv klickar du här. Den version av linjär exponentiell utjämning som kommer att användas här för demonstration är Brown s version, bara för att den kan implementeras med en singl e kolumn med formler och det finns bara en utjämningskonstant för att optimera. Det är oftast bättre att använda Holt s-versionen som har separata utjämningskonstanter för nivå och trend. Prognosprocessen fortskrider enligt följande. Först data är säsongrensade ii, då prognoser genereras För säsongsrensade data via linjär exponentiell utjämning och iii slutligen säsongrensade prognoserna resesasonaliseras för att få prognoser för originalserien. Säsongsjusteringsprocessen utförs i kolumner D till G. Det första steget i säsongjustering är att beräkna en centrerad rörelse medelvärde som utförs här i kolumn D Detta kan göras genom att medge genomsnittet av två års övergripande medelvärden som kompenseras av en period i förhållande till varandra. En kombination av två offsetmedelvärden i stället för ett enda genomsnitt är nödvändigt för centreringsändamål när antal årstider är jämnt Nästa steg är att beräkna förhållandet till glidande medelvärde - de ursprungliga uppgifterna divideras med moven I genomsnitt i varje period - som här görs i kolumn E Detta kallas också trendcykelkomponenten i mönstret, i den mån trend - och konjunkturseffekter kan anses vara allt som återstår efter medeltal över ett helt år s Värde av data Naturligtvis kan förändringar i månad till månad som inte beror på säsongsmässighet bestämmas av många andra faktorer, men tolvmånadersgenomsnittet släpper i stor utsträckning det beräknade säsongsindexet för varje säsong beräknas först medelvärdet av alla förhållanden för den aktuella säsongen, vilket görs i cellerna G3-G6 med en AVERAGEIF-formel. Medelvärdena är sedan återkalnade så att de summerar exakt 100 gånger antalet perioder under en säsong, eller 400 i detta fall, vilket görs i cellerna H3-H6 Nedan i kolumn F används VLOOKUP-formler för att infoga lämpligt säsongsindexvärde i varje rad i datatabellen, enligt kvartalet representerar det centrerat glidande medelvärdet och det säsongrensade da Ta en titt så här. Notera att det rörliga genomsnittet oftast ser ut som en mjukare version av den säsongrensade serien och det är kortare i båda ändarna. Ett annat arbetsblad i samma Excel-fil visar tillämpningen av den linjära exponentiella utjämningsmodellen på säsongrensade data, som börjar i kolumn GA-värdet för utjämningskonstanten alf, anges ovanför prognoskolumnen här i cell H9 och för att det är bekvämt tilldelas det namnet Alfabet Namnet är tilldelat med kommandot Infoga namn Skapa LES-modellen initialiseras genom att ställa in de första två prognoserna lika med det första verkliga värdet av den säsongrensade serien. Formeln som används här för LES-prognosen är recirkulär form av Brown s-modellen. Denna formel anges i cellen som motsvarar den tredje perioden här , cell H15 och kopieras därifrån Observera att LES-prognosen för den aktuella perioden avser de två föregående observationerna och de två föregående prognoserna erro rs, liksom värdet av alfa Således refererar prognosformeln i rad 15 endast till data som var tillgängliga i rad 14 och tidigare. Om vi ville använda enkla istället för linjär exponentiell utjämning kunde vi ersätta SES formel här istället Vi kan också använda Holt s snarare än Brown s LES-modellen, vilket skulle kräva två mer kolumner med formler för att beräkna nivån och trenden som används i prognosen. Felen beräknas i nästa kolumn här, kolumn J genom subtraherar prognoserna från de faktiska värdena Röda medelkvadratfelet beräknas som kvadratroten av felets varians plus kvadraten av medelvärdet. Detta följer av den matematiska identiteten MSE VARIANCE-fel AVERAGE-fel 2 Vid beräkning av medelvärdet och variansen av fel i denna formel är de två första perioderna uteslutna eftersom modellen inte faktiskt börjar prognoser förrän tredje raden 15 på kalkylbladet. Det optimala värdet av alfa kan hittas antingen av manuellt byta alfa tills den minsta RMSE hittas, annars kan du använda Solver för att utföra en exakt minimering. Värdet av alfabetet som Solver hittades visas här alpha 0 471. Det är vanligtvis en bra idé att plotta felet i modellen i transformerade enheter och även för att beräkna och plotta sina autokorrelationer vid lags på upp till en säsong Här är en tidsserieplot av säsongrensade fel. Felautokorrelationerna beräknas med hjälp av CORREL-funktionen för att beräkna korrelationerna av felen med sig själv med en eller flera perioder - detaljer visas i kalkylbladsmodellen Här är en plot av autokorrelationerna av felen vid de första fem lagsna. Autokorrelationerna vid lags 1 till 3 ligger mycket nära noll men spetsen vid lag 4 vars värdet är 0 35 är lite besvärligt - det tyder på att säsongsjusteringsprocessen inte har blivit fullständigt framgångsrik Det är dock faktiskt endast marginellt signifikanta 95 signifikansband för att testa om autocorre lations är signifikant olika än noll är ungefär plus-eller-minus 2 SQRT nk, där n är provstorleken och k är lagret. Här är n 38 och k varierar från 1 till 5, så kvadratroten-av-n - minus-k är omkring 6 för alla och därför är gränserna för att testa den statistiska signifikansen av avvikelser från noll ungefär plus-eller-minus 2 6 eller 0 33 Om du varierar värdet av alfa för hand i denna Excel-modell , Kan du observera effekten på tidsserierna och autokorrelationsdiagrammen för felen, liksom på det roten-kvadratiska felet, vilket kommer att illustreras nedan. I botten av kalkylbladet startas prognosformeln i framtiden Genom att bara ersätta prognoser för faktiska värden vid den punkt där de faktiska dataen löper ut, dvs där framtiden börjar. Med andra ord, i varje cell där ett framtida datavärde skulle inträffa införs en cellreferens som pekar på prognosen för den perioden Alla övriga formler kopieras helt enkelt nerifrån. Notera att felen för framtidsprognoserna alla beräknas vara noll. Det betyder inte att de faktiska felen kommer att vara noll, men snarare återspeglar det bara det faktum att vi förutspår att framtida data kommer att motsvara prognoserna i genomsnitt De resulterande LES-prognoserna för säsongrensade data ser så här ut. Med detta speciella värde av alfa, vilket är optimalt för prognoser med en period framåt, är den prognostiserade trenden något uppåt, vilket återspeglar den lokala trenden som observerades under de senaste 2 åren eller så För andra värden av alfa kan en väldigt annorlunda trendprognos erhållas. Det är vanligtvis en bra idé att se vad som händer med den långsiktiga trendprojektionen när alfa varieras, eftersom det värde som är bäst för kortsiktiga prognoser kommer att inte nödvändigtvis det bästa värdet för att förutsäga den mer avlägsna framtiden Till exempel är här resultatet som erhålls om värdet av alfa manuellt ställs in på 0 25. Den prognostiserade långsiktiga trenden är nu negati Ve snarare än positivt Med ett lägre alphavärde lägger modellen högre vikt vid äldre data vid uppskattningen av nuvarande nivå och trend och dess långsiktiga prognoser speglar den nedåtgående trend som observerats under de senaste 5 åren snarare än mer Nyligen uppåtgående trend Detta diagram illustrerar också tydligt hur modellen med ett mindre värde av alfa är långsammare att svara på vändpunkter i data och tenderar därför att göra ett fel på samma tecken för många perioder i rad. Dess 1 steg framåt Prognostiseringsfel är större i genomsnitt än de som erhölls före RMSE på 34 4 i stället för 27 4 och starkt positivt autokorrelerade. Lag-1 autokorrelationen av 0 56 överstiger väsentligen värdet 0 33 beräknat ovan för en statistiskt signifikant avvikelse från noll. Som ett alternativ till sänka värdet av alfa för att introducera mer konservatism till långsiktiga prognoser, en trenddämpningsfaktor läggs ibland till modellen för att göra den prognostiserade trenden plana Det sista steget i att bygga prognosmodellen är att rimliggöra LES-prognoserna genom att multiplicera dem med lämpliga säsongsindex. Således är de reseasonaliserade prognoserna i kolumn I helt enkelt produkten av säsongsindexen i kolumn F och säsongsmässigt justerade LES-prognoser i kolumn H. Det är relativt enkelt att beräkna konfidensintervaller för enstegsprognoser som gjorts av denna modell, beräkna först RMSE-roten-kvadratfelet, vilket är bara kvadratroten till MSE och beräkna sedan en konfidensintervall för den säsongrensade prognosen genom att lägga till och subtrahera två gånger RMSE Generellt är ett 95 konfidensintervall för en prognos för en period framåt ungefär lika med prognosen plus-eller-minus-två gånger den beräknade standardavvikelsen för prognosfel, förutsatt att felfördelningen är ungefär normal och provstorleken är tillräckligt stor, säg 20 eller mer här, RMSE istället för standardavvikelsen för provet rors är den bästa uppskattningen av standardavvikelsen för framtida prognosfel eftersom det tar hänsyn till såväl slumpmässiga variationer. Förtroendebegränsningarna för den säsongrensade prognosen återställs sedan tillsammans med prognosen genom att multiplicera dem med lämpliga säsongsindex. I detta fall RMSE är lika med 27 4 och den säsongrensade prognosen för den första framtida perioden dec-93 är 273 2 så säsongrensat 95 konfidensintervall är från 273 2-2 27 4 218 4 till 273 2 2 27 4 328 0 Multiplicera dessa gränser senast december säsongsindex på 68 61 erhåller vi lägre och övre konfidensgränser på 149 8 och 225 0 runt prognosen för 93-procentiga prognoser på 187 4.Förutsägningsgränser för prognoser mer än en period framöver kommer i allmänhet att öka som prognoshorisonten ökar på grund av osäkerhet om nivå och trend samt säsongsfaktorer men det är svårt att beräkna dem generellt med analysmetoder. Det lämpliga sättet att beräkna konfidensgränser f eller LES-prognosen är genom att använda ARIMA-teorin men osäkerheten i säsongsindex är en annan fråga. Om du vill ha ett realistiskt konfidensintervall för en prognos mer än en period framåt, med hänsyn till alla felkällor, är din bästa satsning att använda empiriska metoder till exempel för att få ett konfidensintervall för en 2-stegs prognos, kan du skapa en annan kolumn i kalkylbladet för att beräkna en 2-stegs prognos för varje period genom att startrampa enstegsprognosen. Beräkna sedan RMSE av de tvåstegsförutsägda prognosfelen och använda detta som utgångspunkt för ett konfidensintervall på 2 steg. I praktiken ger det glidande medelvärdet en bra uppskattning av medelvärdet av tidsserierna om medelvärdet är konstant eller långsamt Förändring Vid konstant medelvärde kommer det största värdet av m att ge de bästa uppskattningarna av det underliggande medelvärdet. En längre observationsperiod kommer att medeltala effekterna av variationen. Syftet med att tillhandahålla en mindre m är att tillåta prognosen t o reagera på en förändring i den underliggande processen För att illustrera föreslår vi en dataset som innehåller förändringar i det underliggande genomsnittet av tidsserierna Figuren visar tidsserierna som används för illustration tillsammans med den genomsnittliga efterfrågan från vilken serien genererades. Medelvärdet börjar som en konstant vid 10 Börjar vid tid 21, ökar den med en enhet i varje period tills den når värdet 20 vid tiden 30 Då blir det konstant igen Dataen simuleras genom att lägga till i genomsnitt ett slumpmässigt brus från en Normal fördelning med nollvärde och standardavvikelse 3 Resultatet av simuleringen avrundas till närmaste heltal. Tabellen visar de simulerade observationerna som används för exemplet. När vi använder tabellen måste vi komma ihåg att vid en viss tidpunkt endast de tidigare uppgifterna är Beräkningarna av modellparametern, för tre olika värden på m visas tillsammans med medelvärdet av tidsserierna i figuren nedan. Figuren visar medelvärdet för medelvärdet för medelvärdet vid e ach tid och inte prognosen Prognoserna skulle flytta de glidande medelkurvorna till höger av perioderna. En enda slutsats framgår tydligt av figuren. För alla tre uppskattningar ligger det glidande medeltalet bakom den linjära trenden, där fördröjningen ökar med m Lagen är Avståndet mellan modellen och uppskattningen i tidsdimensionen På grund av fördröjningen underskattar det rörliga genomsnittsvärdet observationerna som medelvärdet ökar. Uppskattarens förspänning är skillnaden vid en viss tid i modellens medelvärde och medelvärdet värde förutspått av det rörliga genomsnittet Förspänningen när medelvärdet ökar är negativt För ett minskande medelvärde är förspänningen positiv. Fördröjningen i tid och förspänningen som införs i uppskattningen är m-funktionen. Ju större värdet av m desto större är storleken på Lag och bias. For en kontinuerligt ökande serie med trend a ges värdena för fördröjning och förspänning av medelvärdena i medelvärdena nedan. Exempelkurvorna matchar inte dessa e kvoter eftersom exemplet modellen inte ständigt ökar, snarare börjar det som en konstant, förändras till en trend och blir sedan konstant igen. Exempelvis kurvorna påverkas av bruset. Den glidande genomsnittliga prognosen för perioder in i framtiden representeras genom att flytta kurvor till höger Fördröjningen och förspänningen ökar proportionellt Ekvationerna nedan indikerar fördröjningen och förspänningen av en prognosperioder i framtiden jämfört med modellparametrarna. Dessa formler är återigen en tidsserie med en konstant linjär trend. Vi borde inte vara förvånad över detta resultat Den glidande medelvärdesberäkningen baseras på antagandet om ett konstant medelvärde och exemplet har en linjär trend i medelvärdet under en del av studieperioden. Eftersom realtidsserier sällan exakt kommer att följa antagandena till en modell, vi Bör beredas för sådana resultat. Vi kan också dra slutsatsen av att siffraens variation har störst effekt för mindre m. Uppskattningen är mycket mer volat ile för det glidande medlet på 5 än det glidande medlet på 20 Vi har de motstridiga önskningarna att öka m för att minska effekten av variationer på grund av bullret och att minska m för att göra prognosen mer responsiv mot förändringar i medelvärdet. Felet är skillnaden mellan den faktiska data och det prognostiserade värdet Om tidsserierna verkligen är ett konstant värde är det förväntade värdet av felet noll och variansen av felet består av en term som är en funktion av och en andra term som är den varians av bruset. Den första termen är medelvärdet av variationen beräknad med ett urval av m-observationer, förutsatt att data kommer från en population med konstant medelvärde. Denna term minimeras genom att göra m så stor som möjligt. En stor m gör prognosen svara inte på en förändring i de underliggande tidsserierna För att prognosen ska kunna reagera på förändringar vill vi ha m så liten som möjligt 1, men detta ökar felvariationen. Praktisk prognos kräver ett mellanvärde. Förutspårning med Excel. The prognostillägg implementerar de glidande medelformlerna Exemplet nedan visar analysen som tillhandahålls av tillägget för provdata i kolumn B De första 10 observationerna är indexerade -9 till 0 Jämfört med tabellen ovan är periodindexen förskjuts av -10. De första tio observationerna ger startvärdena för uppskattningen och används för att beräkna det glidande medlet för period 0 MA 10-kolumnen C visar beräknade rörliga medelvärden Den glidande genomsnittsparametern m är i cell C3 Den Fore 1 kolumn D visar en prognos för en period in i framtiden Prognosintervallet ligger i cell D3 När prognosintervallet ändras till ett större antal, flyttas numren i Fore-kolumnen. Err 1-kolumnen E visar skillnaden mellan observationen och Prognosen Till exempel är observationen vid tidpunkten 1 6 Det prognostiserade värdet från det glidande medlet vid tidpunkten 0 är 11 1 Felet är då -5 1 Standardavvikelsen och medelvärdesavvikelsen MAD beräknas i cellerna E6 respektive E7.
No comments:
Post a Comment