Leo Yeh's Blog

SAS 預測分析 (5)

教學目標

初步了解 SAS Visual Forecasting 預測分析的基本概念。

重點概念

首先在 SAS Visual Forecasting 預測分析專案中預設的自動預測管線範本主要就包括預測分析中的基本步驟,分別為將資料累積至時間序列的資料中,自動識別、估計和選擇時間序列的預測模型,評估預測結果以及發佈在管線外使用分析的結果,並且透過 Exchange 將自動預測節點進行儲存和分享,而在商業應用程式中,時間序列通常以交易資料或時間戳資料開始,像是客戶在一年內存取網站的記錄,每次存取皆是記錄客戶識別和時間戳,但是交易資料不是根據時間間隔所組織的,此時透過累積才能夠將交易資料轉換為用於時間序列預測分析的資料,像是以月為間隔的時間序列資料。請注意間隔的選擇和累積方法是應用時間序列進行建立預測分析模型的關鍵考慮因素,不同的時間序列資料特徵將會影響預測分析模型的有用性和精確性,像是客服中心主要會以在一天的時間週期每小時的累積資料給分析師,並且提供在 24 小時循環中有關高峰和低谷時間的直接資訊,該資訊將有助於日常人員進行業務調整,但是按照小時間隔累積的時間序列可能不是理解和理解的最佳時間序列,此時透過平均累積法量化為長期趨勢和月份週期就會是最佳理解的方法。

接著在 SAS Visual Forecasting 預測分析專案中預設的自動預測管線範本之自動預測分析的節點,主要執行四個任務分別為診斷時間序列資料的統計特徵,產生適當時間序列模型列表,選擇適當模型以及產生預測結果,其中用於時間序列的預測分析模型主要有三種類型,分別為:

  1. ESM 模型 (Exponential smoothing models)
  2. ARIMAX 模型 (ARIMAX models)
  3. UCM 模型 (Unobserved Components Models)

所謂 ESM 模型主要為過去價值的加權平均值,其可以產生對於未來之最佳評估,權重應該強調最新資料,並且預測應該只需要幾個參數,因此預測方程式應簡單易於實作。所謂 ARIMAX 模型主要包括 AR、I、MA 和 X 四個部份,其中 AR 自回歸主要是過去的函數,I 整合主要是將連續時間點之間的差值在建立模型之後返回沒有變異的測量標準,像是趨勢和季節性元件就是非平穩變異,因為如果一個時間序列具有趨勢或季節性元件,則代表為時間的函數,此時就會需要進行整合,MA 移動平均線主要是過去震盪 (Shocks) 的函數,像是偏差、創新、錯誤、…等,其中時間序列的未來值是先前誤差的函數,並且假設衝擊或偏差向前傳播,X 外生效應主要是時間序列受外部因素的影響。所謂 UCM 模型其主要是將時間序列分解為趨勢、季節、循環、不規則、回歸量、… 等元件,又稱為結構時間序列模型。至於不同時間序列的預測分析模型將對有不同的處理效能,ESM 模型可以快速,輕鬆地建立模型,所以總是有很好的效能表現。然而 ARIMAX 模型需要比簡單模型或 ESM 模型的運算效能,主要原因在於 ESM 模型主要是採用近似和快捷方式來提高效能,像是簡單的 ESM 模型不是為每個過去的值擬合參數,如果將 omega 參數值設為 1,則經過最近觀察的權重將解析為零,因此若要提高測量的準確度,則建議選擇 ARIMAX 模型,此外在 SAS Visual Forecasting 中預設會將自動時間序列模型識別和預測應用於資料,並適合 ESM 模型和ARIMAX 模型。至於 UCM 模型則非常耗費運算時間,因此僅能夠進行試用資料集或個別時間序列,此外僅有 ARIMAX 模型和 UCM 模型能夠適應輸入變數的效應。

再來在 SAS Visual Forecasting 預測分析專案中我們除了使用自動預測節點之外,更能夠的相同管線增加不同建模策略的節點,分別為:

  1. 自動預測節點
  2. 外部預測節點
  3. 原生模型節點
  4. 階層預測節點
  5. 需求分類的建模策略節點
  6. 使用神經網路建模策略節點

所謂外部預測節點主要僅適用於外部預測專案,對於從任何其它類型的資料來源所建立的專案,其無法增加至管線中,外部預測專案只能在管線中使用外部預測。所謂原生模型節點主要是透過移動平均、隨機遊走和季節性隨機遊走等數學公式產生預測分析模型。所謂階層預測節點主要是對於每個時間序列執行診斷分層結構的每個級別的時間序列的統計特徵,根據選擇的診斷設定產生對應的時間序列模型列表,從候選模型列表中選擇冠軍模型,產生整合預測的分析結果,若要使用此階層預測節點,則至少需要分配一個 BY 變數。所謂需求分類的建模策略節點主要適用於已根據時間序列中檢測到的模式進行分段的時間序列,更多詳細資訊,請參考官方文件。所謂使用神經網路建模策略節點主要有三個建模策略,分別為:

  1. Panel Series Neural Network 建模策略
  2. Multistage Forecast 建模策略
  3. Stacked Forecasting 建模策略

所謂 Panel Series Neural Network 建模策略主要透過基於使用者設定訓練神經網路來提供預測,並且開發模型,以利在多個時間序列中提取顯著的特徵,其中神經網路主要是由預測變數 (輸入變數),隱藏層,輸出層以及每個項之間的連接組成。所謂 Multistage Forecast 建模策略主要透過提供一個標準框架整合時間序列模型和特徵提取技術,在兩個階段構建基於分層結構的預測系統。所謂 Stacked Forecasting 建模策略主要使用包括神經網路模型和時間序列模型的堆疊模型產生預測,此建模策略擷取自變數和應變數之間的非線性關係,以及資料中的時間序列特徵,像是季節性和趨勢,更多詳細資訊,請參考官方文件

最後在 SAS Visual Forecasting 預測分析專案預設是以 MAPE 為預測模型評估的指標,當你選擇候選的預測分析模型時,則 MAPE 值最低的模型為最適合的模型,至於 MAPE 是一種擬合統計量是統計值,主要用於將實際資料與預測進行比較來評估模型的執行情況。對於時間序列資料的預測模型,應該檢查或評估模型,以利查看其適合預測資料的程度,而常用擬合統計量為平方根誤差 (RMSE)、平均絕對誤差率 (MAPE)、Akaike 資訊準則 (AIC)、… 等等,擬合的統計量可以從模型殘差或預測誤差進行計算得出結果,當使用全範圍的資料來擬合和評估模型時,這被稱為樣本內評估,當最近的資料被排除用於參數估計,並且該保留樣本用於評估時,這被稱為樣本外評估,類似於神經網路的訓練和測試,部分資料不受訓練,並且保留資料用於測試性能,而當特定的擬合統計量用於預測模型選擇時,將其稱為模型選擇標準,像是使用 MAPE 作為模型選擇標準,則選擇評估區域中具有 MAPE 最小值的預測模型作為最佳模型。

相關資源

⬅️ Go back