Leo Yeh's Blog

SAS 時間序列 (11)

教學目標

初步了解 SAS 時間序列的基本概念。(此篇主要為準備考試的心得筆記)

重點概念

首先我們透過分層結構將能夠完成更複雜的時間序列預測分析任務,並且在資料準備結束時,分層結構的基礎層級中的每個交易序列皆很需要累積至等距的間隔,所以在上層的時間序列資料的層次結構皆是透過聚合過程從基礎層級的資料所建立而成,同時分層結構的時間序列預測分析通常是協調,協調主要有由上而下、中間或由下而上三種類型,因此為了產生更好的預測結果,我們將會需要選擇適當的資料分層與協調策略。

接著當序列資料以分層結構為主時,通常存在約束條件,其連接分層結構的不同等級的序列資料對於任何歷史時間區段,父節點中的資料是其子節點的資料的總和或平均值,像是零售公司的產品總銷售額是屬於公司的所有商店中相同產品的銷售額的總和,但是對於預測資料,通常會在不同層級獨立預測時間序列,因此預測值不會遵守綁定時間序列的約束條件,但是我們能夠透過稱為分層預測的協調事後過程來強制執行這些約束條件,在分層模型中我們將能夠選擇不同的協調方法,分別為:

  1. 由上而下:聚合預測中基礎層級的資料,然後使用這些資料產生最高層級的預測,此方法主要能夠巧我們從層次結構較低的資料中刪除過多的雜訊或隨機性,但是我們也可能會在預測中遺失模式資訊,像是季節性資訊。
  2. 中間:聚合來自較低層級的資料,然後使用這些資料產生中間層級的預測,此方法主要是用於協調較高層級和較低層級的預測。
  3. 由下而上:主要以基礎層級的資料作為預測的參考層級,雖然能夠查看資料中的模式資訊,像是季節性,但是資料中也可能存在過多雜訊或隨機性,此外預測可能會失敗,因為層次結構最低級別的資料可能很少量或很稀疏。

此外由上而下的協調方法除了聚合函數之外,更能夠指定損失函數的類型,主要有兩種,分別為差異和比例,所謂差異主要是將損失函數基於平方根誤差,而所謂比例主要是將損失函數基於比例進行分解。

再來我們主要會透過二種方式建立用於分層結構進行預測分析的時間序列資料,分別為累積和聚合,資料累積主要產生在底層的時間序列,資料聚合主要是透過聚合時間序列的資料來建立分層結構,並且我們能夠使用以下函數進行資料累積或資料聚合,分別為:

  1. 總和
  2. 平均數
  3. 中位數
  4. 最小值
  5. 最大值
  6. 第一筆
  7. 最後一筆
  8. 其它統計摘要

最後大規模的時間序列預測分析中有 80% 能夠自動化分析,10% 需要花費額外的時間進行調整優化,至於剩下的 10% 就無法準確的進行預測,因此我們能夠透過預測系統中演算法完成了大部分工作,而預測分析師則有更多用時間,利用產業領域的專業知識將資料轉化為有問題或高價值的時間序列資料來改善預測分析的結果。

相關資源

⬅️ Go back