首頁  >  文章  >  科技週邊  >  時序分析中的常用演算法,都在這裡了

時序分析中的常用演算法,都在這裡了

PHPz
PHPz轉載
2023-12-15 14:17:541162瀏覽

時間序列分析是利用事件在過去一段時間內的特徵來預測未來一段時間內該事件的特徵。這是一個相對較為複雜的預測建模問題,與迴歸分析模型的預測有所不同。時間序列模型依賴事件發生的先後順序,同樣大小的值改變順序後輸入模型會產生不同的結果

時序分析中的常用演算法,都在這裡了

時序問題都看成是迴歸問題,只是迴歸的方式(線性迴歸、樹模型、深度學習等)有一定的差異。

時序分析包括靜態時序分析(STA)和動態時序分析。

以下為幾種常見的時序分析演算法

1 深度學習時序分析

RNN(循環神經網路)

循環神經網路是指一個隨著時間的推移,重複發生的結構。在自然語言處理(NLP),語音影像等多個領域都有非常廣泛的應用。 RNN網路和其他網路最大的不同就在於RNN能夠實現某種“記憶功能”,是進行時間序列分析時最好的選擇。如同人類能夠憑藉自己過往的記憶更能認識這個世界一樣。 RNN也實現了類似人腦的這個機制,對所處理過的資訊留存有一定的記憶,而不像其他類型的神經網路並不能對處理過的資訊留存記憶。

長處:

這種方法可以記憶時間,適用於解決時間序列中間間隔較短的問題

##缺點:

長時間步資料容易出現梯度消失和梯度爆炸的問題

LSTM(長短時記憶網路)

LSTM(長短時記憶網絡,Long Short-Term Memory)是一種時間循環神經網絡,旨在解決常規循環神經網絡(RNN)中存在的長期依賴問題而設計的。所有RNN都由一系列重複的神經網路模組構成

長處:

#適合處理和預測時間序列中間隔和延遲非常長的重要事件。

缺點:

模型參數過多會導致過度擬合問題的出現​​

2 傳統的時序分析模型

  • 自回歸(Auto Regression, AR)
  • #移動平均線(Moving Average, MA)
  • 自回歸移動平均線(Autoregressive Moving Average, ARMA)
  • #自回歸綜合移動平均線(Autoregressive Integrated Moving Average, ARIMA)
  • ##季節性自回歸整合移動平均線(Seasonal Autoregressive Integrated Moving Average, SARIMA)
  • 具有外生回歸量的季節性自回歸整合移動平均線(Seasonal Autoregressive Integrated Moving-Average with Exogenous Regressors, SARIMAX)

自迴歸模型AR

自迴歸模型(Autoregressive Model,簡稱AR 模型)是時間序列分析方法,用於描述一個時間序列變數與其過去值之間的關係。 AR模型假設當前觀測值與過去的觀測值之間存在線性關係,透過使用過去的觀測值來預測未來的觀測值。

長處:
  • #簡單性:AR模型是一種線性模型,易於理解和實作。它只使用過去的觀測值作為自變量,沒有其他複雜的因素需要考慮。
  • 建模能力:AR模型可以捕捉時間序列資料的自相關結構,也就是目前觀測值與過去觀測值之間的關係。它能夠提供對未來觀測值的預測,並揭示數據中的趨勢和模式。

缺點:###
  • 只適用於平穩序列:AR模型要求時間序列是平穩的,即平均值、變異數和自相關不隨時間變化。如果序列不平穩,可能需要進行差分操作或使用其他模型來處理非平穩性。
  • 對過去觀測值敏感:AR模型的預測結果受到過去觀測值的影響,因此在處理長期預測時可能會出現誤差累積的問題。較大的階數可能會導致模型過度擬合,而較小的階數可能無法捕捉到時間序列的複雜動態。
  • 無法處理季節性資料:AR模型無法直接處理具有明顯季節性的時間序列。對於具有季節性模式的數據,可以使用季節性AR模型(​​SAR)或ARIMA模型進行建模。

移動平均法(MA)

移動平均法(MA):此方法是基於資料的平均值,並假設未來的值與過去的值之間具有一定的穩定性

長處:

能夠捕捉到時間序列資料中的移動平均關係。 MA模型利用過去時間步白雜訊誤差項的線性組合來預測目前觀測值,因此可以捕捉資料中的移動平均性。

相對簡單直覺。 MA模型的參數表示過去時間步白雜訊誤差項的權重,可以透過估計這些權重來擬合模型。

缺點:

  • 只能捕捉移動平均關係,無法捕捉自回歸關係。 MA模型忽略了過去時間步觀測值,可能無法捕捉到資料中的自相關性。
  • 對於某些時間序列數據,MA模型可能需要較高的階數才能較好地擬合數據,導致模型複雜度增加。

自迴歸滑動平均模型

