關於「時間序列回歸」,這些你必須知道的事!

2020-12-11 騰訊網

作者 | 時序人 責編 | 張文

頭圖 | CSDN 下載自東方 IC

上篇我們講了時間序列預測,其中提到了時序預測模型與回歸預測模型的不同。換句話說,時序預測模型依賴於數值在時間上的先後順序,是回歸模型中的一部分。

回歸分析是確定兩種或兩種以上變量間相互依賴的定量關係的一種統計分析方法。是一種預測性的建模技術,它研究的是因變量(Y)和自變量(X)之間的關係。例如不同的施肥量對苗木高生長的關係、中國人的消費習慣對美國經濟的影響等等。回歸分析衡量自變量對因變量 Y 的影響能力,進而可以用來預測因變量的發展趨勢。

本文為大家描述時間序列的回歸方法。簡單來說,時間序列的回歸分析需要我們分析歷史數據,找到歷史數據演化中的特徵與模式,其主要分為線性回歸分析和非線性回歸分析兩種類型。

模型構建與驗證

回歸分析多採用機器學習方法,我們首先需要明確機器學習(或深度學習)模型構建與驗證的主體思路:

分析數據構建數據特徵,將數據轉化為特徵樣本集合;

明確樣本與標籤(Label),劃分訓練集與測試集;

比較不同模型在相同的訓練集中的效果,或是相同模型的不同參數在同一個訓練集中擬合的效果;

在驗證樣本集中驗證模型的準確度,通過相關的結果評估公式選擇表現最好同時沒有過擬合的模型。

線性模型

回歸就是使用若干已知的樣本對公式參數的估計。,這裡的回歸函數可以是任意函數,其中線性回歸的模型如下所示:

其中,是訓練樣本集合中樣本的各個維度,a,b,c,d是模型中的未知參數。

通過對線性模型的訓練,可以較好的得到模型中各個變量之間的關係。

常用的線性模型有:線性回歸、多項式回歸、嶺回歸、套索回歸等等,下面為大家簡單介紹。

線性回歸(Linear Regression)

線性回歸是最為人熟知的建模技術,是人們學習如何做預測時的首選方法之一。在此技術中,因變量是連續的,自變量可以是連續的也可以是離散的。回歸的本質是線性的。

線性回歸通過使用最佳的擬合直線(又被稱為回歸線),建立因變量(Y)和一個或多個自變量(X)之間的關係。

它的表達式為:,其中 w 直線斜率,e 為誤差項。如果給出了自變量 X,就能通過這個線性回歸表達式計算出預測值,即因變量 Y。

圖 | 線性回歸擬合樣本點示意圖

多元線性回歸與一元線性回歸的區別在於,多元線性回歸有大於 1 個自變量,而一元線性回歸只有 1 個自變量。接下來的問題是「如何獲得最佳擬合直線(確定 a 和 b 值)?」

這個問題可以使用最小二乘法(Least Square Method)輕鬆解決。最小二乘法是一種擬合回歸線的常用算法。它通過最小化每個數據點與預測直線的垂直誤差的平方和來計算,優化的目標函數如下:

使用各種優化方法,求解向量,得到線性模型中的相關參數,在使用逐點預測的方式,得到相應的預測結果。

劃重點:

自變量和因變量之間必須滿足線性關係。

多元回歸存在多重共線性,自相關性和異方差性。

線性回歸對異常值非常敏感。異常值會嚴重影響回歸線和最終的預測值。

多重共線性會增加係數估計的方差,並且使得估計對模型中的微小變化非常敏感。結果是係數估計不穩定。

在多個自變量的情況下,我們可以採用正向選擇、向後消除和逐步選擇的方法來選擇最重要的自變量。

多項式回歸(Polynomial Regression)

對應一個回歸方程,如果自變量的指數大於 1,則它就是多項式回歸方程:

在多項式回歸中,最佳的擬合線不是直線,而是擬合數據點的曲線。

劃重點:

雖然可能會有一些誘導去擬合更高階的多項式以此來降低誤差,但是這樣容易發生過擬合。應該畫出擬合曲線圖形,重點放在確保曲線反映樣本真實分布上。下圖是一個例子,可以幫助我們理解。

圖 | 欠擬合(紅) / 正常擬合(藍) / 過擬合(綠)

