《Python數據分析與挖掘實戰》數據挖掘算法基礎-(5)時間序列_第1頁
《Python數據分析與挖掘實戰》數據挖掘算法基礎-(5)時間序列_第2頁
《Python數據分析與挖掘實戰》數據挖掘算法基礎-(5)時間序列_第3頁
《Python數據分析與挖掘實戰》數據挖掘算法基礎-(5)時間序列_第4頁
《Python數據分析與挖掘實戰》數據挖掘算法基礎-(5)時間序列_第5頁
已閱讀5頁,還剩16頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第5章數據挖掘算法基礎數據挖掘算法基礎1聚類目錄分類與回歸2關聯規則3智能推薦4時間序列5時間序列是按照時間排序的一組隨機變量,它通常是在相等間隔的時間段內依照給定的采樣率對某種潛在過程進行觀測的結果,是一種動態數據處理的統計方法,主要研究隨機數據序列所遵從的統計規律。常用的時間序列模型:時間序列算法模型名稱描述平滑法平滑法常用于趨勢分析和預測,利用修勻技術,削弱短期隨機波動對序列的影響,使序列平滑化。根據所用平滑技術的不同,可具體分為移動平均法和指數平滑法趨勢擬合法趨勢擬合法將時間作為自變量,相應的序列觀察值作為因變量,建立回歸模型。根據序列的特征,可具體分為線性擬合和曲線擬合組合模型時間序列的變化主要受到長期趨勢(T)、季節變動(S)、周期變動(C)和不規則變動()這4個因素的影響。根據序列的特點,可以構建加法模型和乘法模型加法模型:

;乘法模型:

時間序列算法模型名稱描述AR模型以前

期的序列值

為自變量、隨機變量

的取值

為因變量建立線性回歸模型MA模型隨機變量

的取值

與以前各期的序列值無關,

建立

與前

期的隨機擾動

的線性回歸模型ARMA模型

隨機變量

的取值

不僅與以前

期的序列值有關,還與前

期的隨機擾動有關ARIMA模型許多非平穩序列差分后會顯示出平穩序列的性質,稱這個非平穩序列為差分平穩序列。對差分平穩序列可以使用ARIMA模型進行擬合。ARCH模型ARCH模型能準確地模擬時間序列變量的波動性的變化,適用于序列具有異方差性并且異方差函數短期自相關GARCH模型及其衍生模型GARCH模型稱為廣義ARCH模型,是ARCH模型的拓展。相比于ARCH模型,GARCH模型及其衍生模型更能反映實際序列中的長期記憶性、信息的非對稱性等性質針對一個觀察值序列后,首先要對它的白噪聲和平穩性進行檢驗,這兩個重要的檢驗稱為序列的預處理。根據檢驗結果可以將序列分為不同的類型:時間序列的預處理序列的各項之間沒有任何相關關系,序列在進行完全無序的隨機波動白噪聲序列均值和方差是常數,通常是建立一個線性模型來擬合該序列的發展,借此提取該序列的有用信息。平穩非白噪聲序列均值和方差不穩定,處理方法一般是將其轉變為平穩序列,再應用有關平穩時間序列的分析方法非平穩序列平穩時間序列的定義如果時間序列在某一常數附近波動且波動范圍有限,即有常數均值和常數方差,并且延遲期的序列變量的自協方差和自相關系數是相等的或者說延遲期的序列變量之間的影響程度是一樣的,則稱此序列為平穩序列。時間序列的預處理平穩性檢驗平穩性檢驗時間序列的預處理時序圖檢驗根據平穩時間序列的均值和方差都為常數的性質,平穩序列的時序圖顯示該序列值始終在一個常數附近隨機波動,而且波動的范圍有界;如果有明顯的趨勢性或者周期性那它通常不是平穩序列。自相關圖檢驗隨著延遲期數的增加,平穩序列的自相關系數(延遲期)會比較快地衰減趨向于零,并在零附近隨機波動,而非平穩序列的自相關系數衰減的速度比較慢單位根檢驗單位根檢驗是指檢驗序列中是否存在單位根,存在單位根就是非平穩時間序列白噪聲檢驗也稱純隨機性檢驗,一般是構造檢驗統計量來檢驗序列的白噪聲;常用的檢驗統計量有Q統計量和LB統計量,計算出統計量后再計算出對應的值,如果值顯著大于顯著性水平,則表示該序列不能拒絕純隨機的原假設,可以停止對該序列的分析。時間序列的預處理白噪聲檢驗自相關系數(ACF)平穩AR(p)模型的自相關系數呈指數的速度衰減,始終有非零取值,不會在大于某個常數之后就恒等于零,這個性質就是平穩AR(p)模型的自相關系數具有拖尾性。偏自相關系數(PACF)對于一個平穩AR(p)模型,求出延遲期自相關系數時,實際上的得到的并不是與之間單純的相關關系,因為同時還會受到中間個隨機變量的影響,所以自相關系數里實際上摻雜了其他變量對與的相關影響,為了單純地測度對的影響,引進偏自相關系數的概念。拖尾與截尾截尾是指時間序列的ACF或PACF在某階后均為0的性質;

