Moving Average Forecasting. Introduction Som du kanskje antar vi ser på noen av de mest primitive tilnærmingene til prognoser, men forhåpentligvis er disse minst en verdig innføring i noen av databehandlingsproblemene knyttet til implementering av prognoser i regneark. I denne venen fortsetter vi med begynner i begynnelsen og begynner å jobbe med Moving Average Forecasts. Moving Average Forecasts Alle er kjent med å flytte gjennomsnittlige prognoser, uavhengig av om de tror de er Alle studenter gjør dem hele tiden Tenk på testpoengene dine i et kurs der du skal ha fire tester i løpet av semesteret. La oss anta at du fikk en 85 på din første test. Hva ville du forutsi for din andre test score. Hva tror du at din lærer ville forutsi for din neste test score. Hva tror du dine venner kan forutsi for din neste test score. Hva tror du at foreldrene dine kan forutsi for din neste testscore. Uansett hvilken blabbing du kan gjøre til din fr Jeg og foreldrene mine, de og din lærer, er veldig sannsynlig å forvente deg å få noe i det 85 du nettopp har fått. Vel, la oss nå anta at til tross for selvforfremmelse til vennene dine, overestimerer du deg selv og finne ut at du kan studere mindre for den andre testen, og så får du en 73. Nå er det alle de bekymrede og ubekymrede kommer til å forutse at du kommer på den tredje testen. Det er to svært sannsynlige tilnærminger for dem å utvikle et estimat uavhengig av om de vil dele det med deg. De kan si til seg selv: Denne fyren blåser alltid røyk om hans smarts. Han kommer til å få en annen 73 hvis han er heldig. Måtte foreldrene forsøke å være mer støttende og si, vel, så langt du har fått en 85 og en 73, så kanskje du burde finne ut på å få en 85 73 2 79 Jeg vet ikke, kanskje hvis du gjorde mindre fester og ikke ville veksle vevet over alt, og hvis du begynte å gjøre en mye mer å studere du kan få en høyere score. Både disse estimatene er faktiske Den bevegelige gjennomsnittlige prognosen. Den første bruker bare din siste poengsum for å prognose din fremtidige ytelse. Dette kalles en gjennomsnittlig gjennomsnittlig prognose ved hjelp av en dataperiode. Den andre er også en flytende gjennomsnittlig prognose, men bruker to perioder med data. at alle disse menneskene bråser på ditt store sinn, har slags pisset deg av og du bestemmer deg for å gjøre det bra på den tredje testen av dine egne grunner og å sette en høyere poengsum foran dine allierte. Du tar testen og poengsummen din er egentlig en 89 Alle, inkludert deg selv, er imponert. Så nå har du den endelige testen av semesteret som kommer opp, og som vanlig føler du behovet for å få alle til å gjøre sine spådommer om hvordan du skal gjøre på den siste testen. Vel, forhåpentligvis ser du pattern. Now, forhåpentligvis kan du se mønsteret som tror du er den mest nøyaktige. Whistle Mens vi jobber nå, går vi tilbake til vårt nye rengjøringsfirma som startet av din fremmedgjorte halv søster, kalt Whistle While we Work Du har noen tidligere salgsdata representert av følgende seksjon fra et regneark Vi presenterer først dataene for en tre-års glidende gjennomsnittlig prognose. Oppføringen for celle C6 skal være. Nå kan du kopiere denne celleformelen ned til de andre cellene C7 til og med C11. Notat hvordan gjennomsnittet beveger seg over de nyeste historiske dataene, men bruker nøyaktig de tre siste perioder som er tilgjengelige for hver prediksjon. Du bør også legge merke til at vi ikke virkelig trenger å gjøre spådommene for de siste perioder for å utvikle vår siste prediksjon. Dette er definitivt forskjellig fra eksponensiell utjevningsmodell Jeg har inkludert de siste spådommene fordi vi vil bruke dem på neste nettside for å måle prediksjonens gyldighet. Nå vil jeg presentere de analoge resultatene for en to-års glidende gjennomsnittlig prognose. Oppføringen for celle C5 skal være. Nå kan kopiere denne celleformelen ned til de andre cellene C6 til C11. Notat hvor nå blir bare de to siste stykkene av historiske data brukt for hver prediksjon igjen, jeg har med d de siste spådommene for illustrative formål og for senere bruk i prognose validering. Som andre ting som er viktig å legge merke til. For en m-periode beveger gjennomsnittlig prognose bare de nyeste dataverdiene er brukt til å foreta prognosen Ingenting annet er nødvendig. For en m-periode som går i gjennomsnitt, vil prognosen ved første forsinkelse oppstå i perioden m 1.Bet av disse problemene vil være svært viktig når vi utvikler vår kode. Utvikle den bevegelige gjennomsnittsfunksjonen Nå må vi utvikle koden for den bevegelige gjennomsnittlige prognosen som kan brukes mer fleksibelt Koden følger Legg merke til at inngangene er for antall perioder du vil bruke i prognosen og rekke historiske verdier. Du kan lagre den i hvilken arbeidsbok du vil. Funksjon MovingAverage Historical, NumberOfPeriods Som Single Declaration og initialisering av variabler Dim Item Som variant Dim Counter Som Integer Dim Akkumulering Som Single Dim HistoricalSize Som Integer. Initialisering av variabler Teller 1 Akkumulering 0. Bestemme størrelsen på Historisk matrise HistoricalSize. For Counter 1 til NumberOfPeriods. Akkumulere riktig antall siste tidligere observerte verdier. Akkumulasjonsakkumulering Historisk Historisk størrelse - AntallOfPeriods Counter. MovingAverage AkkumuleringsnummerOfPeriods. Koden vil bli forklart i klassen. Du vil plassere funksjonen på regnearket slik at resultatet av beregningen vises der den skal som følgende. I praksis vil det bevegelige gjennomsnittet gi et godt estimat av gjennomsnittet av tidsseriene dersom gjennomsnittet er konstant eller sakte endring. Ved konstant gjennomsnitt vil den største verdien av m gi de beste estimatene av det underliggende mener En lengre observasjonstid vil gjennomsnittse effektene av variabilitet. Formålet med å gi en mindre m er å la prognosen svare på en endring i den underliggende prosessen. For å illustrere foreslår vi et datasett som inkorporerer endringer i det underliggende gjennomsnittet av tidsserien Figuren viser tidsserier som brukes til illustrasjon sammen med den gjennomsnittlige etterspørselen som se ries ble generert Middel begynner som en konstant på 10 Begynner på tid 21, øker den med en enhet i hver periode til den når verdien av 20 på tiden 30 Da blir det konstant igjen Dataene blir simulert ved å legge til i gjennomsnitt en tilfeldig støy fra en normal fordeling med null gjennomsnitt og standardavvik 3 Resultatene av simuleringen er avrundet til nærmeste heltall. Tabellen viser de simulerte observasjonene som brukes til eksempelet. Når vi bruker bordet, må vi huske at til enhver tid, bare de siste dataene er kjent. Estimatene til modellparameteren, for tre forskjellige verdier av m, vises sammen med gjennomsnittet av tidsseriene i figuren under. Figuren viser gjennomsnittlig gjennomsnittlig gjennomsnittlig gjennomsnittlig beregning av gjennomsnittet hver gang og ikke prognosen Prognosene vil skifte de bevegelige gjennomsnittskurver til høyre etter periodene. En konklusjon er umiddelbart tydelig fra figuren. For alle tre estimatene ligger det glidende gjennomsnittet bak den lineære trenden, med lag-stigningen ng med m Forsinkelsen er avstanden mellom modellen og estimatet i tidsdimensjonen På grunn av lagret undervurderer det bevegelige gjennomsnittet observasjonene etter hvert som gjennomsnittet øker. Forskjellen er estimert forskjell på en bestemt tid i middelverdien av modellen og middelverdien spådd av det bevegelige gjennomsnittet Forskjellen når gjennomsnittet er økende er negativt For et avtagende middel er forspenningen positiv. Forsinkelsen i tid og forspenningen introdusert i estimatet er funksjoner av m Jo større verdien av m jo større størrelsen av lag og bias. For en kontinuerlig økende serie med trend a er verdiene av lag og forspenning av estimatoren av middelet gitt i ligningene nedenfor. Eksempelkurverne samsvarer ikke med disse ligningene fordi eksemplet modellen er ikke kontinuerlig økende, heller begynner den som en konstant, endrer seg til en trend og blir konstant igjen Også eksempelkurver påvirkes av støyen. Den bevegelige gjennomsnittlige prognosen for perioder inn i fremtiden representeres ved å flytte kurvene til høyre. Lag og forspenning øker proporsjonalt. Ligningene nedenfor indikerer lag og forspenning av en prognoseperiode inn i fremtiden sammenlignet med modellparametrene. Disse formlene er igjen i en tidsserie med en konstant lineær trend . Vi bør ikke bli overrasket over dette resultatet. Den glidende gjennomsnittlige estimatoren er basert på antagelsen om konstant gjennomsnitt, og eksemplet har en lineær trend i gjennomsnittet i en del av studieperioden. Siden sanntidsseriene sjelden vil adlyde nøyaktig antagelsene av hvilken som helst modell, bør vi være forberedt på slike resultater. Vi kan også konkludere fra figuren at støyens variabilitet har størst effekt for mindre m. Estimatet er mye mer flyktig for det bevegelige gjennomsnittet på 5 enn det glidende gjennomsnittet på 20 Vi har de motstridende ønskene om å øke m for å redusere effekten av variabilitet på grunn av støyen, og å redusere m for å gjøre prognosen mer responsiv for endringer i gjennomsnitt. Feilen er di forskjell mellom de faktiske dataene og den prognostiserte verdien Hvis tidsseriene er virkelig en konstant verdi, er den forventede verdien av feilen null og variansen av feilen består av et begrep som er en funksjon av og en andre term som er variansen av støy. Den første termen er variansen av gjennomsnittet estimert med en prøve av m observasjoner, forutsatt at data kommer fra en befolkning med konstant gjennomsnitt Denne termen er minimert ved å gjøre m så stor som mulig En stor m gjør prognosen ikke reagerende til en endring i underliggende tidsserier For å gjøre prognosen lydhør for endringer, vil vi ha så liten som mulig 1, men dette øker feilvariasjonen. Praktisk prognose krever en mellomverdi. Forekasting med Excel. Forecasting-tillegget implementerer flyttingen gjennomsnittlige formler Eksemplet nedenfor viser analysen gitt av tillegget for prøvedata i kolonne B De første 10 observasjonene er indeksert -9 til 0 Sammenlignet med tabellen over, er perioden inn ices blir forskjøvet med -10. De første ti observasjonene gir oppstartsverdiene for estimatet og brukes til å beregne det bevegelige gjennomsnittet for periode 0 MA 10-kolonnen C viser de beregnede bevegelige gjennomsnittene. Den bevegelige gjennomsnittsparameteren m er i celle C3 The Fore 1 kolonne D viser en prognose for en periode inn i fremtiden Prognoseintervallet er i celle D3 Når prognoseperioden endres til et større tall, flyttes tallene i Fore-kolonnen ned. Err 1-kolonnen E viser differansen mellom observasjonen og prognosen For eksempel er observasjonen ved tid 1 6 Den prognostiserte verdien fra det bevegelige gjennomsnittet ved tidspunktet 0 er 11 1 Feilen er da -5 1 Standardavviket og gjennomsnittlig avviksmodus beregnes i henholdsvis celler E6 og E7 . Klasse MovingAverageModel. En flytende gjennomsnittlig prognosemodell er basert på en kunstig konstruert tidsserie hvor verdien for en gitt tidsperiode er erstattet av gjennomsnittet av den verdien og verdiene for et antall tidligere og etterfølgende tidsperioder Som du kanskje har gjettet Fra beskrivelsen er denne modellen best egnet til tidsseriedata, det vil si data som endres over tid. For eksempel viser mange diagrammer av enkelte aksjer på aksjemarkedet 20, 50, 100 eller 200 dagers glidende gjennomsnitt som en måte å vise trender på. Siden prognosverdien for en gitt periode er et gjennomsnitt av de foregående periodene, vil prognosen alltid synes å ligge etter enten økninger eller reduksjoner i de observerte avhengige verdiene. For eksempel, hvis en dataserie har en merkbar oppadgående trend, så er et glidende gjennomsnitt prognose vil generelt gi et undervurdering av verdiene av den avhengige variabelen. Den glidende gjennomsnittlige metoden har en fordel i forhold til andre prognosemodeller ved at det glatter ut toppene og t rukker eller daler i et sett med observasjoner Det har imidlertid også flere ulemper. Spesielt gir denne modellen ikke en egentlig ligning. Derfor er det ikke alt som er nyttig som et middels langt prognoseverktøy. Det kan bare pålidelig brukes til å prognose en eller to perioder i fremtiden. Den bevegelige gjennomsnittsmodellen er et spesielt tilfelle av det mer generelle vektede glidende gjennomsnittet. I det enkle glidende gjennomsnittet er alle vekter like. Siden 0 3 Forfatter Steven R Gould. Fields arvet fra class. MovingAverageModel Konstruerer en ny flytte gjennomsnittlig prognose modell. MovingAverageModel int periode Konstruerer en ny flytende gjennomsnittlig prognosemodell, ved hjelp av den angitte perioden. getForecastType Returnerer et eller to ordnavn for denne typen prognose model. init DataSet dataSet Brukes til å initialisere den bevegelige gjennomsnittlige modellen. toString Dette skal overstyres for å gi en tekstlig beskrivelse av den nåværende prognosemodellen inkludert, hvor det er mulig, noen avledede parametere som brukes. Metoder arvet fra class. Constructs en ny flytende gjennomsnittlig prognose modell For en gyldig modell som skal bygges, bør du ringe init og passere i et datasett som inneholder en serie datapunkter med tidsvariabelen initialisert for å identifisere den uavhengige variabelen. Konstruerer et nytt bevegelige gjennomsnittlig prognose modell, bruker det oppgitte navnet som den uavhengige variabelen. Parametre independentVariable - navnet på den uavhengige variabelen som skal brukes i denne modellen. Konstruerer en ny flytende gjennomsnittlig prognosemodell, med den angitte perioden. For en gyldig modell som skal bygges, bør du ringe init og passere i et datasett som inneholder en serie datapunkter med tidsvariabelen initialisert for å identifisere den uavhengige variabelen. Periodverdien brukes til å bestemme antall observasjoner som skal brukes til å beregne glidende gjennomsnitt For eksempel i en 50-dagers glidende gjennomsnitt der datapunktene er daglige observasjoner, bør perioden settes til 50. Perioden brukes også til å bestemme mengden av fremtidige perioder t hue kan effektivt prognostiseres Med et 50 dagers glidende gjennomsnitt, kan vi ikke med rimelighet - med noen grad av nøyaktighet - prognose mer enn 50 dager utover den siste perioden for hvilke data er tilgjengelige. Dette kan være mer gunstig enn en 10-dagers periode, hvor vi bare kunne forutsi rimelig 10 dager utover den siste perioden. Parameters periode - antall observasjoner som skal brukes til å beregne det bevegelige gjennomsnittet. Konstruerer en ny flytende gjennomsnittlig prognosemodell, ved hjelp av det oppgitte navnet som den uavhengige variabelen og den angitte perioden. Parametre independentVariable - navnet på den uavhengige variabelen som skal brukes i denne modellperioden - antall observasjoner som skal brukes til å beregne det bevegelige gjennomsnittet. Brukes til å initialisere den bevegelige gjennomsnittsmodellen Denne metoden må kalles før noen annen metode i klassen Siden den Flytende gjennomsnittlig modell utleder ikke noen ligning for prognoser, denne metoden bruker inngangsdataet til å beregne prognoseværdier for alle gyldige verdier av uavhengig ti meg variable. Specified av init i grensesnitt ForecastingModel Overrides init i klassen AbstractTimeBasedModel Parameters dataSet - et datasett med observasjoner som kan brukes til å initialisere prognoseparametrene til prognosemodellen. Returnerer et eller to ordnavn for denne typen prognosemodell. Keep denne korte En lengre beskrivelse bør implementeres i toString-metoden. Dette bør overstyres for å gi en tekstbeskrivelse av den nåværende prognosemodellen inkludert, hvor det er mulig, noen avledede parametere som brukes. Spesifisert av toString i grensesnitt ForecastingModel Overrides toString i klassen WeightedMovingAverageModel Returnerer en streng representasjon av den nåværende prognosemodellen, og dens parametere.
No comments:
Post a Comment