尤其要注意曲線的兩端,看看這些形狀和趨勢是否有意義。更高的多項式可以產生怪異的推斷結果。

逐步回歸(Stepwise Regression)

當我們處理多個獨立變量時,就使用逐步回歸。在這種技術中,獨立變量的選擇是藉助於自動過程來完成的,不涉及人工幹預。

逐步回歸的做法是觀察統計值,例如 R-square、t-stats、AIC 指標來辨別重要的變量。基於特定標準,通過增加/刪除協變量來逐步擬合回歸模型。常見的逐步回歸方法如下所示:

標準的逐步回歸做兩件事,每一步中增加或移除自變量。

前向選擇從模型中最重要的自變量開始,然後每一步中增加變量。

反向消除從模型所有的自變量開始,然後每一步中移除最小顯著變量。

這種建模技術的目的是通過使用最少的自變量在得到最大的預測能力。它也是處理高維數據集的方法之一。

嶺回歸(Ridge Regression)

嶺回歸是當數據遭受多重共線性(獨立變量高度相關)時使用的一種技術。在多重共線性中,即使最小二乘估計是無偏差的,但是方差很大,使得觀察值遠離真實值。嶺回歸通過給回歸估計中增加額外的偏差度,能夠有效減少方差。

在線性方程中,預測誤差可以分解為兩個子分量。首先是由於偏頗,其次是由於方差。預測誤差可能由於這兩個或兩個分量中的任何一個而發生。這裡將討論由於方差引起的誤差。嶺回歸通過收縮參數 λ 解決了多重共線性問題。請看下面的方程式:

上面這個公式中包含兩項。第一個是最小平方項,第二個是係數 β 的平方和項,前面乘以收縮參數 λ。增加第二項的目的是為了縮小係數 β 的幅值以減小方差。

劃重點:

除非不假定正態性,嶺回歸與最小二乘回歸的所有假設是一樣的。

嶺回歸縮小了係數的值,但沒有達到零,這表明它沒有特徵選擇特徵。

這是一個正則化方法,使用了 L2 正則化。

套索回歸(Lasso Regression)

類似於嶺回歸,套索回歸懲罰的是回歸係數的絕對值。此外,它能夠減少變異性和提高線性回歸模型的準確性。請看下面的方程式:

套索回歸不同於嶺回歸,懲罰函數它使用的是係數的絕對值之和,而不是平方。這導致懲罰項(或等價於約束估計的絕對值之和),使得一些回歸係數估計恰好為零。施加的懲罰越大,估計就越接近零。實現從 n 個變量中進行選擇。

劃重點:

除非不假定正態性,套索回歸與最小二乘回歸的所有假設是一樣的。

套索回歸將係數收縮到零(正好為零),有助於特徵選擇。

這是一個正則化方法,使用了 L1 正則化。

如果一組自變量高度相關,那麼套索回歸只會選擇其中一個,而將其餘的縮小為零。

彈性回歸(ElasticNet Regression)

彈性回歸是嶺回歸和套索回歸的混合技術,它同時使用 L2 和 L1 正則化。當有多個相關的特徵時,彈性網絡是有用的。套索回歸很可能隨機選擇其中一個,而彈性回歸很可能都會選擇:

權衡嶺回歸和套索回歸的一個優點是它讓彈性回歸繼承了一些嶺回歸在旋轉狀態下的穩定性。

劃重點:

在高度相關變量的情況下,它支持群體效應。

它對所選變量的數目沒有限制

它具有兩個收縮因子和。

非線性模型

在之前的文章中介紹過時序統計學模型(AR、ARMA、ARIMA)模型,建模的思路源於針對當前觀測點的最近P個點和最近Q個點的誤差值進行建模,結構如下:

在利用相應的數學工具進行求解,具體的原理文章,請見《TS技術課堂 | 時間序列統計分析》

而在現實背景中,很多數據並不是嚴格按照線性關係刻畫的。為了兼顧模型的可解釋性,很多工作將非線性的數據進行各種變換(冪函數變換、倒數變換、指數變換、對數變換、Box-Cax等)將一個非線性問題轉換成一個呈現線性關係的問題,再利用相應的模型進行解決。

常見的可以進行非線性回歸預測的機器學習算法模型有:邏輯回歸,樹回歸,神經網絡模型等等。下面為大家簡單介紹。

