一位務實預測人的告白
Chris Chatfield 借鑒了40多年的預測經驗,就預測方法的選擇和實施提出了一些實用建議,並為預測從業人員和顧問提供建議。 Chatfield的關鍵點之一是:
■ 一種新方法的發明者通常會做出過分的主張。儘管新方法可能是預測工具箱的重要補充,但它們不會成為所有預測問題的靈丹妙藥。
■ 當有公平的比較時,諸如在 M,M2 和 M3 競賽中,適用於一系列樣本的合理的方法之間的平均差異是非常小的。那些有大的差異應該以懷疑的方式來處理。
■ Holt-Winters方法仍然是預測哪些顯示有趨勢和季節性數據的一種好並且穩健的方法。 ARIMA 建模僅適用於顯示短期相關性的序列,同時這些序列的變異不受趨勢和季節性的支配。
■ 預測區間(Prediction Interval)忽略模型不確定性。因此,我們可以使用模型間的平均方式來考慮模型不確定性的影響,而不是用單一模型或單一組的假設來進行預測。
■ 發表出版的偏差,預報人員不報告其失敗,不公平地反映更複雜方法的準確性。應鼓勵編輯發表負面結果以及正面的結果。
■了解預測問題的背景,澄清目標和繪製數據,仍然同樣重要。
介紹
本文介紹了1964年開始的時間序列預測職業生涯中的一些啟發性亮點(和暗點!)。我們可以從我們的成功和失敗中學習,我鼓勵預測人員從兩者中學習。我在標題中用“務實”一詞來表示理智和實際,希望這適用於我的工作。
我的思考將涉及長期的時間序列方法,如Holt-Winters指數平滑和Box-Jenkins,以及一些基於神經網絡,狀態空間公式和GARCH模型的更新方法。我還將討論“最佳”預測的含義。談到實施問題,我將討論預測區間的構建,模型不確定性的處理,預測的組合以及不同品項數的對於預測的影響。發表出版偏差是我關心的問題,我也會解決這個問題。
對於預測顧問,我會提出一些實際建議,包括查看數據,理解背景,使用常識,確保預測比較公平,以及選擇簡單(但不是過份單純化)的預測方法的重要性。最後,我會更全面地評論今天和未來的預測。
一些歷史
預測被形容為“說出會發生什麼,然後解釋為什麼不會發生的藝術”。反過來也是如此,即說出什麼不會發生,然後解釋為什麼會發生。 縱觀歷史,人們不禁會被預測出錯的方式所打動,包括我自己在內。 杜撰的故事包括一個關於IBM創始人的故事,他在1947年曾被指稱說:“我認為世界市場大約有五台計算機。”顯然,根據過去事件進行預測可能是災難的秘訣, 但這正是通常如何進行預測。 那麼,有哪些方法可以降低不確定性並提高準確度? 幸運的是,雖然有感知力的預報員仍然會意識到未來可能不像過去那樣,預測時間越長,不確定性就越大。
時間序列預測是一個相當新近的現象。在1960年之前,唯一用於趨勢和季節性的統計技術是按時間進行線性回歸與不變的季節性模式。隨著Robert Brown和Charles Holt在1960年左右開發了指數平滑(ES),向前邁出了一大步。他們對趨勢和季節性數據的預測方法通常稱為Holt-Winters方法。早在1960年,John Muth 就表明簡單的指數平滑(無趨勢或季節性)對於稱為隨機漫步加雜訊的模型是最佳的,並且各種其他版本的ES已被發現對各種其他模型是最佳的,包括具有非常數方差的狀態 -空間模型(Chatfield et al。,2001)。通過最優化,我們的意思是預測公式可最小化給定模型的觀測值和預測值之間的均方差。 ES方法易於使用,並採用自然更新程序,因此對預測的修訂僅取決於最新的觀測值。
在20世紀60年代中期,George Box 和 Gwilym Jenkins 開始研究一類別的模型稱為自回歸整合移動平均(ARIMA)模型和最適合它的預測方法。他們1970年出版的第三本書(Box et al 1994)仍然具有很大的影響力,不僅因為它覆蓋了ARIMA 建模,而且還涉及一些更一般的統計思想,例如,如何以迭代方式進行模型構建,隨著分析的進行以及更多的數據可用,最初的“猜測”模型如何隨著被修正或調整。
我有幸在1964年成為 Gwilym Jenkins 的研究生,但應該說當時我們研究的重點是控制隨機過程的值而不是預測值(儘管這兩個問題顯然是相關的) 。記住我開始使用紙帶進行研究,然後打卡,並且必須編寫所有我自己的程序,這也是有益的。 (這些都是糟糕的過去。)今天的預測人員擁有一系列早期研究人員無法想像的計算機,可攜式計算機和軟件。
多年來,已經出現了諸如結構建模(基於狀態空間模型)和貝氏預測等替代方法的爆炸式增長,更不用說更深奧的方法,如基於非線性模型的方法。後者包括神經網絡以及方差變化的GARCH 模型。當提出一種新方法時,發明人通常會做出過分的主張。現在人們普遍認識到,儘管新模型可能是預測人員工具箱的重要補充,但它們不會成為所有預測問題的靈丹妙藥。這當然是我的經驗,而預測方法的公平比較一直是一個重要的研究領域。
當我在1964年參加我的第一個時間系列課程並在1968年教授我的第一門課程時,根本沒有合適的文本。現在有各種各樣的數學水平的好書,涵蓋時間序列分析和預測的基礎知識。這使得預測人員的生活變得更加簡單。除了我自己的書(查菲爾德,2001年,2004年),我的最愛還包括格蘭杰和紐波德(1986年,但仍然有用),Diebold(2004年)和(稍微更加數學的)Brockwell和Davis(2002年)的書。
預測方法
ARIMA
ARIMA模型是我在20世紀70年代初期進行的第一個有爭議的預測研究的主題,並且繼續引起人們的廣泛關注。由於當時沒有可用於實施ARIMA預測的軟件,因此我的研究生David Prothero編寫了一套程序來執行Box-Jenkins書中概述的步驟。我們對模型的第一次嘗試導致了在繪製時直觀上不可信的預測。我們在向皇家統計學會(Chatfield and Prothero,1973)發表的一篇論文中報告了這項工作,這可能是第一個發表的案例研究,也描述了我們試圖解決問題的方法。
在該協會的傳統中,隨後進行了熱烈的討論,在此期間我們被告知應該使用立方根變換而不是對數。那麼在我們看來,今天仍然是一個相當不明智的建議。討論向我們展示了在比較不同方法時人們將如何捍衛自己的角色,同時也讓我們相信 ARIMA 模型並不總能奏效。繪製數據和預測的重要性非常重要。
現在,如果預報人員具有技術專業知識來了解如何執行該方法,那麼我只會推薦 ARIMA 對那些顯示具有短期相關的序列進行建模,其變異量不受趨勢和季節性的支配。這是基於我對實際數據和預測比賽結果的經驗,這表明 ARIMA 建模並不比簡單的方法更適用於明顯有趨勢和季節性的序列。
指數平滑(Holt-Winters)
指數平滑的不同形式繼續被廣泛使用,尤其是當需要預測大量系列時。多年來,我使用Holt-Winters進行了一些比較研究,以獲得趨勢和季節性數據。一般來說,其預測準確性與更複雜的方法(例如Chatfield,2001,第6章)相比較,我發現這是一個很好,直接的方法。請注意,趨勢(可以是整體或局部)和季節性(可以估計或移除)往往是變異的主要來源,但殘差仍然難以評估。沒有唯一的方式來理清楚趨勢和季節性的影響,並且這些影響可能隨時間而改變。我建議對許多問題進行指數平滑處理,特別是當有大量序列可以預測時,並且適當的軟件現在可以廣泛使用。預報人員應確保軟件能優化平滑權重,並且足以選擇合適形式的ES。 Gardner(2006)給出了這方面研究的一個重要更新。
神經網絡(Neuron Network)
自1990年以來,神經網絡(NN)已被用於預測。它們是具有潛在大量參數的非線性模型類別。 在1993年的 IJF 編輯會議上,我問到神經網絡是在預測上的突破還只是流逝的時尚,這是一個可以對許多新方法被問及的問題。 根據我的經驗,用神經網絡可以得到合理的結果,但我也發現了很多實際困難。 分析師仍然需要進行仔細的模型識別才能獲得好的結果,並且應避免使用黑盒方法。 神經網絡適用於長序列(數仟個觀測值),同時它顯示出非線性特性,但在較短序列中扔然需要再努力掙扎才能擊敗更簡單的替代方法,特別是當序列的變異主要受趨勢和季節性支配時。 這可能不是從文獻中獲得的印象,但這部分可以通過發表偏倚來解釋,我將在下面進行評論。
狀態空間模型(State-Space Model)
有幾類模型可以被視為狀態空間模型。 它們包括結構模型(Harvey,1989),West 和Harrison 的 Bayesian 動態線性模型(1997),以及經濟學家使用的未觀測的構件模型。 這些類都可以用狀態空間的形式表達,並且基本上盡力去做同樣的事情,儘管命名不同。 所有這些都通過非常接近卡爾曼濾波器的更新來進行更新,這是在有新的觀測時,可用它來更新系統參數估計值的一般方法。 請注意指數平滑是這種過濾器的一個簡單例子。 在某些方面,狀態空間模型比 ARIMA 模型更通用,並且可以提供明確的趨勢和季節性估計。 需要更廣泛使用的軟件,我對軟件供應商為什麼沒有提供它感到困惑。
多變量預測
具有描述性變量的模型
原則上,人們希望多變量模型能夠提供比單變量模型更好的預測。然而,這並非總是如此。在許多具有解釋變量的模型中,對於因變量在實際樣本外的預測,也需要預測未來解釋變量的值,這增加了預測的不確定性。我對向量 ARIMA 模型的有限經驗發現它們在理論上具有挑戰性,並難以適應實踐。也許我們應該關注簡單的向量 AR模型。 Box-Jenkins 轉移函數模型比較容易擬合,但要求因變量不影響解釋變量(沒有反饋)。計量經濟模型不在我的專業領域,但似乎需要熟練的判斷力。
非線性模型
除了前面提到的神經網絡之外,對於各種非線性模型,近來還有很多興趣。雖然非線性模型從理論角度來看非常有趣,但我還沒有看到很多證據表明它們可以提供比適當的線性模型更好的經驗預測。已經開發了用於檢測非線性的測試,以及用於模型擬合的方法,但是它們可能非常難以執行。很顯然,要讓他們在實踐中有價值,還有很多事情要做。
一類特殊的非常不同的非線性模型稱為 GARCH(廣義自回歸條件異方差)模型。它們用於模擬局部變異的變化,而不是實際觀察到的變量。我仍然對 GARCH 模型持懷疑態度,因為我認為他們有一些潛在的問題(儘管我承認我沒有在實踐中嘗試過)。例如,我不喜歡用在更新局部變異方差的方程式這樣有確定性的性質,而且我幾乎很少看到經驗上的證據表明 GARCH 模型實際上可用於真實數據。事實上,評估 GARCH 模型很困難,因為它不直接觀察局部的變異。此外,許多序列顯示的時間段其局部變異方差幾乎恆定不變,以及有在短時間或可能較長時間內突然增加變異方差的時機。突然增加變異這種通常由已知外部事件驅動的行為,通常在觀察數據的簡單時間圖時顯而易見,並且不能充分被 GARCH 模型捕捉到。相較於 GARCH , 我更喜歡其他幾種波動率類型的模型。
密集計算型方法
目前有許多關於使用密集計算型方法的研究,例如馬爾可夫鏈蒙特卡羅(MCMC)方法,以解決各種統計問題,包括預測。當不存在分析式的解決方案時,它們可能很有用。但是,有一個主要的困難是沒有明顯的方法來檢查結果。因此,這些方法讓我擔心。特別是,如果結果看起來不正確,該怎麼辦?我不知道答案。
哪種方法最好?
雖然這個問題對預測者來說至關重要,但我們現在知道沒有簡單的答案。方法的選擇取決於問題的類型,序列的長度,預測範圍,預測序列的數量,可用專業技術水平以及其他因素。
我們還需要明確這裡“最好”的意思為何。選擇衡量預測準確性的指標是至關重要的。為了比較多個序列的準確性,該度量標準必須是與尺度無關的,以確保我們與類似與類似的比較。我們還需要仔細考慮與預測評估和模型比較有關的其他問題,例如,如何時將一個時間序列分成一個訓練集(用於模型)和一個測試集(用於評估模型預測)是一個好主意,以及如何做到這一點。同樣重要的是,所有的預測都是真實的樣本外(事前)預測,並且應用相同的專業知識。在參與了幾項比較研究後,我可以說,發現一種方法與其他方法相比時具有不公平的優勢是多麼的頻繁。我們需要透明度,全面披露所有相關信息,以便可以進行複制。我們還需要確保不同的方法使用完全相同的信息。
當公平的比較時,我們發現應用於一序列樣本的合理方法之間的平均差異非常小,例如在 M,M2 和 M3 競賽中。事實上,我進一步會說,當有巨大的分歧時,我們應該以懷疑來對待。 例如,可能是預測人員正在使用未來的信息,這有可能是無意中的,因此這種預測就不能算作事前進行,並且同時我已經知道有幾個案例的進一步研究表明,一種方法不如第一次提出的那麼好。
最近,引起我注意的一個例子是使用所謂的動態人工神經網絡(DANNs)。我沒有聽說過這些模型,但是 Ghiassi 等人(2005年)的結果似乎表明,DANN 對 6 個知名序列的預測比其它方法好得多。我們可以相信這些結果嗎?這種方法是真正的突破還是出現了問題?我覺得很難相信這種難以置信的改進。此外,我無法理解該方法的理論或實際細節,因此無法複製結果。因此,我必須認為案件沒有被證實,除非我看到一位獨立研究人員與 DANNs 得到類似的結果。
即使方法之間的差異足以引起人們的興趣,但又不至於引起不安,仍然存在一個問題,即我們如何能夠判斷差異事實上是否很大。人們可能會期望進行重要的測試來評估方法之間的差異。確實 Koning等人(2005)認為,在“任何預測準確性評估”中都需要“嚴格的統計檢驗”。然而,時間序列樣本不是隨機樣本,不同的方法由不同的人以不同的方式應用。因此,在我看來,顯著性測試無法解決這個問題。相反,我認為評估差異是否具有實際重要性更重要。同時,我們應該檢查預測是否用以可比較的方式來計算。事實上,預測競賽的結果與其顯著性測試如何跟普通預測方式相關,目前尚不清楚。
預測方法的實作
區間預測(Prediction Intervals)
儘管區間預測通常更具信息量,但預測文獻傾向於集中於點預測。後一種類型通常包括找到一個上限和下限,在這個上限和下限內,未來值預期會與給定的概率一致。我也喜歡使用機率密度預測的相關方法,可能是以扇形圖的形式呈現。我在Chatfield(2001,第7章)中回顧了這個整個領域。
模型不確定性
區間預測通常以適合的模型為條件,通常是最佳擬合模型。這導致了一個我感興趣的相關話題,即對模型不確定性的研究。預報人員經常忘記他們的擬合模型不太可能成為“真實”模型,而這種模型的不確定性通常會增加預測誤差方差。令人遺憾的是,這種影響通常被忽略,這部分解釋了為什麼樣本外預測準確性與樣本內部相比往往令人失望。分析師可能認為狹窄的區間預測是一個好主意,但經驗表明更廣泛的區間可能更現實。 Draper(1995)給出了一個很好的例子。 1986年的石油價格預測是1980年使用12種不同情景進行的,範圍從每桶29美元到121美元不等。典型的90%預測間隔是 27 美元到 51 美元。 1986年中期的實際價格為每桶11美元,這超出了計算的每個時間間隔預測區間。 Draper並沒有用單一模型或單一假設進行預測,而是採用了模型平均法來考慮模型不確定性的影響。這給了間隔20到92美元,這是更寬(因此更好),但仍然不夠寬。當然,撰寫本文時的價格似乎超出了這些區間的上限,因此說明了預測易變變量未來的難度。 Chatfield(2001,第8章)對此主題進行了回顧。
合併預測
使用單一的,也許是最好的模型通常是不恰當的,並且源於這樣的觀點:如果只有一個人能夠找到它,那麼必須有一個真正的模型。預測人員應該考慮在不同條件下合併預測或獲得一系列的預測 - 通常稱為情景預測。不同的預測方法適用於不同的情況。當人們爭論最好的預測程序時,這個明顯的事實往往被忽視。許多不同的方法是互補的,而不是競爭性的。例如,一些方法主要是經驗性的,而另一些則更具理論性。兩者都有自己的位置,而且通常組合更好。
要預測的項目數量
預測幾個序列的問題與預測許多序列(可能有幾百甚至幾千個)有關。在預測大量序列,以及在穩定情況下給出一個衡量標準,單變量方法很有用。多變量方法只能用於少數的序列,特別是當有已知的因果變量的時候。
發表出版物的偏見
在醫學研究中,眾所周知,研究人員傾向於發布令人鼓舞的結果,但卻抑制了糟糕或令人失望的結果。根據我的經驗,預測也是如此。在評估預測結果時,這可能會產生重要的偏見。例如,我知道有兩個實例,人們為了商業目的而禁止發表使用神經網路所得到的不良結果。
這怎麼能至少部分地被阻止?我認為應該鼓勵編輯發表負面結果以及正向的結果,就像在醫學研究中的非顯著效應與顯著效應一樣重要。我們不應該使用無效的預測方法(或藥物)。
諮詢經驗
像大多數科目一樣,預測最好通過實際操作來學習。本部分根據多年的經驗提供一些實用建議。第一點是預測人員有時會發現預測可能會出現可怕的錯誤。這意味著避免麻煩比實現最優性更重要。依靠認為存在真正的(儘管未知的)模型可以找到最佳的預測,這當然是危險的。真正重要的建議如下:
■ 在開始之前,了解情況至關重要。如有必要提出問題,以便能夠認真制定問題。目標是否需要澄清?預測如何實際使用?你有所有的相關信息嗎?
■ 檢查數據質量。你有沒有好的數據,無論這意味著什麼?他們是如何收集的?他們是否需要清潔或改造?
■ 繪製一個清晰的時間曲線圖並觀察它。你能看到趨勢或季節性?有不連續性還是其他有趣的效果?
■ 花時間嘗試理解,衡量,並在必要時消除趨勢和季節性。
■ 始終使用常識。
■ 準備即興創作並嘗試多種方法。
■ 保持簡單。
■ 請參閱Armstrong(2 001,第680頁)中的139個原則,其中以上是重要的子集。他們來自理論,經驗證據和痛苦的經驗。
■ 一種新方法的發明者通常會做出過分的主張。儘管新方法可能是預測工具箱的重要補充,但它們不會成為所有預測問題的靈丹妙藥。
■ 當有公平的比較時,諸如在 M,M2 和 M3 競賽中,適用於一系列樣本的合理的方法之間的平均差異是非常小的。那些有大的差異應該以懷疑的方式來處理。
■ Holt-Winters方法仍然是預測哪些顯示有趨勢和季節性數據的一種好並且穩健的方法。 ARIMA 建模僅適用於顯示短期相關性的序列,同時這些序列的變異不受趨勢和季節性的支配。
■ 預測區間(Prediction Interval)忽略模型不確定性。因此,我們可以使用模型間的平均方式來考慮模型不確定性的影響,而不是用單一模型或單一組的假設來進行預測。
■ 發表出版的偏差,預報人員不報告其失敗,不公平地反映更複雜方法的準確性。應鼓勵編輯發表負面結果以及正面的結果。
■了解預測問題的背景,澄清目標和繪製數據,仍然同樣重要。
介紹
本文介紹了1964年開始的時間序列預測職業生涯中的一些啟發性亮點(和暗點!)。我們可以從我們的成功和失敗中學習,我鼓勵預測人員從兩者中學習。我在標題中用“務實”一詞來表示理智和實際,希望這適用於我的工作。
我的思考將涉及長期的時間序列方法,如Holt-Winters指數平滑和Box-Jenkins,以及一些基於神經網絡,狀態空間公式和GARCH模型的更新方法。我還將討論“最佳”預測的含義。談到實施問題,我將討論預測區間的構建,模型不確定性的處理,預測的組合以及不同品項數的對於預測的影響。發表出版偏差是我關心的問題,我也會解決這個問題。
對於預測顧問,我會提出一些實際建議,包括查看數據,理解背景,使用常識,確保預測比較公平,以及選擇簡單(但不是過份單純化)的預測方法的重要性。最後,我會更全面地評論今天和未來的預測。
一些歷史
預測被形容為“說出會發生什麼,然後解釋為什麼不會發生的藝術”。反過來也是如此,即說出什麼不會發生,然後解釋為什麼會發生。 縱觀歷史,人們不禁會被預測出錯的方式所打動,包括我自己在內。 杜撰的故事包括一個關於IBM創始人的故事,他在1947年曾被指稱說:“我認為世界市場大約有五台計算機。”顯然,根據過去事件進行預測可能是災難的秘訣, 但這正是通常如何進行預測。 那麼,有哪些方法可以降低不確定性並提高準確度? 幸運的是,雖然有感知力的預報員仍然會意識到未來可能不像過去那樣,預測時間越長,不確定性就越大。
時間序列預測是一個相當新近的現象。在1960年之前,唯一用於趨勢和季節性的統計技術是按時間進行線性回歸與不變的季節性模式。隨著Robert Brown和Charles Holt在1960年左右開發了指數平滑(ES),向前邁出了一大步。他們對趨勢和季節性數據的預測方法通常稱為Holt-Winters方法。早在1960年,John Muth 就表明簡單的指數平滑(無趨勢或季節性)對於稱為隨機漫步加雜訊的模型是最佳的,並且各種其他版本的ES已被發現對各種其他模型是最佳的,包括具有非常數方差的狀態 -空間模型(Chatfield et al。,2001)。通過最優化,我們的意思是預測公式可最小化給定模型的觀測值和預測值之間的均方差。 ES方法易於使用,並採用自然更新程序,因此對預測的修訂僅取決於最新的觀測值。
在20世紀60年代中期,George Box 和 Gwilym Jenkins 開始研究一類別的模型稱為自回歸整合移動平均(ARIMA)模型和最適合它的預測方法。他們1970年出版的第三本書(Box et al 1994)仍然具有很大的影響力,不僅因為它覆蓋了ARIMA 建模,而且還涉及一些更一般的統計思想,例如,如何以迭代方式進行模型構建,隨著分析的進行以及更多的數據可用,最初的“猜測”模型如何隨著被修正或調整。
我有幸在1964年成為 Gwilym Jenkins 的研究生,但應該說當時我們研究的重點是控制隨機過程的值而不是預測值(儘管這兩個問題顯然是相關的) 。記住我開始使用紙帶進行研究,然後打卡,並且必須編寫所有我自己的程序,這也是有益的。 (這些都是糟糕的過去。)今天的預測人員擁有一系列早期研究人員無法想像的計算機,可攜式計算機和軟件。
多年來,已經出現了諸如結構建模(基於狀態空間模型)和貝氏預測等替代方法的爆炸式增長,更不用說更深奧的方法,如基於非線性模型的方法。後者包括神經網絡以及方差變化的GARCH 模型。當提出一種新方法時,發明人通常會做出過分的主張。現在人們普遍認識到,儘管新模型可能是預測人員工具箱的重要補充,但它們不會成為所有預測問題的靈丹妙藥。這當然是我的經驗,而預測方法的公平比較一直是一個重要的研究領域。
當我在1964年參加我的第一個時間系列課程並在1968年教授我的第一門課程時,根本沒有合適的文本。現在有各種各樣的數學水平的好書,涵蓋時間序列分析和預測的基礎知識。這使得預測人員的生活變得更加簡單。除了我自己的書(查菲爾德,2001年,2004年),我的最愛還包括格蘭杰和紐波德(1986年,但仍然有用),Diebold(2004年)和(稍微更加數學的)Brockwell和Davis(2002年)的書。
預測方法
ARIMA
ARIMA模型是我在20世紀70年代初期進行的第一個有爭議的預測研究的主題,並且繼續引起人們的廣泛關注。由於當時沒有可用於實施ARIMA預測的軟件,因此我的研究生David Prothero編寫了一套程序來執行Box-Jenkins書中概述的步驟。我們對模型的第一次嘗試導致了在繪製時直觀上不可信的預測。我們在向皇家統計學會(Chatfield and Prothero,1973)發表的一篇論文中報告了這項工作,這可能是第一個發表的案例研究,也描述了我們試圖解決問題的方法。
在該協會的傳統中,隨後進行了熱烈的討論,在此期間我們被告知應該使用立方根變換而不是對數。那麼在我們看來,今天仍然是一個相當不明智的建議。討論向我們展示了在比較不同方法時人們將如何捍衛自己的角色,同時也讓我們相信 ARIMA 模型並不總能奏效。繪製數據和預測的重要性非常重要。
現在,如果預報人員具有技術專業知識來了解如何執行該方法,那麼我只會推薦 ARIMA 對那些顯示具有短期相關的序列進行建模,其變異量不受趨勢和季節性的支配。這是基於我對實際數據和預測比賽結果的經驗,這表明 ARIMA 建模並不比簡單的方法更適用於明顯有趨勢和季節性的序列。
指數平滑(Holt-Winters)
指數平滑的不同形式繼續被廣泛使用,尤其是當需要預測大量系列時。多年來,我使用Holt-Winters進行了一些比較研究,以獲得趨勢和季節性數據。一般來說,其預測準確性與更複雜的方法(例如Chatfield,2001,第6章)相比較,我發現這是一個很好,直接的方法。請注意,趨勢(可以是整體或局部)和季節性(可以估計或移除)往往是變異的主要來源,但殘差仍然難以評估。沒有唯一的方式來理清楚趨勢和季節性的影響,並且這些影響可能隨時間而改變。我建議對許多問題進行指數平滑處理,特別是當有大量序列可以預測時,並且適當的軟件現在可以廣泛使用。預報人員應確保軟件能優化平滑權重,並且足以選擇合適形式的ES。 Gardner(2006)給出了這方面研究的一個重要更新。
神經網絡(Neuron Network)
自1990年以來,神經網絡(NN)已被用於預測。它們是具有潛在大量參數的非線性模型類別。 在1993年的 IJF 編輯會議上,我問到神經網絡是在預測上的突破還只是流逝的時尚,這是一個可以對許多新方法被問及的問題。 根據我的經驗,用神經網絡可以得到合理的結果,但我也發現了很多實際困難。 分析師仍然需要進行仔細的模型識別才能獲得好的結果,並且應避免使用黑盒方法。 神經網絡適用於長序列(數仟個觀測值),同時它顯示出非線性特性,但在較短序列中扔然需要再努力掙扎才能擊敗更簡單的替代方法,特別是當序列的變異主要受趨勢和季節性支配時。 這可能不是從文獻中獲得的印象,但這部分可以通過發表偏倚來解釋,我將在下面進行評論。
狀態空間模型(State-Space Model)
有幾類模型可以被視為狀態空間模型。 它們包括結構模型(Harvey,1989),West 和Harrison 的 Bayesian 動態線性模型(1997),以及經濟學家使用的未觀測的構件模型。 這些類都可以用狀態空間的形式表達,並且基本上盡力去做同樣的事情,儘管命名不同。 所有這些都通過非常接近卡爾曼濾波器的更新來進行更新,這是在有新的觀測時,可用它來更新系統參數估計值的一般方法。 請注意指數平滑是這種過濾器的一個簡單例子。 在某些方面,狀態空間模型比 ARIMA 模型更通用,並且可以提供明確的趨勢和季節性估計。 需要更廣泛使用的軟件,我對軟件供應商為什麼沒有提供它感到困惑。
多變量預測
具有描述性變量的模型
原則上,人們希望多變量模型能夠提供比單變量模型更好的預測。然而,這並非總是如此。在許多具有解釋變量的模型中,對於因變量在實際樣本外的預測,也需要預測未來解釋變量的值,這增加了預測的不確定性。我對向量 ARIMA 模型的有限經驗發現它們在理論上具有挑戰性,並難以適應實踐。也許我們應該關注簡單的向量 AR模型。 Box-Jenkins 轉移函數模型比較容易擬合,但要求因變量不影響解釋變量(沒有反饋)。計量經濟模型不在我的專業領域,但似乎需要熟練的判斷力。
非線性模型
除了前面提到的神經網絡之外,對於各種非線性模型,近來還有很多興趣。雖然非線性模型從理論角度來看非常有趣,但我還沒有看到很多證據表明它們可以提供比適當的線性模型更好的經驗預測。已經開發了用於檢測非線性的測試,以及用於模型擬合的方法,但是它們可能非常難以執行。很顯然,要讓他們在實踐中有價值,還有很多事情要做。
一類特殊的非常不同的非線性模型稱為 GARCH(廣義自回歸條件異方差)模型。它們用於模擬局部變異的變化,而不是實際觀察到的變量。我仍然對 GARCH 模型持懷疑態度,因為我認為他們有一些潛在的問題(儘管我承認我沒有在實踐中嘗試過)。例如,我不喜歡用在更新局部變異方差的方程式這樣有確定性的性質,而且我幾乎很少看到經驗上的證據表明 GARCH 模型實際上可用於真實數據。事實上,評估 GARCH 模型很困難,因為它不直接觀察局部的變異。此外,許多序列顯示的時間段其局部變異方差幾乎恆定不變,以及有在短時間或可能較長時間內突然增加變異方差的時機。突然增加變異這種通常由已知外部事件驅動的行為,通常在觀察數據的簡單時間圖時顯而易見,並且不能充分被 GARCH 模型捕捉到。相較於 GARCH , 我更喜歡其他幾種波動率類型的模型。
密集計算型方法
目前有許多關於使用密集計算型方法的研究,例如馬爾可夫鏈蒙特卡羅(MCMC)方法,以解決各種統計問題,包括預測。當不存在分析式的解決方案時,它們可能很有用。但是,有一個主要的困難是沒有明顯的方法來檢查結果。因此,這些方法讓我擔心。特別是,如果結果看起來不正確,該怎麼辦?我不知道答案。
哪種方法最好?
雖然這個問題對預測者來說至關重要,但我們現在知道沒有簡單的答案。方法的選擇取決於問題的類型,序列的長度,預測範圍,預測序列的數量,可用專業技術水平以及其他因素。
我們還需要明確這裡“最好”的意思為何。選擇衡量預測準確性的指標是至關重要的。為了比較多個序列的準確性,該度量標準必須是與尺度無關的,以確保我們與類似與類似的比較。我們還需要仔細考慮與預測評估和模型比較有關的其他問題,例如,如何時將一個時間序列分成一個訓練集(用於模型)和一個測試集(用於評估模型預測)是一個好主意,以及如何做到這一點。同樣重要的是,所有的預測都是真實的樣本外(事前)預測,並且應用相同的專業知識。在參與了幾項比較研究後,我可以說,發現一種方法與其他方法相比時具有不公平的優勢是多麼的頻繁。我們需要透明度,全面披露所有相關信息,以便可以進行複制。我們還需要確保不同的方法使用完全相同的信息。
當公平的比較時,我們發現應用於一序列樣本的合理方法之間的平均差異非常小,例如在 M,M2 和 M3 競賽中。事實上,我進一步會說,當有巨大的分歧時,我們應該以懷疑來對待。 例如,可能是預測人員正在使用未來的信息,這有可能是無意中的,因此這種預測就不能算作事前進行,並且同時我已經知道有幾個案例的進一步研究表明,一種方法不如第一次提出的那麼好。
最近,引起我注意的一個例子是使用所謂的動態人工神經網絡(DANNs)。我沒有聽說過這些模型,但是 Ghiassi 等人(2005年)的結果似乎表明,DANN 對 6 個知名序列的預測比其它方法好得多。我們可以相信這些結果嗎?這種方法是真正的突破還是出現了問題?我覺得很難相信這種難以置信的改進。此外,我無法理解該方法的理論或實際細節,因此無法複製結果。因此,我必須認為案件沒有被證實,除非我看到一位獨立研究人員與 DANNs 得到類似的結果。
即使方法之間的差異足以引起人們的興趣,但又不至於引起不安,仍然存在一個問題,即我們如何能夠判斷差異事實上是否很大。人們可能會期望進行重要的測試來評估方法之間的差異。確實 Koning等人(2005)認為,在“任何預測準確性評估”中都需要“嚴格的統計檢驗”。然而,時間序列樣本不是隨機樣本,不同的方法由不同的人以不同的方式應用。因此,在我看來,顯著性測試無法解決這個問題。相反,我認為評估差異是否具有實際重要性更重要。同時,我們應該檢查預測是否用以可比較的方式來計算。事實上,預測競賽的結果與其顯著性測試如何跟普通預測方式相關,目前尚不清楚。
預測方法的實作
區間預測(Prediction Intervals)
儘管區間預測通常更具信息量,但預測文獻傾向於集中於點預測。後一種類型通常包括找到一個上限和下限,在這個上限和下限內,未來值預期會與給定的概率一致。我也喜歡使用機率密度預測的相關方法,可能是以扇形圖的形式呈現。我在Chatfield(2001,第7章)中回顧了這個整個領域。
模型不確定性
區間預測通常以適合的模型為條件,通常是最佳擬合模型。這導致了一個我感興趣的相關話題,即對模型不確定性的研究。預報人員經常忘記他們的擬合模型不太可能成為“真實”模型,而這種模型的不確定性通常會增加預測誤差方差。令人遺憾的是,這種影響通常被忽略,這部分解釋了為什麼樣本外預測準確性與樣本內部相比往往令人失望。分析師可能認為狹窄的區間預測是一個好主意,但經驗表明更廣泛的區間可能更現實。 Draper(1995)給出了一個很好的例子。 1986年的石油價格預測是1980年使用12種不同情景進行的,範圍從每桶29美元到121美元不等。典型的90%預測間隔是 27 美元到 51 美元。 1986年中期的實際價格為每桶11美元,這超出了計算的每個時間間隔預測區間。 Draper並沒有用單一模型或單一假設進行預測,而是採用了模型平均法來考慮模型不確定性的影響。這給了間隔20到92美元,這是更寬(因此更好),但仍然不夠寬。當然,撰寫本文時的價格似乎超出了這些區間的上限,因此說明了預測易變變量未來的難度。 Chatfield(2001,第8章)對此主題進行了回顧。
合併預測
使用單一的,也許是最好的模型通常是不恰當的,並且源於這樣的觀點:如果只有一個人能夠找到它,那麼必須有一個真正的模型。預測人員應該考慮在不同條件下合併預測或獲得一系列的預測 - 通常稱為情景預測。不同的預測方法適用於不同的情況。當人們爭論最好的預測程序時,這個明顯的事實往往被忽視。許多不同的方法是互補的,而不是競爭性的。例如,一些方法主要是經驗性的,而另一些則更具理論性。兩者都有自己的位置,而且通常組合更好。
要預測的項目數量
預測幾個序列的問題與預測許多序列(可能有幾百甚至幾千個)有關。在預測大量序列,以及在穩定情況下給出一個衡量標準,單變量方法很有用。多變量方法只能用於少數的序列,特別是當有已知的因果變量的時候。
發表出版物的偏見
在醫學研究中,眾所周知,研究人員傾向於發布令人鼓舞的結果,但卻抑制了糟糕或令人失望的結果。根據我的經驗,預測也是如此。在評估預測結果時,這可能會產生重要的偏見。例如,我知道有兩個實例,人們為了商業目的而禁止發表使用神經網路所得到的不良結果。
這怎麼能至少部分地被阻止?我認為應該鼓勵編輯發表負面結果以及正向的結果,就像在醫學研究中的非顯著效應與顯著效應一樣重要。我們不應該使用無效的預測方法(或藥物)。
諮詢經驗
像大多數科目一樣,預測最好通過實際操作來學習。本部分根據多年的經驗提供一些實用建議。第一點是預測人員有時會發現預測可能會出現可怕的錯誤。這意味著避免麻煩比實現最優性更重要。依靠認為存在真正的(儘管未知的)模型可以找到最佳的預測,這當然是危險的。真正重要的建議如下:
■ 在開始之前,了解情況至關重要。如有必要提出問題,以便能夠認真制定問題。目標是否需要澄清?預測如何實際使用?你有所有的相關信息嗎?
■ 檢查數據質量。你有沒有好的數據,無論這意味著什麼?他們是如何收集的?他們是否需要清潔或改造?
■ 繪製一個清晰的時間曲線圖並觀察它。你能看到趨勢或季節性?有不連續性還是其他有趣的效果?
■ 花時間嘗試理解,衡量,並在必要時消除趨勢和季節性。
■ 始終使用常識。
■ 準備即興創作並嘗試多種方法。
■ 保持簡單。
■ 請參閱Armstrong(2 001,第680頁)中的139個原則,其中以上是重要的子集。他們來自理論,經驗證據和痛苦的經驗。
留言
張貼留言