零售業長序列預測:多重季節性下的模型泛化與單一化應對
摘要
根據 Sousa 等人的研究指出,人力優化(Workforce optimization)是一個活躍的研究主題,因為它能為企業帶來不可忽視的人事成本降低,該研究提出的加權平均集成模型(Weighted Average Ensemble, WAE)是整個論文的核心,文中描述了WAE的架構,從流程最初資料處理至預測模型(Forecasting Models),在到評估指標、篩選、加權,最終集成為WAE預測模型 [1]。
另一個工程上需要克服的挑戰在於應對多重季節性 (Multiple Seasonality) 問題,使機器學習模型能有效學習時間週期中發生的特徵變化。這些概念不僅應用於人力優化,亦可推廣至各類商業行為分析及具週期性的資料預測。文中探討的多步預測策略介紹了資料的運作機制,為深度學習模型的訓練提供了多樣的開發方向。
季節性特徵與挑戰分析
零售數據通常在同一時間維度內呈現多層級規律,其季節循環長度定義為 24 小時倍數。本研究觀察到規律主要包含 (i) 日季節性模式 (Daily seasonal patterns),用於捕捉營業時間內波動;(ii) 週季節性模式 (Weekly seasonal patterns),反映 168 小時內週末效應;以及 (iii) 長期週期模式 (Long-term periodic patterns),包含月季節性 (672 小時) 與年季節性 (8736 小時),通常受發薪日與節慶循環驅動。
前處理工程
線上季節性 z 分數異常值檢測(Online seasonal zscore outlier detection)
為了降低噪音 (Noise) 對預測準確度的影響,必須在保留趨勢的前提下偵測異常值 (Outliers)。傳統檢測法易誤判季節性波峰為異常點,因此該研究採取針對相同季節位置的檢測策略。
檢測演算法邏輯
系統利用 z 分數 (Z-score) 衡量觀測點與歷史數據均值的偏離程度。z 分數 (Z-score) 在統計學中定義為衡量單一資料點與整體資料平均值距離指標,並以標準差 (Standard Deviation) 為計量單位。
該演算法透過辨識序列中極端值,並將其替換為相同季節位置平均數,確保模型訓練過程免受異常值干擾,進而避免整體趨勢預測準確度下降。

異常資料填充
當建構完包含異常索引集合 後,針對偵測出異常點,本研究採用 相同季節位置總平均值 (Grand Mean) 進行替代。
相較於傳統 線性插值 (Linear Interpolation),此策略能有效維持 週期性 (Periodicity) 完整性,避免因插值導致的波形失真。
該方法 是前幾個季節元素的數量, 是季節循環長度,透過函數加總,最後再取平均值來代替,可以定義為:

數據標準化 (Data Normalization)
數據經由 MinMax 標準化映射至 區間。這對於神經網路等依賴導數優化 (Derivative Optimization) 的模型至關重要,能確保更穩定且快速的收斂。
模型架構

主要的流程架構,最一開始進行資料前處理,包括線上季節性 z-score 異常值檢測(Online Seasonal Z-score Outlier Detection)與MinMax 正規化(MinMax Normalization)
再來透過多步季節性策略(multistep seasonal strategies)重新組織時間序列資料,並輸入至各種預測模型進行訓練
在評估階段,利用 相對平均絕對誤差 (Relative Mean Absolute Error, RelMAE) 審視模型效能,篩選出誤差指標最低前五名模型。
最終階段採用 加權絕對誤差法 (Weighted Absolute Error, WAE) 將優選模型進行集成組合,並再次透過 RelMAE 驗證整體效能,藉此產出具備強健泛化能力預測結果。
預測模型庫
研究建立模型庫涵蓋了多種數學原理異質模型,包含 (i) 季節性天真法 (Seasonal Naive),作為基準評估模型;(ii) 梯度提升決策樹 (HistGB),透過特徵分桶優化處理結構化序列;(iii) 深度學習架構 (MLP, LSTM),利用非線性轉換與門控機制捕捉長短期依賴;以及 (iv) 統計狀態空間模型 (Prophet, TBATS),解決非整數週期複雜季節性問題。
季節性天真方法(Seasonal naïve)
季節性天真方法(Seasonal naïve)是一種針對季節性時間序列的簡單預測方法,預測值直接設定為最後一次觀察到的相同週期位置數值。在強季節性序列中,表現往往優於複雜模型。

多重季節性天真方法 (Multiple seasonal naïve)
該研究將季節性簡單法延伸至多重季節性,透過對不同季節週期長度多次套用季節性簡單法,並對各預測結果取平均值來達成。
多步預測策略(Multistep ahead forecasting strategies)
多步預測策略在執行時間序列預測任務時,針對輸入資料結構、模型訓練管線 (Pipeline) 以及預測值輸出方式的系統性設計。在開發機器學習或深度學習模型時,此策略決定了資料切分邏輯與預測架構穩定性。常見實作策略包含以下幾種:
遞迴策略(Recursive strategy)
遞迴策略目標根據過往 個觀測值,預測未來 個時間點的值,這決定了資料每一次遞迴的長度
因為是單輸出策略,每一次的預測,都將受到前面的影響,這包括了預測值,因此,這個策略的缺點是它會嚴重受到誤差積累的影響

季節遞迴策略 (Seasonal Recursive Strategy)
季節遞迴策略 (Seasonal Recursive Strategy) 主要特色是,它包含了k個季節延遲,使模型捕捉季節性的變化,並減少 recursive strategy 積累誤差問題
季節性遞迴策略中,前面與一般遞迴一樣,而後半部則包含所有對應的季節數

MIMO 策略
多輸入多輸出架構,一次性輸出預測序列,有效避免遞迴誤差。

加權平均集成(Weighted Average Ensemble, WAE)
WAE是一個整合預測方法,用來組合多個模型的預測結果,透過加權平均數來進行加總,WAE 的設計可以保留來自不同模型的季節性特徵資訊,特別適合於多重季節性的時間序列預測任務。
公式表示第 個模型對未來第 小時的預測值,並對每個時間步 分別進行加權

加權的原理就是該模型的準確度除以所有模型的準確度,也就是加權平均數

表現衡量指標(Performance measures)
回顧基礎 RMSE(均方根誤差)與 MAE(平均絕對誤差)是回歸任務中最常使用的指標

而這兩者都是與資料尺度相關(scale dependent)的,因此不適合用來比較多條不同尺度的時間序列。原因是它們依賴於時間序列本身的數值大小,因此無法準確反映模型的預測效果。
相對性衡量指標 (RelMAE)
傳統指標如 會受資料尺度影響。該研究建議採用尺度獨立(Scale-independent)的 RelMAE:

當 時,表示被評估模型優於基準模型。
結果評估
實驗顯示,WAE 模型在處理 98 筆零售序列時展現了極高的穩定性。透過比較各模型的權重分布(Boxplot),發現 MLP 與 HistGB 表現相對穩定,而 Prophet 則呈現較大的權重波動。

在驗證集(2019 年 11 月)的對比中,WAE 的預測曲線與真實值幾乎吻合

最終統計顯示 WAE與其他模型單獨預測的表現,你可以看到圖表中的結果,WAE有著最低的誤差值0.742,並且在總資料98筆中勝出了55次,為所有模型中最好的表現

參考文獻
[1] M. Sousa, A. M. Tomé, and J. Moreira, “Long-term forecasting of hourly retail customer flow on intermittent time series with multiple seasonality,” Data Science and Management, vol. 5, no. 3, pp. 137–148, Sep. 2022, doi: 10.1016/j.dsm.2022.07.002.