邏輯回歸

邏輯回歸用來計算事件成功(Success)或者失敗(Failure)的概率。當因變量是二進位(0/1,True/False,Yes/No)時,應該使用邏輯回歸。這裡,Y 的取值範圍為 [0,1],它可以由下列等式來表示:

其中,p 是事件發生的概率。你可能會有這樣的疑問:為什麼在等式中使用對數 log 呢?因為我們這裡使用的二項分布(因變量),所以需要選擇一個合適的激活函數能夠將輸出映射到 [0,1] 之間,Logit 函數滿足要求。在上面的等式中,通過使用最大似然估計來得到最佳的參數。

劃重點:

邏輯回歸廣泛用於分類問題。

邏輯回歸不要求因變量和自變量之間是線性關係,它可以處理多類型關係,因為它對預測輸出進行了非線性 log 變換。

為了避免過擬合和欠擬合,我們應該涵蓋所有有用的變量。實際中確保這種情況的一個好的做法是使用逐步篩選的方法來估計邏輯回歸。

訓練樣本數量越大越好,因為如果樣本數量少,最大似然估計的效果就會比最小二乘法差。

自變量不應相互關聯,即不存在多重共線性。然而,在分析和建模中,我們可以選擇包含分類變量相互作用的影響。

如果因變量的值是序數,則稱之為序數邏輯回歸。

如果因變量是多類別的,則稱之為多元邏輯回歸。

回歸樹

分類與回歸樹(Classification and Regression Tree, CART)是一種經典的決策樹,可以用來處理涉及連續數據的分類或者回歸任務。其主要思想是將自變量的取值空間切分為若干個碎塊,並假設這個空間碎塊內的所有樣本的因變量取值接近(甚至相同)。

圖 | 回歸樹的案例

假設已經將空間劃分成M個區域,並且在每個區域內用常量!!!!對對應的區塊進行建模:

優化的目標函數採用誤差平方和的極小值作為衡量標準,推導得到最佳的,其恰好是在區域中的平均值:

從所有的數據開始,考慮一個分裂變量j和分裂點s,並定義一對半平面:

然後搜索分裂變量j和分裂點s,它求解:

對於任意的j和s,內部極小化可以用下式求解:

找到最好的分裂,數據從而可以劃分成兩個結果區域。每個區域再不斷重複分裂過程,直到最小絕對偏差(LAD)或者最小二乘偏差(LSD)最小。

後來很多樹模型,在回歸樹的基礎上,結合集成學習,更進一步提升了擬合能力,包括我們嘗嘗在競賽中看到的分類任務大殺器GBDT/XGBoost等。

神經網絡模型

深度學習方法近年來逐漸替代機器學習方法,成為人工智慧與數據分析的主流,因為其可以構建多層深層的結構,實現相比線性方法更加複雜的擬合方式,包括:循環神經網絡/卷積神經網絡/基於注意力機制的模型等等。

