梧州網站建設服務商抖音關鍵詞推廣怎么做
目錄
介紹
確定性時間序列分析方法
1、時間序列的常見趨勢
(1)長期趨勢
(2)季節(jié)變動
(3)循環(huán)變動
(4)不規(guī)則變動
常見的時間序列模型有以下幾類
2、時間序列預測的具體方法
2.1 移動平均法
案例1
【符號說明】
?【預測模型】
2.2 一次指數平滑預測法
(1)預測模型
?(2)加權系數的選擇
?(3)初始值的確定
案例2
?3、差分指數平滑法
案例3
4、具有季節(jié)性特點的時間序列的預測
?案例4
介紹
? ?將預測對象按照時間順序排成一組序列,稱為時間序列。從時間序列過去的變化規(guī)律,推斷今后變化的可能性及變化趨勢、變化規(guī)律,這就是時間序列預測法。
? ?時間序列模型,其實也是一種回歸模型。其基本原理是,一方面承認事物發(fā)展的延續(xù)性,運用過去時間序列進行統計分析就能推斷事物發(fā)展趨勢;另一方面又充分考慮到偶然因素影響產生的隨機性,為了消除隨機波動的影響,利用歷史數據,進行統計分析,并對數據做適當的處理,進行趨勢預測。
- 優(yōu)點:簡單易行,便于掌握,能重復利用時間序列各項數據,計算速度快,對模型參數動有態(tài)確定能力,精度較好。
- 缺點 :?不能反映事物內在聯系,不能分析兩個因素的相關關系,只適合作短期預測。
確定性時間序列分析方法
1、時間序列的常見趨勢
(1)長期趨勢
時間序列朝著一定的方向持續(xù)上升或下降或留在某個水平的傾向。它反映了客觀事物主要變化趨勢,記為Tt;
(2)季節(jié)變動
序列按時間呈現短周期變化的規(guī)律,記為St;
(3)循環(huán)變動
通常是周期為一年以上的,由非季節(jié)因素一起的起伏波相似的波動,記為Ct;
(4)不規(guī)則變動
通常分為突然變動和隨機擾動(變動),記為Rt。
常見的時間序列模型有以下幾類
- 加法模型 ? yt=Tt+St+Ct+Rt;(常用)
- 乘法模型 ? yt=Tt×St×Ct×Rt;
- 混合模型 ? yt=Tt×St+Rt;yt=St+Tt×Ct×Rt;
其中,yt為觀測值,隨機變動Rt滿足
?如果在預測時間范圍內,無突然變動或者隨機波動的方差σ2較小,并且有理由認為現在的演變趨勢將持續(xù)發(fā)展到未來,可用一些經驗方法進行預測。
2、時間序列預測的具體方法
2.1 移動平均法
?設觀測時間序列為y1,y2,…,yT。
一次移動平均值計算公式:
二次移動平均值計算公式:
這里N<T,一般5≤N≤200.
(1)當預測目標的基本趨勢在某一水平上下波動時,采用一次移動平均方法計算預測,即
(2)當預測目標的基本趨勢與某一直線相吻合時,采用二次移動平均法.
以上預測標準誤差為?
?一般來說,N取多少為好,S越小越好。如果數據自帶周期,N最好取周期值。
案例1
某企業(yè)1-11月的銷售收入時間序列如表1所列,試用一次移動平均法預測12月的銷售收入。
表1 1-11月銷售收入記錄
月份t | 1 | 2 | 3 | 4 | 5 | 6 |
銷售收入yt | 533.8 | 574.6 | 606.9 | 649.8 | 705.1 | 772.0 |
月份t | 7 | 8 | 9 | 10 | 11 | |
銷售收入yt | 816.4 | 892.7 | 963.9 | 1015.1 | 1102.7 |
【符號說明】
- t ?時間變量t=1,2,…,11
- yt 銷售量記錄值
- n ?移動平均項數
- Mt 一次移動平均值,t=n,n+1,…,11
- y(1) 預測值,t=5,6,…,12
?【預測模型】
一次移動平均預測模型為:
?針對n=3,4,5,都做一次移動平均預測,將計算結果和誤差都反映在表2.
先編寫一個時間序列為yt,移動平均項n的預測與誤差的程序yd1.m,再調用此函數計算不同n值的預測與誤差,存放在表2進行對比
表2 n分別取3,4,5的預測對比
t | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 標準誤差 |
yt | 705.10? | 772.00? | 816.40? | 892.70? | 963.90? | 1015.10? | 1102.70? | 0.00? |
n=3 | 653.93? | 708.97? | 764.50? | 827.03? | 891.00? | 957.23? | 1027.23? | 60.73? |
n=4 | 634.10? | 683.45? | 735.83? | 796.55? | 861.25? | 922.03? | 993.60? | 92.37? |
n=5 | 614.04? | 661.68? | 710.04? | 767.20? | 830.02? | 892.02? | 958.16? | 124.63? |
function [M1,s]=yd1(yt,n)
t=length(yt);
yt1=[];
for k=n:tyr=yt(k-n+1:k);yr1=mean(yr);yt1=[yt1,yr1];
end
M1=[zeros(1,n-1),yt1];
yt21=yt(n+1:t);
yt22=M1(n+1:t);
yts=yt22-yt21;
s=(sum(yts.^2)/(t-n))^0.5;
yt=[533.8 574.6 606.9 649.8 705.1 772 816.4 892.7 963.9 1015.1 1102.7];
n=5;
[m1,s1]=yd1(yt,3);
[m2,s2]=yd1(yt,4);
[m3,s3]=yd1(yt,5);
S=[0,s1,s2,s3];
Y=[yt;m1;m2;m3];
B=[Y,S'];
xlswrite('d:\yidong1.xlsx',B);
由表2可見,n=3比n=4預測效果好,n=4比n=5預測效果好。用n=3的計算作預測,12月份銷售量為1027.23.
2.2 一次指數平滑預測法
(1)預測模型
設時間序列為y1,y2,…,yt,…,α為加權系數,0<α<1,一次指數平滑公式為
預測模型為
?(2)加權系數的選擇
(1)如果時間序列波動不大,比較平穩(wěn),則α取小一點,0.1-0.5,減小修正幅度,使預測模型包含較長的序列信息;
(2)如果序列具有迅速增加的變動趨勢,α取大一點,0.6-0.8,使得預測模型靈敏度高一些,以便迅速跟上數據的變化。
?(3)初始值的確定
一般選取最初幾期實際值的平均值作為初始值。
案例2
就案例1中問題,用指數平滑預測法預測12月銷售量。
?就α=0.2,0.5,0.8分別作一次指數平滑預測,初始值為
即
按照預測模型計算不同α預測結果與誤差,計入表3,進行對比做出決策。
function [s1,s]=expph1(yt,a)
n=length(yt);
s1(1)=mean(yt(1:2));
for k=2:ns1(k)=a*yt(k)+(1-a)*s1(k-1);
end
y11=s1-yt;
s=std(y11);
yt=[533.8 574.6 606.9 649.8 705.1 772 816.4 892.7 963.9 1015.1 1102.7];
[m1,s1]=expph1(yt,0.2);
[m2,s2]=expph1(yt,0.5);
[m3,s3]=expph1(yt,0.8);
s=[0,s1,s2,s3];
m=[yt;m1;m2;m3];
B=[m,s'];
xlswrite('d:\yd1.xlsx',B);
表3 不同權系數的指數平滑預測及其標準誤差
月份 | 1 | 2 | 3 | 4 | 5 | 6 |
yt | 533.80 | 574.60 | 606.90 | 649.80 | 705.10 | 772.00 |
a=0.2 | 554.20 | 558.28 | 568.00 | 584.36 | 608.51 | 641.21 |
a=0.5 | 554.20 | 564.40 | 585.65 | 617.73 | 661.41 | 716.71 |
a=0.8 | 554.20 | 570.52 | 599.62 | 639.76 | 692.03 | 756.01 |
月份 | 7 | 8 | 9 | 10 | 11 | 誤差 |
yt | 816.40 | 892.70 | 963.90 | 1015.10 | 1102.70 | 0.00 |
a=0.2 | 676.25 | 719.54 | 768.41 | 817.75 | 874.74 | 81.82 |
a=0.5 | 766.55 | 829.63 | 896.76 | 955.93 | 1029.32 | 28.33 |
a=0.8 | 804.32 | 875.02 | 946.12 | 1001.30 | 1082.42 | 11.20 |
由表3可以看出,α=0.8誤差最小,選擇系數α=0.8進行預測,12月份的銷售量為?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 圖2 ?預測值與實際值對比
從表2、表3和圖2可以看出,預測值總是滯后于實際值。原因就是數據不滿足模型要求(平穩(wěn)型)。
?3、差分指數平滑法
差分是改變數據趨勢的根本方法(就像導數改變冪函數階數一樣)。如果數據呈現直線吻合型,差分后就呈現平穩(wěn)性。
一階差分指數平滑預測模型公式如下
?【1】
公式【1】的第三個表示是就相當于:預測值=原值+差分(微分)的預測值.
案例3
對案例1問題用差分指數平滑法預測第12月的銷售量。(取α=0.5).
?(1)先計算原始數據xt的差分,得到yt;
(2)對數據yt,取α=0.5做一次指數平滑預測,得到St;
(3)作預測
先編制一個給定時間序列和α的計算差分指數平滑預測的m函數,再調用m這個函數將計算結果匯總到表4.將預測結果與實測值對比如圖3.差分指數平滑預測當α=0.5時,誤差較小。
function [yc,err]=diffexpph(yt,a)
y=diff(yt);
[ym,s]=expph1(y,a);
y=[0,y];
ym=[0,ym];
n=length(y);
r=a*y(n)+(1-a)*ym(n);
ym=[ym,r];
for k=1:nyc(k+1)=ym(k+1)+yt(k);
end
xy=yc(2:end-1)-yt(2:end);
err=(sum(xy.^2)/10)^0.5;
yt=[533.8 574.6 606.9 649.8 705.1 772 816.4 892.7 963.9 1015.1 1102.7]; a=0.5;
[yc,err]=diffexpph(yt,a);plot(2:11,yt(2:end),'*',2:11,yc(2:end-1),'+'),
legend('實測值','預測值')
>> A1=[yt,0];
>> A=[A1;yc];
>> xlswrite('d:\diffexpph.xlsx',A)
????????????????圖3 差分指數平滑預測于實測對比
月份 | 1 | 2 | 3 | 4 | 5 | 6 |
實測yt | 533.8 | 574.6 | 606.9 | 649.8 | 705.1 | 772 |
預測yc |
| 570.35 | 609.025 | 645.5625 | 696.7813 | 762.0406 |
月份 | 7 | 8 | 9 | 10 | 11 | 12 |
實測yt | 816.4 | 892.7 | 963.9 | 1015.1 | 1102.7 |
|
預測yc | 822.6703 | 879.8852 | 960.0426 | 1023.171 | 1088.536 | 1183.218 |
?????????????????????????????????表4 案例3差分指數平滑預測有關數據
由表4可以得到預測值,第12月銷售量為1183.218.將不同α取值(0.1,0.3,0.6,0.9)計算結果匯總到表5,對比顯示,差分指數平滑對線性吻合型數據,α取值越大,預測越準確。
yt=[533.8 574.6 606.9 649.8 705.1 772 816.4 892.7 963.9 1015.1 1102.7];
[yc1,s1]=diffexpph(yt,0.1);
[yc2,s2]=diffexpph(yt,0.3);
[yc3,s3]=diffexpph(yt,0.6);
[yc4,s4]=diffexpph(yt,0.9);
A1=[0,yt(2:end),0];
A2=[0,s1,s2,s3,s4];
A=[A1;yc1;yc2;yc3;yc4]';
B=[A;A2];
xlswrite('d:\diffexpph1.xlsx',B)
月份\α |
| 0.1 | 0.3 | 0.6 | 0.9 |
1 | 0 | 0 | 0 | 0 | 0 |
2 | 574.6 | 570.35 | 570.35 | 570.35 | 570.35 |
3 | 606.9 | 610.725 | 609.875 | 608.6 | 607.325 |
4 | 649.8 | 643.7025 | 644.4625 | 646.24 | 648.7825 |
5 | 705.1 | 688.4523 | 692.6838 | 698.716 | 703.7583 |
6 | 772 | 746.577 | 755.1886 | 764.8064 | 770.7058 |
7 | 816.4 | 813.7693 | 820.382 | 822.5226 | 818.5206 |
8 | 892.7 | 861.6224 | 873.1574 | 882.389 | 889.7221 |
9 | 963.9 | 940.5202 | 953.7902 | 961.8156 | 964.1122 |
10 | 1015.1 | 1012.058 | 1022.023 | 1022.266 | 1017.121 |
11 | 1102.7 | 1067.202 | 1082.066 | 1091.006 | 1099.262 |
12 | 0 | 1158.352 | 1175.856 | 1185.623 | 1189.956 |
誤差 | 0 | 19.44747 | 12.10722 | 6.799773 | 2.281841 |
?????????????????????????????????????????表5 指數平滑不同α預測對比
4、具有季節(jié)性特點的時間序列的預測
?具有季節(jié)特性的時間序列預測方法很多,這里介紹季節(jié)系數法,步驟如下:
(1)收集m年的每年各個季度或者各個月份(n個季度)的時間序列aij,i表示年份,i=1,2,…,m;j表示季度,j=1,2,…,n;
(2)計算所有數據的平均值
(3)計算同季度的算數平均數
(4)計算季度系數
(5)預測計算
?當時間序列是按季度給出,先求初預測年份(下一年)的年加權平均
再計算預測年份季度平均
最后預測當年第j季度的預測值
?案例4
某商店某類商品1999-2000年各季度銷售額如表6所示,預測2004年各季度銷售額。
?????????????????????????表6 1999-2003各季度銷售額 ? (單位:元)
年份\季度 | 1 | 2 | 3 | 4 |
1999 | 137920 | 186742 | 274561 | 175422 |
2000 | 142814 | 198423 | 265419 | 183512 |
2001 | 131002 | 193987 | 247556 | 169847 |
2002 | 157436 | 200144 | 283002 | 194319 |
2003 | 149827 | 214301 | 276333 | 185204 |
2004 | 145573 | 201170 | 272696 | 183901 |
?模型求解:按照上面的規(guī)范步驟,2004年個季度銷售額預測填入表6最后一行
B=xlsread('d:\jidu.xlsx');
A=B(:,2:end);
[m,n]=size(A);
a=sum(sum(A))/m/n;
aj=mean(A);
bj=aj/a;
yi=sum(A');
w=1:m;
yc=sum(yi.*w)/sum(w)/n;
ycj=yc*bj