PHAÂN TÍCH CHUOÃI THÔØI GIAN (time series analysis)
Hai muïc tieâu cuûa phaân tích chuoãi thôøi gian : 1. xaùc ñònh baûn chaát cuûa hieän töôïng : - tính khuynh höôùng (trend) - tính muøa vuï (seasonality) 2. döï ñoùan (forecasting)
1. Xaùc ñònh baûn chaát cuûa hieän töôïng 1.1. Phaân tích khuynh höôùng : taêng, giaûm Neáu soá lieäu coù sai soá ñaùng keå khi ñoù böôùc ñaàu tieân trong phaân tích khuynh höôùng laø laø söï laøm trôn (smoothing). Coù 2 phöông phaùp laøm trôn : trung bình chuyeån ñoäng vaø trung vò Söï phaùt hieän töông quan theo chuoãi vaø tính muøa vuï qua phöông phaùp phaân tích töï töông quan (autocorrelation analysis) Tính muøa vuï cuûa chuoãi thôøi gian coù theå ñöôïc khaûo saùt qua qua bieåu ñoà töï töông quan (correlogram). Autocorrelogram trình baøy baèng bieåu ñoà vaø baèng soá haøm töï töông quan (ACF = autocorrelation function), laø heä soá töông quan (vaø sai soá chuaån) cho caùc lags keá tieáp. PACF = partial ACF
Loïai boû söï phuï thuoäc chuoãi (serial dependency) : Söï phuï thuoäc chuoãi ñoái vôùi moät lag ñaëc bieät k coù theå ñöôïc loïai boû baèng differencing chuoãi, töùc laø bieán ñoåi moãi phaàn töû i cuûa chuoãi thaønh hieäu soá töø phaàn töû ( i – k). Coù 2 lyù do chính cho söï bieán ñoåi naøy : coù theå xaùc ñònh baûn chaát tieàm aån cuûa tính muøa vuï trong chuoãi laøm cho chuoãi oån ñònh (stationary) laø caàn thieát cho phaân tích ARIMA vaø caùc phöông phaùp khaùc
2. Söï döï ñoùan : phöông phaùp ARIMA = Autoregressive Integrated Moving Average) Coù 2 quaù trình : 2.1. Quaù trình töï töông quan Haàu heát soá lieäu chuoãi thôøi gian bao goàm caùc phaàn töû phuï thuoäc theo chuoãi = coù theå öôùc löôïng heä soá hay moät taäp hôïp caùc heä soá moâ taû caùc phaàn töû lieân tieáp cuûa moät chuoãi töø moät phaàn töû ñaëc bieät time- lagged. Ñieàu naøy coù theå ñöôïc toùm löôïc trong phöông trình : x t = a + b x x (t – 1) + b 2 x (t – 2) + …..+ e a : haèng soá (intercept) b 1, b 2 … laø caùc thoâng soá cuûa moâ hình töï töông quan e : sai soá ngaåu nhieân Neáu chæ coù moät thoâng soá töï töông quan, thoâng soá ñoù seõ naèm trong khoûang -1 vaø +1. Noùi caùch khaùc caùc aûnh höôûng quaù khöù tích luõy vaø caùc giaù trò x t keá tieáp höôùng veà voâ cöïc, töùc laø chuoãi khoâng oån ñònh (stationary)
2.2. Quaù trình trung bình chuyeån ñoäng Ñoäc laäp vôùi quaù trình töï töông quan, moãi phaàn töû trong chuoãi coù theå chòu aûnh höôûng bôûi sai soá ñaõ qua laø sai soá khoâng theå ñöôïc tính ñeán bôûi thaønh phaàn töï töông quan, töùc laø : x t = µ + e t – c 1 *e (t – 1) – c 2 *e (t – 2) -... c 1, c 2 laø thoâng soá cuûa moâ hình trung bình chuyeån ñoäng.
1.3. Moâ hình ARIMA Coù 3 loïai thoâng soá trong caùc moâ hình : thoâng soá töï töông quan ( p) soá differencing ñaõ qua (d) thoâng soá trung bình chuyeån ñoäng ( q) Caùc moâ hình ñöôïc toùm löôïc nhö sau ARIMA (p, d, q) Thí duï : moâ hình (0, 1, 2)coù nghóa laø moâ hình chöùa zero thoâng soá töï töông quan (p) vaø 2 thoâng soá trung bình chuyeån ñoäng (q) ñöôïc tính cho chuoãi soá lieäu sau khi ñöôïc differenced moät laàn.
1/ Giai ñoïan xaùc ñònh (identification phase) Soá lieäu chuoãi duøng cho phaân tích ARIMA caàn phaûi oån ñònh, töùc laø coù trung bình, phöông sai coá ñònh vaø söï töï töông quan qua thôøi gian. Vì vaäy caùc soá lieäu chuoãi caàn ñöôïc differenced tröôùc tieân cho ñeán khi ñöôïc oån ñònh (ñieàu naøy cuõng thöôøng ñoøi hoûi bieán ñoåi log soá lieäu ñeå oån ñònh phöông sai). Ñeå xaùc ñònh möùc ñoä caàn thieát cuûa differencing, caàn xeùt bieåu ñoà soá lieäu vaø bieåu ñoà cuûa heä soá töï töông quan. Söï thay ñoåi coù yù nghóa ôû möùc ñoä (söï thay ñoåi naâng cao leân hay haï thaáp) caàn differencing khoâng muøa vuï baäc nhaát (lag = 1) ; söï thay ñoåi maïnh veà ñoä doác thöôøng ñoøi hoûi differencing khoâng muøa vuï baäc hai.
Neáu caùc heä soá töï töông quan ñöôïc öôùc löôïng giaûm chaäm ôû lags daøi hôn thöôøng caàn differencing baäc nhaát. Ñoâi khi chuoãi thôøi gian coù theå caàn ít hôn hay khoâng caàn differencing. ÔÛ giai ñoïan naøy (giai ñoïan xaùc ñònh) cuõng caàn xaùc ñònh bao nhieâu thoâng soá töï töông quan (p) vaø trung bình chuyeån ñoäng (q) caàn thieát ñeå taïo ra moät moâ hình coù hieäu quaû nhöng vaãn coù ít thoâng soá nhaát vaø ñoä töï do cao nhaát trong taát caû caùc moâ hình Trong thöïc haønh, soá thoâng soá p vaø q ít khi lôùn hôn 2
2/ Giai ñoïan öôùc löôïng (estimation phase) Vieäc xaùc ñònh moâ hình : 5 moâ hình caên baûn coù theå ñöôïc xaùc ñònh döïa treân hình daïng cuûa bieåu ñoà töï töông quan (ACF) vaø töï töông quan töøng phaàn (PACF) : - moät thoâng soá töï töông quan (p) : ACF – exponential decay, PACF – spike ôû lag 1, khoâng töông quan ôû nhöõng lags khaùc - hai thoâng soá töï töông quan (p) : ACF – daïng hình sin, PACF – spikes ôû lags 1 vaø 2, khoâng töông quan ôû nhöõng lags khaùc - moät thoâng soá trung bình chuyeån ñoäng (q) : ACF – spike ôû lag 1, khoâng töông quan ôû nhöõng lags khaùc ; PACF – damps out exponentially - q = 2 : ACF – spikes ôû lags 1 vaø 2, khoâng töông quan ôû caùc lags khaùc ; PACF – daïng hình sin - p = 1 vaø q = 1 : ACF – exponential decay baét ñaàu ôû lag 1 ; PACF – exponential decay ôû lag 1 3/ Giai ñoïan döï ñoùan (forecasting phase)
Thí du chuoãi thôøi gian khoâng oån ñònh coù tính muøa vuï söû duïng PROC ARIMA ñeå laøm phuø hôïp moâ hình ARIMA(0,1,1)×(0,1,1)12, Box and Jenkins' Series G. title1 'International Airline Passengers'; title2 '(Box and Jenkins Series-G)'; data seriesg; input x xlog = log( x ); date = intnx( 'month', '31dec1948'd, _n_ ); format date monyy.; datalines;
;
symbol1 i=join v=dot; proc gplot data=seriesg; plot x * date = 1 / haxis= '1jan49'd to '1jan61'd by year; run; proc arima data=seriesg; identify var=xlog(1,12) nlag=15; run; estimate q=(1)(12) noconstant method=uls; run; forecast out=b lead=24 id=date interval=month noprint; quit; data c; set b; x = exp( xlog ); forecast = exp( forecast + std*std/2 ); l95 = exp( l95 ); u95 = exp( u95 ); run;
symbol1 i=none v=star; symbol2 i=join v=circle; symbol3 i=join v=none l=3; proc gplot data=c; where date >= '1jan58'd; plot x * date = 1 forecast * date = 2 l95 * date = 3 u95 * date = 3 / overlay haxis= '1jan58'd to '1jan62'd by year; run;
The ARIMA Procedure Name of Variable = xlog Period(s) of Differencing 1,12 Mean of Working Series Standard Deviation Number of Observations 131 Observation(s) eliminated by differencing 13 Autocorrelations Lag Covariance Correlation Std Error | |********************| | *******|. | |. |**. | | ****|. | |. |. | |. |*. | |. |*. | |. *|. | E |. |. | |. |**** | |. **|. | |. |*. | | ********|. | |. |***. | |. *|. | |. |***. | "." marks two standard errors
Inverse Autocorrelations Lag Correlation |. |******** | |. |*** | |. |**. | |. |. | |.**|. | |.**|. | |. *|. | |. *|. | |. *|. | |. |*. | |. |**** | |. |****** | |. |**. |
The ARIMA Procedure Inverse Autocorrelations Lag Correlation |. |*. | |. |. | Partial Autocorrelations Lag Correlation | *******|. | |. |. | | ****|. | | ***|. | |. |*. | |. |*. | |. *|. | |. |. | |. |***** | |. |*. | |. |*. | | *******|. | |.**|. | |.**|. | |. |. |
Autocorrelation Check for White Noise To Chi- Pr > Lag Square DF ChiSq Autocorrelations <
The ARIMA Procedure Unconditional Least Squares Estimation Standard Approx Parameter Estimate Error t Value Pr > |t| Lag MA1, < MA2, < Variance Estimate Std Error Estimate AIC SBC Number of Residuals 131 Correlations of Parameter Estimates Parameter MA1,1 MA2,1 MA1, MA2,
Autocorrelation Check of Residuals To Chi- Pr > Lag Square DF ChiSq Autocorrelations
Model for variable xlog Period(s) of Differencing 1,12 No mean term in this model. Moving Average Factors Factor 1: B**(1) Factor 2: B**(12)
PROC ARIMA Cô sôû cho söï phaân tích laø soá lieäu chuoãi thôøi gian ñöôïc quan saùt X(t) phaûi oån ñònh vaø phuø hôïp phöông trình ARMA coù daïng X(t) -phi(1) X(t-1) phi(p) X(t-p)=Z(t) -theta(1)Z(t- 1)-...-theta(q) Z(t-q) Trong ñoù Z(t) laø quaù trình nhieãu traéng. Caùc haèng soá phi(1),..., phi(p) ñöôïc goïi laø caùc heä soá töï töông quan vaø soá p ñöôïc goïi laø thöù töï cuûa thaønh phaàn töï töông quan. Caùc haèng soá theta(1),..., theta(q) ñöôïc goïi laø caùc heä soá cuûa trung bình chuyeån ñoäng vaø soá q ñöôïc goïi laø thöù töï cuûa thaønh phaàn trung bình chuyeån ñoäng. P vaø q coù theå baèng zero
Vieäc söû duïng PROC ARIMA ñeå laøm phuø hôïp caùc moâ hình ARMA bao goàm 3 böôùc. Böôùc ñaàu tieân laø xaùc ñònh moâ hình, trong ñoù chuoãi quan saùt ñöôïc bieán ñoåi ñeå coù söï oån ñònh Chæ coù söï bieán ñoåi thích hôïp vôùi proc arima laø differencing. Böôùc thöù hai laø öôùc löôïng moâ hình trong ñoù caùc soá thöù töï p vaø q ñöôïc löïa choïn vaø caùc thoâng soá töông öùng ñöôïc öôùc löôïng. Böôùc thöù ba laø söï döï ñoùan, trong ñoù moâ hình ñöôïc öôùc löôïng ñöôïc duøng ñeå döï ñoùan caùc giaù trò töông lai cuûa chuoãi soá lieäu ñöôïc quan saùt.
Data milk; Input year milk Datalines; ;
proc arima data=milk; identify var=milk(12) nlag=30 center outcov=milkcov noprint; run; estimate p=1 q=3 nodf noconstant method=ml plot; run; forecastlead=10 out=predict printall; run;
CAÙC TUØY CHOÏN ÑOÁI VÔÙI PHAÙT BIEÅU IDENTIFY : Phaùt bieåu var= statement xaùc ñònh caùc bieán ñöôïc duøng ñeå phaân tích. Soá tuøy choïn trong daáu ngoaëc xaùc ñònh LAG nôi ñoù caùc hieäu soá (differences) ñöôïc tính toaùn. Phaùt bieåu var = milk seõ phaân tích chuoãi soá lieäu khoâng differencing ; var=milk(1) seõ phaân tích hieäu soá ñaàu tieân cuûa milk ; var=milk(1,1) seõ phaân tích hieäu soá thöù hai cuûa milk
Phaùt bieåu var= statement cho ra 3 bieåu ñoà ñoái vôùi bieán ñöôïc xaùc ñònh : haøm töï töông quan cuûa maãu, haøm nghòch ñaûo töï töông quan cuûa maãu, vaø haøm töï töông quan töøng phaàn cuûa maãu. Tuøy choïn nlag= option cho 3 bieåu ñoà in caùc giaù trò ñeán lag 30. Neáu khoâng ñöôïc xaùc ñònh, soá maëc ñònh cuûa nlag=24 hay 25% cuûa soá quan saùt Tuøy choïn center tröø trung bình cuûa chuoãi ñöôïc xaùc ñònh bôûi phaùt bieåu var=statement.Trung bình ñöôïc ñöa vaøo sau moät caùch töï ñoäng trong böôùc forecast.
Tuøy choïn outcov= option ñaët caùc giaù trò cuûa caùc haøm töông quan cuûa maãu vaøo taäp hôïp soá lieäu cuûa SAS. Nhöõng giaù trò naøy coù theå ñöôïc duøng ñeå taïo ra caùc bieåu ñoà cuûa nhöõng haøm naøy baèng caùch duøng proc gplot.Keát quaû cuûa caùc bieán laø : LAG, VAR (teân cuûa bieán ñöôïc xaùc ñònh trong var= option), CROSSVAR (teân cuûa bieán ñöôïc xaùc ñònh trong crosscorr= option), N (soá quan saùt ñöôïc duøng ñeå tính giaù trò hieän taïi cuûa hieäp phöông sai hay hieäp phöông sai cheùo crosscovariance), COV (giaù trò cuûa caùc hieäp phöông sai cheùo ), CORR (giaù trò cuûa haøm töï töông quan cuûa maãu ), STDERR (sai soá chuaån cuûa heä soá töï töông quan ), INVCORR (caùc giaù trò cuûa haøm töï töông quan nghòch ñaûo ), vaø PARTCORR (caùc giaù trò cuûa haøm töï töông quan töøng phaàn cuûa maãu ). Tuøy choïn noprint option loïai boû keát quaû veõ bieåu ñoà chaát löôïng thaáp cuûa phaùt bieåu var= statement. Tuøy choïn naøy thöôøng ñöôïc duøng vôùi tuøy choïn outcov= option.
CAÙC TUØY CHOÏN CUÛA PHAÙT BIEÅU ESTIMATE Tuøy choïn p=1 q=3 xaùc ñònh thöù töï cuûa töï töông quan vaø trung bình chuyeån ñoäng ñöôïc laøm phuø hôïp. Caùc daïng khaùc cuûa söï xaùc ñònh laø : q=(3) xaùc ñònh raèng CHÆ COÙ thoâng soá theta(3) laø ñöôïc pheùp khaùc zero ; p=(12)(3) ñoái vôùi moâ hình muøa vuï (1-phi(12)B**12)(1- phi(3)B**3) trong ñoù B laø the backshift operator; p=(3,12) ñoái vôùi moâ hình trong ñoù chæ coù phi(3) vaø phi(12) ñöôïc pheùp khaùc zero. Tuøy choïn nodf option duøng ñoä lôùn maãu hôn laø ñoä töï do nhö laø maãu soá khi öôùc löôïng phöông sai cuûa nhieãu traéng (white noise variance)
Tuøy choïn method option löïa choïn phöông phaùp öôùc löôïng caùc thoâng soá. Caùc löïa choïn laø ml phöông phaùp töông ñoàng toái ña( maximum (Gaussian) likelihood estimation), uls cho phöông phaùp bình phöông nhoû nhaát khoâng ñieàu kieän vaø cls cho phöông phaùp bình phöông nhoû nhaát coù ñieàu kieän. Tuøy choïn plot option cho ra 3 bieåu ñoà gioáng nhö trong phaùt bieåu identify ñoái vôùi RESIDUALS sau khi caùc thoâng soá moâ hình ñöôïc öôùc löôïng. Ñaây laø moät caùch khaùc ñeå kieåm tra söï nhieåu traéng cuûa caùc sai soá.
CAÙC TUØY CHOÏN CUÛA PHAÙT BIEÅU FORECAST Tuøy choïn lead option xaùc ñònh soá khoûang thôøi gian trong töông lai cho caùc soá döï ñoùan ñöôïc thöïc hieän. Baèng caùch duøng tuøy choïn out= vaø printall options trong phaùt bieåu forecast, taäp hôïp soá lieäu SAS seõ ñöôïc thaønh laäp vaø chöùa caùc giaù trò cuûa chuoãi soá lieäu ban ñaàu vaø caùc giaù trò döï ñoùan cuûa chuoãi söû duïng moâ hình.. Trong thöïc haønh, moät vaøi phaùt bieåu estimate khaùc nhau ñöôïc thöïc hieän lieân tieáp ñeå xem moâ hình naøo phuø hôïp nhaát vôùi soá lieäu
The ARIMA Procedure. ARIMA Estimation Optimization Summary Estimation Method Maximum Likelihood Parameters Estimated 4 Termination Criteria Maximum Relative Change in Estimates Iteration Stopping Value Criteria Value Maximum Absolute Value of Gradient R-Square Change from Last Iteration Objective Function Log Gaussian Likelihood Objective Function Value Marquardt's Lambda Coefficient Numerical Derivative Perturbation Delta Iterations 7 Warning Message Estimates may not have converged.
Maximum Likelihood Estimation Standard Approx Parameter Estimate Error t Value Pr > |t| Lag MA1, MA1, MA1, AR1, < Variance Estimate Std Error Estimate AIC SBC Number of Residuals 79 Correlations of Parameter Estimates Parameter MA1,1 MA1,2 MA1,3 AR1,1 MA1, MA1, MA1, AR1,
The ARIMA Procedure Autocorrelation Check of Residuals To Chi- Pr > Lag Square DF ChiSq Autocorrelations < < <
Autocorrelation Plot of Residuals Lag Covariance Correlation Std Error | |********************| |. |. | |. **|. | |. *|. | |. |. | |. **|. | |. **|. | |. **|. | |. **|. | |. *|. | |. *|. | |. ***|. | |. *|. | |. |**************** | |. *|. | |. ***|. | |. **|. | |. *|. | |. **|. | |. **|. | |. **|. | |. **|. | |. |. | |. *|. | |. **|. | |. |. | |. |************* | |. |. | |. *|. | |. *|. | |. |. | "." marks two standard errors
The ARIMA Procedure Inverse Autocorrelations Lag Correlation |. *|. | |. |. | |. |*. | |. **|. | |. |**. | |. |. | |. |**. | |. |*. | |. |***. | |. |*. | |. |**. | |. |***. | | ********|. | |. |**. | |. |**. | |. |*. | |. |***. | |. |*. | |. |*. | |. |. | |. |*. | |. |. | |. |. | |. |. | |. |. | |. |*. | |. |. | |. |. | |. |. | |. |. |
Partial Autocorrelations Lag Correlation |. |. | |. **|. | |. *|. | |. |. | |. **|. | |. **|. | |. ***|. | |. ***|. | |. **|. | |. ***|. | | *****|. |
The ARIMA Procedure Partial Autocorrelations Lag Correlation |. ***|. | |. |*************** | |.****|. | |. **|. | |. **|. | |.****|. | |. *|. | |. **|. | |. *|. | |. **|. | |. *|. | |. *|. | |. |. | |. |. | |. *|. | |. |. | |. |. | |. |. | |. |*. |
Model for variable milk Data have been centered by subtracting the value Period(s) of Differencing 12 No mean term in this model. Autoregressive Factors Factor 1: B**(1) Moving Average Factors Factor 1: B**(1) B**(2) B**(3)
The ARIMA Procedure Forecasts for variable milk Obs Forecast Std Error 95% Confidence Limits Actual Residual
Forecasts for variable milk Obs Forecast Std Error 95% Confidence Limits Actual Residual
The ARIMA Procedure Forecasts for variable milk Obs Forecast Std Error 95% Confidence Limits Actual Residual
Obs Forecast Std Error 95% Confidence Limits Actual Residual