相關焦點

  • 關於瑜伽序列的編排,這些思路和技巧你要知道,附5套編排序列
    對於希望在家練習的伽人,學習編排瑜伽序列很有必要。從選擇姿勢到記住序列中每一側的動作,有很多事情要做。事實是,每節瑜伽課都可以有個大概的框架,一旦您了解了,添加體式進去就會很容易。無論主題是什麼,您都要知道體式的類別:扭轉,站立姿勢,坐姿,仰臥/俯臥姿勢,後彎,倒立和恢復性姿勢。您還需要考慮課堂上的最佳姿勢。最好是最具挑戰性的姿勢或最深的伸展。也可以選擇早些時候合併姿勢。例如,如果您的目標姿勢是「半月式」,那麼您將需要努力保持臀部的打開和平衡。
  • 關於曼谷BTS這些事必須知道
    報導中另整理出關於BTS的10件大小事,方便民眾和遊客更加認識這個終年維持25度「低溫」的交通工具。關於曼谷BTS 這些事您必須知道首先,不難發現,現在BTS車廂內已經沒有人在閱讀報紙或雜誌。據統計,有86%的乘客在旅程中至少會使用1次智慧型手機。加上車廂內電子屏幕不停播放各種廣告,讓乘客不想看都不行。也讓人不禁懷疑,乘客究竟是付錢搭車或付錢買廣告?
  • Sktime:用於時間序列機器學習的Python庫
    Scikiti -learn包中的方法假設數據是表格格式結構,每一列為獨立同分布——這些假設不適用於時間序列數據。包含時間序列學習模塊的程序包,例如狀態模型,不能很好地集成。此外,現有的Python包不支持許多基本的時間序列操作,比如將數據分成不同時間的訓練集和測試集。Sktime就是為了解決這一問題應運而生的。
  • 機器學習中的時間序列預測概述
    時間序列任務增加了一個「時間維度」,並且在觀察之間也有一個明確的依賴順序。簡單地說:時間序列是按時間順序進行的一系列觀察。時間序列數據的組成部分平均水平(level):序列的基線值。可以將這些組成部分組合起來,以提供所觀察到的時間序列。例如,可以將它們加在一起形成如下模型(儘管並非總是如此):時間序列數據可以有兩種不同的類型:單變量時間序列:指由在一定時間間隔內記錄的單個(標量)觀測值組成的時間序列數據。
  • 美食:關於松露你必須知道的一些事
    【美食:關於松露你必須知道的一些事】白松露法國可能是最好的黑松露的所在地,但是義大利是你想要去更高價的白松露的地方,在拍賣會上價格高達33萬美元。這些松露有黑色和白色兩種,雖然它們的價格不像歐洲表兄弟那麼高,但它們並沒有缺乏味道 - 有些人嘗試過它們認為口味更健壯,更甜美,並且不那麼樸實。在過去,這些松露不太受歡迎,因為收割機使用苛刻的工具來揭開它們,但現在許多農民正在使用訓練有素的狗來確保每個松露被嗅出,然後處理得更精細。俄勒岡松露最近才受到烹飪巨星的尊重,因此有朝一日他們可能會像法國和義大利同行那樣令人垂涎。
  • 關於血管支架,你必須了解這些事!
    關於血管支架,你必須了解這些事!提到心腦血管疾病,很多人認為這是老年人才會關心的事。但是近年來頻頻曝出的白領猝死事件,正是心腦血管疾病日益年輕化的徵兆。心肌梗死、腦出血、腦血栓……對於中青年人來說,這些疾病越來越不陌生了,尤其是急性心肌梗死。
  • 關於死飛入門,這些你必須知道!
    關於死飛入門,這些你必須知道! 死飛已經在中國火了有段時間了,早年間很多人因為追趕潮流入了坑。
  • 通過Python 代碼實現時間序列數據的統計學預測模型
    統計模型與統計要素時間序列分析常用統計模型單變量時間序列統計學模型,如:平均方法、平滑方法、有/無季節性條件的 ARIMA 模型。多變量時間序列統計學模型,如:外生回歸變量、VAR。結構化時間序列模型,如:貝葉斯結構化時間序列模型、分層時間序列模型。在本篇文章中,我們主要關注 SARIMA 和 Holt-winters 方法。
  • 臺灣烏龍茶,你必須知道這些事
    臺灣烏龍茶,你必須知道這些事產地優臺灣多高山,光照充足,好山好水孕育好的茶葉,品質上乘,近年來隨著臺灣茶在內地的風靡,似乎多了幾份「少小離家老大回」的感覺。製作難烏龍茶工藝本身在六大茶類裡也稱得上複雜,每一個環節,都需要根據當時的實際情況(溫度、溼度等)靈活處理,需要耗費極大的時間和人力成本。
  • 關於凍傷你必須要知道這些事
    關於凍傷你必須要知道這些事   9月上旬,青海省格爾木市公安部門再次通告強調:嚴禁個人、團體擅自進入可可西裡自然保護區核心區域開展旅行、探險等活動。隨著國內旅遊市場的逐步復甦,又逢「雙節」黃金周來臨,不少愛好戶外活動的「驢友」把目光瞄向了我國從西北到西南以及東北的廣大區域。但是這些地區雖然擁有豐富多彩的自然風光資源,吸引著眾多旅行者,卻隱藏著一些看不見的風險。
  • 關於航班經常延誤,乘搭飛機必須知道的4件事
    很多遊客對於飛行的專業知識普通人一般都不知道,而中國的航空公司普遍不善交流,作為萬能的導遊領隊你該如何對遊客不明白的專業名詞進行解釋。飛機如果延誤,究竟航空公司有多大責任?又有哪些因素是航空公司控制不了的?關於航班延誤的4個疑問疑問一:憑什麼因為空中管制不能飛?
  • 關於【瑰夏咖啡】你必須知道的四件事
    你對瑰夏這個品種的咖啡了解有多深?據傳這個品種來自衣索比亞西南部的瑰夏山,由衣索比亞前領事Richard Whally於1936年根據農業局局長的要求將其帶到肯亞。有四點你必須要知道關於瑰夏的事:1.瑰夏是很脆弱的植物:與其他咖啡品種相比,其葉面系統非常薄,這意味著光合作用的效率遠低於其他品種。最重要的是其根部系統也很脆弱,這會減少水和能量的攝入,一株瑰夏咖啡樹生產的咖啡豆只有卡杜艾這個品種的一半。
  • 關於瑰夏種子咖啡你必須知道的四件事
    你對瑰夏這個品種的咖啡了解有多深?
  • 乾貨|時間序列預測類問題下的建模方案探索實踐
    隨著機器學習和深度學習的興起,時間序列預測類問題越來越多的被抽象為回歸問題,從而可以使用機器學習和深度學習的相關模型,不需要受到基本假設的限制,適用範圍更廣,更受到人們青睞。3.1、統計學模型ARMA建模流程ARMA模型全名自回歸滑動平均模型,是研究時間序列的重要方法,由自回歸模型(簡稱AR模型)與移動平均模型(簡稱MA模型)為基礎「混合」構成。
  • 要想去泰國普吉島自由行,這些事你必須知道,早知道少吃虧!
    要想去泰國普吉島自由行,這些事你必須知道,早知道少吃虧!:2017年11月末定的機票,對比了飛豬、去哪兒、攜程等網站,還是飛豬比較便宜,從長春龍嘉飛,路程比較遠,重點考慮了時間因素,怎麼飛才能休息的好一點。
  • 如果你是熱愛遊泳的朋友,關於泳帽的這些知識,你必須知道!
    如果你是熱愛遊泳的朋友,關於泳帽的這些知識,你必須知道。相信凡是喜愛遊泳的朋友,都會有不止一種泳帽,遊泳帽一般情況下是沒有前後左右的區分的,我們可以隨意選擇一面作為正面,可能剛開始帶的時候會有一些不舒服,可能是選擇的矽膠泳帽大家還沒有習慣泳帽對頭部的按壓作用力,時間久了就會變好的,那麼作為一件遊泳必備的裝備,關於泳帽的這些知識點大家就必須要知道。
  • 入住酒店的那些事 你必須知道
    今天就說說關於酒店那些事,你必須知道。不然吃了悶虧,不要怪我沒有提醒你。1、首先,住酒店要看住宅年齡,如果你看到一個酒店很舊,舊的像上個世紀的房子,那麼最好不要入住。這樣的房子由於年久,首先是房屋質量不一定結實,不想中獎的話,儘量少選這樣的房子。
  • 關於《瓦爾登湖》你不知道的10件事
    想知道假如我不到這裡的話,當我臨終的時候,會不會對自己沒有經歷過的生活毫無察覺。」在瓦爾登湖的兩年間,梭羅發現,自己能以28.12美元在瓦爾登湖畔自己建立一個家,用0.27美元來維持一周的生活,用6個星期的時間去賺取足夠一年的生活費用,剩餘的46個星期,去做自己喜歡做的事。
  • 關於Win 10你必須知道的幾件事
    關於Win 10,我們應該知道些什麼呢?  全平臺一體化達成  畢竟Win 10面向的更大群體是普通消費者,他們和企業用戶有所不同,他們所關注的是真正的用戶體驗。因此,在發布會召開前微軟已經開始為它造勢,打頭陣的就是「開始菜單在Win 10中回歸」這一重要賣點。  新版Continuum界面可能到來
  • 劍靈回歸玩家必須知道的10件事 瞬間跟上進度
    不要在意,看完這些改動之後就可以繼續好好玩耍了~1、萬魂武器可以砍到北方雪原回歸後實在是不知道用什麼武器,就用著萬魂武器砍到北方雪原,主線給了極魔就用吧,但是最好暫時不要做主線武器了,餵到十段就可以了,不要再繼續往上合成了,