Tuesday, 28 November 2017

Autoregressiva glidande medelvärde tutorial


Tidsserieanalys tsa statsmodels. tsa innehåller modellklasser och funktioner som är användbara för tidsserieanalys. Detta omfattar för närvarande univariate autoregressive modeller (AR), vektorautoregressiva modeller (VAR) och univariate autoregressive moving average models (ARMA). Den innehåller även beskrivande statistik för tidsserier, till exempel autokorrelation, partiell autokorrelationsfunktion och periodogram, samt de motsvarande teoretiska egenskaperna hos ARMA eller relaterade processer. Det innehåller också metoder för att arbeta med autoregressiva och glidande medellagspolynomier. Dessutom finns relaterade statistiska tester och några användbara hjälpfunktioner tillgängliga. Uppskattningen görs antingen med exakt eller villkorad maximal sannolikhet eller villkorlig minst kvadrater, antingen med hjälp av Kalman Filter eller direkta filter. För närvarande måste funktioner och klasser importeras från motsvarande modul, men huvudklasserna kommer att göras tillgängliga i namnmodellen statsmodels. tsa. Modulstrukturen ligger inom statsmodels. tsa är stattools. empiriska egenskaper och test, acf, pacf, granger-causality, adf-enhet root test, ljung-box test och andra. armodel. univariate autoregressive process, uppskattning med villkorlig och exakt maximal sannolikhet och villkorlig minst kvadratisk arimamodel. univariate ARMA-processen, uppskattning med villkorlig och exakt maximal sannolikhet och villkorlig minst kvadrater vektorar, var. vektorautoregressiva process (VAR) uppskattningsmodeller, impulsresponsanalys, prognosfelvariationer, nedbrytningar och datavisningsverktyg kalmanf. uppskattningskurser för ARMA och andra modeller med exakt MLE med Kalman Filter armaprocess. egenskaper hos arma-processer med givna parametrar, detta inkluderar verktyg för att konvertera mellan ARMA, MA och AR-representation samt acf, pacf, spektral densitet, impulsresponsfunktion och liknande sandbox. tsa. fftarma. liknande armaprocess men arbetar i frekvensdomän tsatools. ytterligare hjälparfunktioner, för att skapa arrays av fördröjda variabler, konstruera regressorer för trend, detrend och liknande. filter. hjälpfunktion för filtrering av tidsserier Vissa ytterligare funktioner som också är användbara för tidsserieanalys finns i andra delar av statistikmodeller, till exempel ytterligare statistiska tester. Vissa relaterade funktioner finns också i matplotlib, nitime och scikits. talkbox. Dessa funktioner är utformade mer för användning vid signalbehandling där längre tidsserier är tillgängliga och arbetar oftare i frekvensdomänen. Beskrivande statistik och test stattools. acovf (x, unbiased, demean, fft) Introduktion till ARIMA: nonseasonal modeller ARIMA (p, d, q) prognoser ekvation: ARIMA-modeller är i teorin den vanligaste klassen av modeller för att förutspå en tid serie som kan göras för att vara 8220stationary8221 genom differentiering (om nödvändigt), kanske i samband med olinjära transformationer såsom loggning eller deflatering (om nödvändigt). En slumpmässig variabel som är en tidsserie är stationär om dess statistiska egenskaper är konstanta över tiden. En stationär serie har ingen trend, dess variationer kring dess medelvärde har en konstant amplitud, och det vinklar på ett konsekvent sätt. d. v.s. dess kortsiktiga slumpmässiga tidsmönster ser alltid ut i statistisk mening. Det sistnämnda tillståndet betyder att dess autokorrelationer (korrelationer med sina egna tidigare avvikelser från medelvärdet) förblir konstanta över tiden, eller likvärdigt, att dess effektspektrum förblir konstant över tiden. En slumpmässig variabel i denna blankett kan ses som en kombination av signal och brus, och signalen (om en är uppenbar) kan vara ett mönster av snabb eller långsam mean reversion eller sinusformig oscillation eller snabb växling i tecken , och det kan också ha en säsongskomponent. En ARIMA-modell kan ses som en 8220filter8221 som försöker separera signalen från bruset, och signalen extrapoleras därefter i framtiden för att få prognoser. ARIMA-prognosekvationen för en stationär tidsserie är en linjär (d. v.s. regressionstyp) ekvation där prediktorerna består av lags av de beroende variabla andorlagren av prognosfel. Det vill säga: Förutsatt värdet på Y är en konstant och en viktad summa av ett eller flera nya värden av Y och eller en vägd summa av ett eller flera nya värden av felen. Om prediktorerna endast består av fördröjda värden på Y. Det är en ren autoregressiv (8220self-regressed8221) modell, som bara är ett speciellt fall av en regressionsmodell och som kan förses med standard regressionsprogram. Exempelvis är en första-order-autoregressiv (8220AR (1) 8221) modell för Y en enkel regressionsmodell där den oberoende variabeln bara Y är försenad med en period (LAG (Y, 1) i Statgraphics eller YLAG1 i RegressIt). Om en del av prediktorerna är felaktiga, är en ARIMA-modell inte en linjär regressionsmodell, eftersom det inte går att ange 8220last period8217s error8221 som en oberoende variabel: felen måste beräknas periodvis när modellen är monterad på data. Tekniskt sett är problemet med att använda fördröjda fel som prediktorer att modellen8217s förutsägelser inte är linjära funktioner för koefficienterna. även om de är linjära funktioner av tidigare data. Så koefficienter i ARIMA-modeller som innehåller försenade fel måste uppskattas genom olinjära optimeringsmetoder (8220hill-climbing8221) istället för att bara lösa ett system av ekvationer. Akronymet ARIMA står för Auto-Regressive Integrated Moving Average. Lags av den stationära serien i prognosen ekvationen kallas quotautoregressivequot termer, lags av prognosfel kallas quotmoving averagequot termer och en tidsserie som behöver differentieras för att göras stationär sägs vara en quotintegratedquot-version av en stationär serie. Slumpmässiga och slumpmässiga modeller, autoregressiva modeller och exponentiella utjämningsmodeller är alla speciella fall av ARIMA-modeller. En nonseasonal ARIMA-modell klassificeras som en quotARIMA (p, d, q) kvotmodell där: p är antalet autoregressiva termer, d är antalet icke-säsongsskillnader som behövs för stationaritet och q är antalet fördröjda prognosfel i prediksionsekvationen. Prognosekvationen är konstruerad enligt följande. Först, låt y beteckna d: s skillnad på Y. Det betyder: Observera att den andra skillnaden i Y (d2-fallet) inte är skillnaden från 2 perioder sedan. Det är snarare den första skillnaden-av-första skillnaden. vilken är den diskreta analogen av ett andra derivat, dvs den lokala accelerationen av serien i stället för dess lokala trend. När det gäller y. Den allmänna prognostiseringsekvationen är: Här definieras de rörliga genomsnittsparametrarna (9528217s) så att deras tecken är negativa i ekvationen, enligt konventionen införd av Box och Jenkins. Vissa författare och programvara (inklusive R-programmeringsspråket) definierar dem så att de har plustecken istället. När faktiska siffror är anslutna till ekvationen finns det ingen tvetydighet, men det är viktigt att veta vilken konvention din programvara använder när du läser utmatningen. Ofta anges parametrarna av AR (1), AR (2), 8230 och MA (1), MA (2), 8230 etc. För att identifiera lämplig ARIMA-modell för Y. börjar du med att bestämma sorteringsordningen (d) behöver stationera serierna och ta bort säsongens bruttoegenskaper, kanske i kombination med en variationsstabiliserande transformation, såsom loggning eller avflöde. Om du slutar vid denna tidpunkt och förutsäger att den olika serien är konstant, har du bara monterat en slumpmässig promenad eller slumpmässig trendmodell. Den stationära serien kan emellertid fortfarande ha autokorrelerade fel, vilket tyder på att vissa antal AR-termer (p 8805 1) och eller några nummer MA-termer (q 8805 1) också behövs i prognosekvationen. Processen att bestämma värdena p, d och q som är bäst för en given tidsserie kommer att diskuteras i senare avsnitt av anteckningarna (vars länkar finns längst upp på denna sida), men en förhandsvisning av några av de typerna av nonseasonal ARIMA-modeller som vanligtvis förekommer ges nedan. ARIMA (1,0,0) första ordningens autoregressiva modell: Om serien är stationär och autokorrelerad kanske den kan förutsägas som en multipel av sitt eget tidigare värde plus en konstant. Prognosekvationen i detta fall är 8230, som Y är regresserad i sig själv fördröjd med en period. Detta är en 8220ARIMA (1,0,0) constant8221 modell. Om medelvärdet av Y är noll, skulle den konstanta termen inte inkluderas. Om lutningskoefficienten 981 1 är positiv och mindre än 1 i storleksordningen (den måste vara mindre än 1 i storleksordningen om Y är stillastående), beskriver modellen medelåterkallande beteende där nästa period8217s värde bör förutses vara 981 1 gånger som långt ifrån medelvärdet som detta period8217s värde. Om 981 1 är negativ förutspår det medelåterkallande beteende med teckenväxling, dvs det förutspår också att Y kommer att ligga under den genomsnittliga nästa perioden om den är över medelvärdet denna period. I en andra-ordningsautoregressiv modell (ARIMA (2,0,0)) skulle det finnas en Y t-2 term till höger också, och så vidare. Beroende på tecken och storheter på koefficienterna kan en ARIMA (2,0,0) modell beskriva ett system vars medföljande reversering sker på ett sinusformigt oscillerande sätt, som en massans rörelse på en fjäder som utsätts för slumpmässiga stötar . ARIMA (0,1,0) slumpmässig promenad: Om serien Y inte är stillastående är den enklaste möjliga modellen för en slumpmässig promenadmodell, vilken kan betraktas som ett begränsande fall av en AR (1) - modell där den autogegrativa koefficienten är lika med 1, det vill säga en serie med oändligt långsam medelbackning. Förutsägningsekvationen för denna modell kan skrivas som: där den konstanta termen är den genomsnittliga period-till-period-förändringen (dvs. den långsiktiga driften) i Y. Denna modell kan monteras som en icke-avlyssningsregressionsmodell där första skillnaden i Y är den beroende variabeln. Eftersom den innehåller (endast) en nonseasonal skillnad och en konstant term, klassificeras den som en quotARIMA (0,1,0) modell med constant. quot. Den slumpmässiga walk-without-drift-modellen skulle vara en ARIMA (0,1, 0) modell utan konstant ARIMA (1,1,0) annorlunda första ordningens autoregressiva modell: Om fel i en slumpmässig promenadmodell är autokorrelerade kanske problemet kan lösas genom att lägga en lag av den beroende variabeln till prediktionsekvationen - - ie genom att regressera den första skillnaden av Y på sig själv fördröjd med en period. Detta skulle ge följande förutsägelsesekvation: som kan omordnas till Detta är en förstaordens autregressiv modell med en ordning av icke-säsongsskillnader och en konstant term, dvs. en ARIMA (1,1,0) modell. ARIMA (0,1,1) utan konstant enkel exponentiell utjämning: En annan strategi för korrigering av autokorrelerade fel i en slumpmässig promenadmodell föreslås av den enkla exponentiella utjämningsmodellen. Minns att för några icke-stationära tidsserier (t ex de som uppvisar bullriga fluktuationer kring ett långsamt varierande medelvärde), utförs slumpmässiga promenadmodellen inte lika bra som ett glidande medelvärde av tidigare värden. Med andra ord, istället för att ta den senaste observationen som prognosen för nästa observation, är det bättre att använda ett genomsnitt av de sista observationerna för att filtrera bort bullret och mer exakt uppskatta det lokala medelvärdet. Den enkla exponentiella utjämningsmodellen använder ett exponentiellt vägt glidande medelvärde av tidigare värden för att uppnå denna effekt. Förutsägningsekvationen för den enkla exponentiella utjämningsmodellen kan skrivas i ett antal matematiskt ekvivalenta former. varav den ena är den så kallade 8220error correction8221-formen, där den föregående prognosen justeras i riktning mot det fel som det gjorde: Eftersom e t-1 Y t-1 - 374 t-1 per definition kan det skrivas om som : vilket är en ARIMA (0,1,1) - utan konstant prognosekvation med 952 1 1 - 945. Det innebär att du kan passa en enkel exponentiell utjämning genom att ange den som en ARIMA (0,1,1) modell utan konstant, och den uppskattade MA (1) - koefficienten motsvarar 1-minus-alfa i SES-formeln. Minns att i SES-modellen är den genomsnittliga åldern för data i prognoserna för 1-tiden framåt 1 945. Det betyder att de tenderar att ligga bakom trender eller vändpunkter med cirka 1 945 perioder. Det följer att den genomsnittliga åldern för data i de 1-prognos framåt av en ARIMA (0,1,1) utan konstant modell är 1 (1 - 952 1). Så, till exempel, om 952 1 0,8 är medelåldern 5. När 952 1 närmar sig 1 blir ARIMA (0,1,1) utan konstant modell ett mycket långsiktigt glidande medelvärde och som 952 1 närmar sig 0 blir det en slumpmässig promenad utan driftmodell. What8217s det bästa sättet att korrigera för autokorrelation: Lägg till AR-termer eller lägga till MA-termer I de tidigare två modellerna som diskuterats ovan fixades problemet med autokorrelerade fel i en slumpmässig promenadmodell på två olika sätt: genom att lägga till ett fördröjt värde av de olika serierna till ekvationen eller lägga till ett fördröjt värde av prognosfelet. Vilket tillvägagångssätt är bäst En tumregel för denna situation, som kommer att diskuteras mer i detalj senare, är att positiv autokorrelation vanligtvis behandlas bäst genom att addera en AR-term till modellen och negativ autokorrelation behandlas vanligtvis bäst genom att lägga till en MA term. I affärs - och ekonomiska tidsserier uppstår negativ autokorrelation ofta som en artefakt av differentiering. (I allmänhet minskar differentieringen positiv autokorrelation och kan även orsaka en växling från positiv till negativ autokorrelation.) Således används ARIMA (0,1,1) - modellen, i vilken skillnad åtföljs av en MA-term, oftare än en ARIMA (1,1,0) modell. ARIMA (0,1,1) med konstant enkel exponentiell utjämning med tillväxt: Genom att implementera SES-modellen som en ARIMA-modell får du viss flexibilitet. För det första får den uppskattade MA (1) - koefficienten vara negativ. Detta motsvarar en utjämningsfaktor som är större än 1 i en SES-modell, vilket vanligtvis inte är tillåtet med SES-modellproceduren. För det andra har du möjlighet att inkludera en konstant term i ARIMA-modellen om du vill, för att uppskatta en genomsnittlig trendfri noll. ARIMA-modellen (0,1,1) med konstant har förutsägelsesekvationen: Prognoserna från den här modellen är kvalitativt likartade som i SES-modellen, förutom att banan för de långsiktiga prognoserna typiskt är en sluttande linje (vars lutning är lika med mu) snarare än en horisontell linje. ARIMA (0,2,1) eller (0,2,2) utan konstant linjär exponentiell utjämning: Linjära exponentiella utjämningsmodeller är ARIMA-modeller som använder två icke-säsongsskillnader i samband med MA-termer. Den andra skillnaden i en serie Y är inte bara skillnaden mellan Y och sig själv i två perioder, men det är snarare den första skillnaden i den första skillnaden, dvs. Y-förändringen i Y vid period t. Således är den andra skillnaden av Y vid period t lika med (Y t - Y t-1) - (Y t-1 - Y t-2) Y t - 2Y t-1 Y t-2. En andra skillnad av en diskret funktion är analog med ett andra derivat av en kontinuerlig funktion: det mäter kvotccelerationquot eller quotcurvaturequot i funktionen vid en given tidpunkt. ARIMA-modellen (0,2,2) utan konstant förutspår att den andra skillnaden i serien motsvarar en linjär funktion av de två sista prognosfel: som kan omordnas som: där 952 1 och 952 2 är MA (1) och MA (2) koefficienter. Detta är en generell linjär exponentiell utjämningsmodell. väsentligen samma som Holt8217s modell, och Brown8217s modell är ett speciellt fall. Den använder exponentiellt vägda glidande medelvärden för att uppskatta både en lokal nivå och en lokal trend i serien. De långsiktiga prognoserna från denna modell konvergerar till en rak linje vars lutning beror på den genomsnittliga trenden som observerats mot slutet av serien. ARIMA (1,1,2) utan konstant dämpad trend linjär exponentiell utjämning. Denna modell illustreras i de bifogade bilderna på ARIMA-modellerna. Den extrapolerar den lokala trenden i slutet av serien men plattar ut på längre prognoshorisonter för att presentera en konservatismskampanj, en övning som har empiriskt stöd. Se artikeln om varför Damped Trend worksquot av Gardner och McKenzie och artikeln "Rulequot Rulequot" av Armstrong et al. för detaljer. Det är i allmänhet lämpligt att hålla fast vid modeller där minst en av p och q inte är större än 1, dvs försök inte passa en modell som ARIMA (2,1,2), eftersom det här sannolikt kommer att leda till övermontering och quotcommon-factorquot-problem som diskuteras närmare i noterna om den matematiska strukturen för ARIMA-modeller. Implementering av kalkylark: ARIMA-modeller som de som beskrivs ovan är enkla att implementera på ett kalkylblad. Förutsägningsekvationen är helt enkelt en linjär ekvation som refererar till tidigare värden av ursprungliga tidsserier och tidigare värden av felen. Således kan du ställa in ett ARIMA-prognoskalkylblad genom att lagra data i kolumn A, prognosformeln i kolumn B och felen (data minus prognoser) i kolumn C. Förutsättningsformeln i en typisk cell i kolumn B skulle helt enkelt vara ett linjärt uttryck som hänvisar till värden i föregående rader av kolumnerna A och C multiplicerat med lämpliga AR - eller MA-koefficienter lagrade i celler på annat håll i kalkylbladet. X-12-ARIMA Säsongsjustering är en statistisk metod för att ta bort säsongsbeståndsdelen av en tid serier när man analyserar icke-säsongsmässiga trender. Det är normalt att rapportera säsongrensade uppgifter om arbetslöshet för att avslöja de underliggande trenderna på arbetsmarknaden. Många ekonomiska fenomen har säsongscykler, såsom jordbruksproduktion och konsumtionskonsumtion (t ex större förbrukning fram till jul). Det är nödvändigt att justera för denna komponent för att förstå vilka underliggande trender som finns i ekonomin, och därför anpassas den officiella statistiken ofta för att ta bort säsongsbeståndsdelar. Olika statistiska forskargrupper har utvecklat olika metoder för säsongsjustering, inklusive de amerikanska folkräkningsbyråerna X12 ARIMA, Spaniens Bank TRAMO i SEATS i. och STAMP, utvecklad av en grupp ledd av S. J. Koopman. Varje grupp tillhandahåller programvara som stöder deras specifika metoder. NumXL stöder modelleringsmetoden för X12 ARIMA i Excel. X-12-ARIMA Jag är mjukvaran som produceras, distribueras och underhålls av USA: s folkräkningskontor. Med hjälp av X-12-funktionaliteten i NumXL kan du referera till ingångsdata i kalkylbladet, ange de olika alternativen (t. ex. förhandsjustering, avlägsna behandling etc.) av X12 ARIMA i Excel genom en intuitiv guide och visa säsongsjusterat tidsserier eller prognoser i Excel. Bakom kulisserna översätter NumXL användaralternativen till inbyggda X12 ARIMA-skript, kör programmet och utnyttjar utgångarna (t ex säsongjusterad trend, säsongsfaktor, oregelbundenhet, prognos) genom en uppsättning arbetsbladsfunktioner. Ändå kan användaren få tillgång till de genererade inmatnings - och utdatafilerna med hjälp av NumXL-guiden. regARIMA i-modellen X12 ARIMA i Excel-programvaran levereras med omfattande tidsseriemodellerings - och modellvalmöjligheter för linjära regressionsmodeller med ARIMA-fel (regARIMA-modeller). ARIMA-modellerna, som diskuteras av Box och Jenkins (1976), används ofta för säsongs-tidsserier. En generell multiplicativ säsongsbetonad ARIMA-modell för en tidsserie kan skrivas:

No comments:

Post a Comment