拖尾是ACF或PACF并不在某階后均為0的性質。平穩時間序列分析基本性質具有結構的模型稱為階自回歸模型,簡記為AR(p)。即在t時刻的隨機變量的取值是前p期的多元線性回歸,認為主要是受過去p期的序列值的影響。誤差項是當期的隨機干擾,為零均值白噪聲序列。平穩AR(p)模型的性質如下表所示:平穩時間序列分析AR模型統計量性質統計量性質均值常數均值自相關系數(ACF)拖尾方差常數方差偏自相關系數(PACF)階截尾具有結構的模型稱為q階移動平均模型,簡記為MA(q)。即在t時刻的隨機變量的取值是前q期的隨機擾動的多元線性函數,誤差項是當期的隨機干擾,為零均值白噪聲序列,是序列的均值。認為主要是受過去q期的誤差項的影響。平穩MA(q)模型的性質如下表所示:平穩時間序列分析MA模型統計量性質統計量性質均值常數均值自相關系數(ACF)階截尾方差常數方差偏自相關系數(PACF)拖尾具有結構的模型稱為自回歸移動平均模型,簡記為ARMA(p,q)。即在t時刻的隨機變量的取值是前p期和前q期的多元線性函數,誤差項是當期的隨機干擾,為零均值白噪聲序列。認為主要是受過去p期的序列值和過去q期的誤差項的共同影響。特別的,當時,是AR(p)模型;當時,是MA(q)模型。平穩ARMA(p,q)的性質如下表所示:平穩時間序列分析ARMA模型統計量性質統計量性質均值常數均值自相關系數(ACF)拖尾方差常數方差偏自相關系數(PACF)拖尾平穩時間序列建模步驟:平穩時間序列分析平穩時間序列建模模型自相關系數(ACF)偏自相關系數(PACF)AR(p)拖尾p階截尾MA(q)q階截尾拖尾ARMA(p,q)p階拖尾q階拖尾對非平穩時間序列的分析方法可以分為確定性因素分解的時序分析和隨機時序分析兩大類。確定性因素分解的方法將所有序列的變化都歸結為4個因素(長期趨勢、季節變動、循環變動和隨機波動)的綜合影響,其中長期趨勢和季節變動的規律性信息通常比較容易提取,而由隨機因素導致的波動則非常難以確定和分析,對隨機信息浪費嚴重,會導致模型擬合精度不夠理想。隨機時序分析法的發展就是為了彌補確定性因素分解方法的不足。根據時間序列的不同特點,隨機時序分析可以建立的模型有ARIMA模型、殘差自回歸模型、季節模型、異方差模型等。本小節重點介紹ARIMA模型對非平穩時間序列進行建模。非平穩時間序列分析差分運算具有強大的確定性信息提取能力,許多非平穩序列差分后會顯示出平穩序列的性質,這時稱這個非平穩序列為差分平穩序列。常用的差分計算分為p階差分和k步差分兩種。

p階差分:做p次差分。k步差分:相距k個數據的兩個序列值之間的減法運算稱為k步差分運算。非平穩時間序列分析差分運算對差分平穩序列可以使用ARMA模型進行擬合。ARIMA模型的實質就是差分運算與ARMA模型的組合。

非平穩時間序列分析ARIMA模型平穩性和白噪聲檢驗使用statsmodels庫中的stats模塊的acorr_ljungbox函數可以檢測是否為白噪聲序列,基本使用格式和常用參數說明如下:statsmodels.stats.diagnostic.acorr_ljungbox(x,lags=None,boxpierce=False,model_df=0,period=None,return_df=None)非平穩時間序列分析參數名稱參數說明x接收array_like,接收時間序列數據,無默認值lags接收int,表示滯后數目,默認為Noneboxpierce接收bool,表示是否返回Box-Pierce測試結果,默認為Falsemodel_df接收int,表示模型消耗的自由度數,默認為0period接收int,表示季節性時間序列的周期,默認為None查看時間序列平穩性通過時間序列的時序圖和自相關圖可以查看時間序列平穩性。使用statsmodel庫中的tsa模塊的plot_acf函數可以繪制自相關系數圖,基本使用格式和常用參數說明如下:statsmodels.tsa.stattools.plot_acf(x,lags=None,alpha=0.05,missing='none',title='Autocorrelation',zero=True)非平穩時間序列分析參數名稱參數說明x接收array_like,表示時間序列數據,無默認值lags接收int、array_like,表示滯后值,默認為Nonealpha接受float,表示給定級別的置信區間,默認為0.05missing接收str,表示如何處理NaN,默認為Nonetitle接收str,表示標題,默認為Autocorrelationzero接收bool,表示是否包括0滯后自相關,默認為True單位根檢驗單位根檢驗是指檢驗序列中是否存在單位根,因為存在單位根就是非平穩時間序列了。單位根檢驗可以檢驗時間序列的平穩性。使用statsmodels庫中的tsa模塊的adfuller函數可以對原始序列進行單位根檢驗,查看數據的平穩性,基本使用格式和常用參數說明如下:statsmodels.tsa.stattools.adfuller(x,maxlag=None,regression='c',autolag='AIC',store=False,regresults=False)非平穩時間序列分析參數名稱參數說明x接收array_like,表示要檢驗的數據集,無默認值maxlag接收int,表示最大滯后數目,默認為Noneregresults接收bool,表示是否將完整的回歸結果將返回,默認為False對原始序列進行一階差分使用pandas庫中的DataFrame模塊的diff()方法可以實現對觀測值序列進行差分計算,基本使用格式和常用參數說明如下:pandas.DataFrame.diff(periods=1,axis=0)非平穩時間序列分析參數名稱參數說明periods接收int,表示差分周期,默認為1axis接收int、str,表示對行還是列差分,默認為0ARIMA模型構建使用statsmodels庫中的ts

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論