涉及預測區間的預測準確度指標
我正在為公司的產品收入生成時間序列預測,並且正在尋找某種方式來顯示隨著時間推移的準確性 - 例如,在說 6 個月後,他們想看看實際收入與預測收入相比如何產生 6 個月前。
我正在使用 Rets() 包生成預測,並對接下來 6 個月的每個月進行預測,包括預測間隔。
是否有任何將這些預測間隔考慮在內的預測準確性指標?
我知道標準 MAPE、MASE 等,但這些都適用於點預測。我正在尋找的是一種同時考慮預測間隔有多準確的度量 - 例如,如果我們生成 95% 的預測間隔,但實際值只出現在其中 10% 的時間,我希望能夠來識別這一點。
這是一個很好的問題。不幸的是,雖然學術預測文獻確實(緩慢地)從幾乎完全強調點預測轉向區間預測和預測密度,但評估區間預測的工作卻很少。(編輯:請參閱此答案的底部以獲取更新。)
正如gung所說,給定的95%預測區間是否包含真實的實際值,原則上是伯努利試驗 $ p=0.95 $ . 給定足夠多的 PI 和實現,原則上您可以檢驗實際覆蓋概率實際上至少為 95% 的原假設。
但是,您需要考慮統計功效和样本量。最好事先確定與目標覆蓋率的哪種偏差仍然可以接受(92% 可以嗎?90%?),然後找到在給定概率下檢測如此強或更強的偏差所需的最小樣本量,說 $ \beta=80% $ ,這是標準的。您可以通過簡單的模擬來做到這一點:模擬 $ n $ 伯努利試驗 $ p=0.92 $ , 估計 $ \hat{p} $ 給它一個置信區間,看看它是否包含 95% 的值,“經常”這樣做,然後調整 $ n $ 直到 95% 在 CI 之外 $ \beta=80% $ 你的案例。或使用任何伯努利功率計算器。
好的,現在我們有了我們的樣本量,您可以批量處理您的 PI 和實現,查看您的 PI 包含真實實現的頻率,然後開始測試。您的批次可能是最後一批 $ n $ 單個時間序列的 PI/實現,或您正在預測的大量時間序列的所有最新 PI/實現,或其他。
這種方法的優點是易於解釋和理解。當然,如果您有大量試驗,即使與目標覆蓋範圍的微小偏差也會在統計上顯著,這就是為什麼您需要從業務角度考慮實際上哪些偏差是顯著的,如上所述。
或者,分位數預測(例如,2.5% 和 97.5% 的分位數預測,以產生 95% 的 PI)自然地作為某些損失函數下的最佳點預測出現,這些損失函數是基於目標分位數參數化的。這篇論文給出了一個很好的概述。這可能是上述伯努利測試的替代方法:為您的目標上下分位數找到正確的損失函數,然後在這些損失函數下評估您的 PI 的兩個端點。然而,損失函數相當抽象,不容易理解,尤其是對於非技術人員而言。
例如,如果您要比較多種預測方法,您可以首先根據伯努利假設檢驗或損失函數丟棄那些 PI 明顯低於預期的方法,然後根據其 PI的*寬度評估通過初始篩選的方法。*在正確覆蓋率相同的兩個 PI 中,通常越窄的 PI 越好。
有關使用零假設顯著性檢驗對 PI 的簡單評估,請參閱本文。還有一些更精細的 PI 評估方案,它們還可以處理覆蓋範圍偏差的連續依賴性(也許你的財務 PI 在一年中的某些時候是好的,但在特定時間很差),比如這篇論文和那篇論文。不幸的是,這些需要大量的 PI/實現,因此可能只與高頻財務數據相關,例如每天多次報告的股票價格。
最後,最近有一些興趣超越 PI 到潛在的預測密度,可以使用*(適當的)評分規則進行評估。Tilmann Gneiting 在這方面一直很活躍,他的這篇論文給出了很好的介紹。然而,即使您決定更深入地研究預測密度,評分規則仍然非常*抽象,難以與非技術人員交流。
編輯- 更新:
您的質量度量需要平衡預測間隔的覆蓋率和長度:是的,我們想要高覆蓋率,但我們也想要短間隔。
有一種質量度量可以做到這一點並且具有吸引人的特性:區間得分。讓 $ \ell $ 和 $ u $ 是預測區間的下端和上端。分數由下式給出
$$ S(\ell,u,h) = (u-\ell)+\frac{2}{\alpha}(\ell-h)1(h<\ell)+\frac{2}{\alpha}(h-u)1(h>u). $$
這裡 $ 1 $ 是指示函數,並且 $ \alpha $ 是您的算法的目標覆蓋範圍。(您需要根據您計劃對預測間隔執行的操作來預先指定這一點。目標是沒有意義的 $ \alpha=100% $ 覆蓋範圍,因為由此產生的間隔將太寬而無法用於任何事情。)
然後,您可以對許多預測的區間得分進行平均。平均分越低越好。請參閱Gneiting & Raftery (2007, JASA ) ] 了解討論和進一步文獻的指示。例如,在最近的 M4 預測競賽中評估預測區間時,使用了該分數的縮放版本。
(完全披露:這是從我的這個答案中無恥地抄襲的。)