自迴歸滑動平均模型(ARMA模型,Auto-Regression and Moving AverageModel)是研究時間序列的重要方法,由自迴歸模型(AR模型)與滑動平均模型(MA模型)為基礎「混合」而成,具有適用範圍廣、預測誤差小的特性。

自回歸差分移動平均線(Autoregressive Integrated Moving Average, ARIMA)

ARIMA 模型是自回歸差分移動平均模型的縮寫,全稱為Autoregressive Integrated Moving Average Model。這個模型主要由三個部分組成,分別是自迴歸模型(AR)、差分過程(I) 和移動平均模型(MA)

ARIMA模型的基本概念是利用數據本身的歷史資訊來預測未來。一個時間點上的標籤值既受過去一段時間內的標籤值影響,也受過去一段時間內的偶然事件的影響,這就是說,ARIMA模型假設:標籤值是圍繞著時間的大趨勢而波動的,其中趨勢是受歷史標籤影響構成的,波動是受一段時間內的偶然事件影響構成的,且大趨勢本身不一定是穩定的

ARIMA模型是一種時間序列分析方法,透過對資料的自相關性和差分進行建模,來提取資料中隱藏的時間序列模式,進而預測未來的資料

  • AR部分用於處理時間序列的自回歸部分,它考慮了過去若干時期的觀測值對當前值的影響。
  • I部分用於使非平穩時間序列達到平穩,並透過一階或二階等差分處理,消除了時間序列中的趨勢和季節性因素。
  • MA部分用於處理時間序列的移動平均部分,它考慮了過去的預測誤差對目前值的影響。

結合這三部分,ARIMA模型既可以捕捉到資料的趨勢變化,又可以處理那些有臨時、突發的變化或雜訊較大的資料。所以,ARIMA模型在很多時間序列預測問題中都有很好的表現。

長處:

模型的建構非常簡單,只需要使用內生變量,而無需使用其他外生變數。所謂內生變數是指僅依賴資料本身的變量,而不像迴歸模型需要其他變數的支持

#缺點:

時序資料的要求是穩定的,或是經過差分處理後變得穩定

本質上只能捕捉線性關係,而無法捕捉非線性關係。

季節性自迴歸整合移動平均模型 SARIMA

SARIMA是一種常用的時序分析方法,它是ARIMA模型在季節性資料上的擴展。 SARIMA模型可以用於預測季節性時間序列數據,例如每年的銷售額或每週的網站訪問量。以下是SARIMA模型的優缺點:

長處:

  • SARIMA模型可以很好地處理季節性數據,因為它考慮了時間序列資料中的季節性因素。
  • SARIMA模型可以對時間序列資料進行長期預測,因為它可以捕捉到資料中的趨勢和週期性變化。
  • SARIMA模型可以用於多變量時間序列數據,因為它可以同時考慮多個變數之間的關係。

缺點:

  • SARIMA模型需要大量的歷史資料來訓練,因此在資料量較少的情況下可能不太適用。
  • SARIMA模型對異常值較為敏感,因此需要對異常值進行處理。
  • SARIMA模型的運算複雜度較高,需要大量的計算與最佳化。

具有外生迴歸量的季節自迴歸整合移動平均模型SARIMAX

季節性自迴歸整合移動平均模型(SARIMAX)是在差分移動自迴歸模型(ARIMA)的基礎上加上外生迴歸量的模型。它適用於具有明顯週期性和季節性特徵的時間序列資料

3 其他時序模型

這類方法以lightgbm、xgboost 為代表,一般就是把時序問題轉換為監督式學習,透過特徵工程和機器學習方法去預測;這種模型可以解決絕大多數的複雜的時序預測模型。支援複雜的資料建模,支援多變量協同迴歸,支援非線性問題。

特徵工程的重要性不言而喻,它對於機器學習的成功起到了關鍵作用。然而,特徵工程並不是一項簡單的任務,它需要複雜的人工處理和獨特的專業知識。特徵工程的水平往往決定了機器學習的上限,而機器學習演算法只是在盡可能接近這個上限。 一旦特徵工程完成,我們可以直接應用樹模型演算法——lightgbm和xgboost。這兩個模型是非常常見且有效率的建模方法。除此之外,它們還具有以下特點:

  • 計算速度快,模型精度高;
  • ##缺失值不需要處理,比較方便;
  • 支援category 變數;
  • 支援特徵交叉。

具體選擇哪一種方法需要根據資料的性質、問題的特徵以及自身的經驗和能力來綜合考量。

需要根據特定的資料特徵、問題要求和自身的能力來選擇合適的時間序列預測方法。有時,結合多個方法可以提高預測的準確性和穩定性。同時,為了更好地選擇模型和評估預測結果,對資料進行視覺化分析和模型診斷也是很重要的。

以上是時序分析中的常用演算法,都在這裡了的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:51cto.com。如有侵權,請聯絡admin@php.cn刪除