top of page

AI 預測員工缺勤

  • 3分钟前
  • 讀畢需時 7 分鐘

醫院、急症室、肉品加工、速遞同物流呢類高需求行業,人手排班好依賴「邊個員工下個星期有機會唔返工」呢個判斷。但論文中指出一個容易被忽略嘅結構性問題:現時大部分缺勤預測模型,其實係將時間 t 嘅特徵,映射去同一時間 t 嘅標籤。換句話講,模型學緊嘅係「已經發生咗」嘅結果,而唔係真正預測未來。

呢篇論文提出一個 Time Series Classification(TSC) 框架,將歷史出勤序列同未來缺勤標籤明確分開,令模型可以真正做到 proactive 預測;同時亦針對員工出勤數據常見嘅嚴重 class imbalance 問題,對兩種常用 loss function 做咗詳細嘅理論同實驗分析。


本文重點

呢篇文想解決兩件事。第一,現有做法(regression、classification、time-series forecasting)大多將員工特徵直接對應同一時間點嘅結果,或者將個人行為聚合成 population-level 統計,等於捨棄咗「累積疲勞、反覆健康問題、work-life balance 惡化」呢類藏喺個人出勤歷史入面嘅序列訊號。第二,員工出勤資料嘅正負類別極度不平衡(出勤 97.69% vs 缺勤 2.31%,即 imbalance ratio ρ ≈ 42),而正類(出勤)先係多數類,呢個「多數類 = positive」嘅設定,令標準 focal loss 嘅慣常參數反而會失效。


一、將缺勤預測重新定義做 TSC 問題

論文將問題重新表達成:用過去 n 日連續出勤記錄做輸入序列 X,預測未來 m 日嘅缺勤標籤 y,明確保留輸入同標籤之間嘅時間先後次序,避免資料洩漏。呢個做法同「同一時間映射」嘅做法最大分別在於:模型學緊嘅係歷史行為模式如何影響未來結果,而唔係單純重現已知結果。

由於個人層面嘅長期出勤數據涉及私隱、公開數據幾乎唔存在,作者以 UCI 嘅 Absenteeism at Work 數據集(巴西一間速遞公司 36 名員工、36 個月記錄)做基礎,設計咗一套兩階段模擬程序:先將月度缺勤紀錄擴展做每日二元出勤序列,再用分布保留抽樣方式,將 36 名種子員工擴充成 1,000 名合成員工,令方法可以喺較大規模下驗證。


二、點解常見嘅 Focal Loss 參數會完全失效

論文用 Binary Focal Loss(BFL)Geometric Mean(G-Mean)loss 兩種 imbalance-aware loss 做比較。BFL 有兩個參數:α 控制正負類權重,γ 控制對「易分類樣本」嘅降權程度。

作者推導出一個關鍵結果:喺訓練初始化階段(p ≈ 0.5),present 類同 absent 類嘅梯度比例約為 ρα/(1-α),而 γ 喺呢一點嘅影響剛好係零。換句話講,模型初期學習方向主要由 ρ(數據決定)同 α(人手設定)決定,同 γ 完全無關。要令梯度平衡,α 必須設為:

α\* = 1/(1+ρ)

喺呢篇論文嘅數據中 ρ ≈ 42.31,所以 α\* ≈ 0.023,遠低於文獻常用嘅 α = 0.75。原因好直接:標準 focal loss 嘅設計假設係「正類係少數類」(例如物件偵測入面嘅前景 vs 背景),但員工出勤問題入面「出勤」先係多數類。將 α = 0.75 直接搬過嚟用,等於將本身已經係多數類嘅 present class 再加碼,梯度比例會被推高至 ρ × 0.75/0.25 ≈ 127 倍。

實驗結果亦印證咗呢個推導:baseline 設定(α = 0.75, γ = 2)嘅 specificity 只有 0.124,模型幾乎將所有員工都預測為「會返工」;換成理論推導出嘅 α\ 並取 γ = 0,specificity 即刻升到 0.813,balanced accuracy 達 0.888*。


三、G-Mean Loss:唔使校準都可以自我修正

相比之下,G-Mean loss 直接以 True Positive Rate 同 True Negative Rate 嘅幾何平均數做優化目標。作者證明咗一個好實用嘅性質:G-Mean 嘅梯度比例只取決於當下嘅 soft TPR 同 soft TNR,同 ρ 完全無關。

更關鍵嘅係佢有「自我修正」機制——一旦模型開始偏向將所有人預測為出勤(TPR → 1, TNR → 0),absent class 嘅相對梯度反而會被放大,將模型拉返去平衡狀態。呢個特性令 G-Mean 唔需要預先知道 ρ、亦唔使做任何參數校準,實驗中達到 specificity 0.844、balanced accuracy 0.734,同經過細心校準嘅 BFL(α\*, γ=0)表現相近。

論文用真實訓練曲線印證咗呢個分別:BFL 訓練 20 個 epoch 之後,absent class 嘅平均預測機率仍然停留喺 0.62(即高於 0.5 嘅決策界線,即係仍然傾向預測為出勤);而 G-Mean 喺第一個 epoch 就已經將 absent class 嘅平均機率拉低到 0.22,並持續穩定喺 0.19 左右。


四、架構同超參數嘅實務建議

除咗 loss function,論文亦系統性比較咗 LSTMCNN 同混合式 LSTM-FCN 三種架構,以及 batch size、window size 嘅影響。

架構選擇: LSTM-FCN 喺 precision 同 specificity 上表現最一致,無論有冇加入員工背景資料都係如此,係論文推薦嘅首選架構。

Batch size: 實驗發現 batch size 細過 64 時,specificity 同 balanced accuracy 會明顯偏低,原因係細 batch 入面預期出現嘅 absent class 樣本數太少(例如 batch size 16 時,平均少於一個 absent 樣本),令 G-Mean 嘅 soft TNR 估計唔穩定,自我修正機制冇辦法正常運作。作者建議 batch size 至少要 64,實驗中最終採用 1,024。

Window size: 對於 5 日嘅預測 horizon,窗口長度喺 40 至 80 日之間表現最平衡——太短(例如 40 日以下)資訊唔夠,太長(160 日)則 F1-score 同 balanced accuracy 會明顯下滑。加入員工背景資訊(年齡、BMI、交通費用等)對整體表現無明顯提升,反映純粹嘅出勤序列本身已經帶有足夠訊號。

喺 held-out test set 上,window size 80 日嘅設定達到 balanced accuracy 約 79%,同驗證集結果一致,顯示模型冇明顯過擬合。


五、對其他領域嘅啟示

雖然呢篇論文以缺勤預測做主要應用場景,但作者強調 ρα/(1-α) 呢條梯度比例公式,理論上適用於任何「多數類係 positive」嘅嚴重 imbalance 二元分類問題——包括醫療監測、詐騙偵測、故障偵測等。實務指引可以歸納為:

已知 ρ 且穩定: 可用 BFL,並以 α\* = 1/(1+ρ)、γ = 0 做起始設定,唔好照抄文獻慣用嘅 α = 0.75。

唔知道 ρ,或者想避免手動校準: G-Mean loss 係更穩妥嘅預設選擇,自我修正結構令佢對 ρ 唔敏感。

唔應該做嘅事: 喺 positive class 係多數類嘅場景下,直接沿用物件偵測領域常見嘅 focal loss 參數(α = 0.75, γ = 2),因為呢個設定係為相反嘅情況(positive 係少數類)而設計。


六、對足球賽果預測嘅啟示

雖然呢篇論文講緊員工缺勤,但佢嘅兩個核心概念,其實同足球數據分析好啱用。


第一,TSC 嘅時間框架可以搬去球隊/球員狀態預測。 好多賽果預測模型都係用賽前靜態特徵(例如兩隊 rating、主場優勢、盤口賠率)做同一時間映射,即係用「賽前已知資訊」直接對應「賽果」。但好似員工出勤入面嘅「累積疲勞」咁,球隊近況其實一樣係序列訊號——密集賽程帶嚟嘅體能透支、連續傷病、士氣升跌,呢啲都唔容易壓縮做一個靜態 rating 數字。將 TSC 概念搬過嚟,用球隊或球員最近 n 場嘅表現序列做輸入,去預測未來 m 場結果,原則上可以捕捉到呢類單靠賽前 snapshot 睇唔到嘅動態訊號。


第二,ρα/(1-α) 呢條公式,對處理足球入面嘅罕見事件預測特別有用。 足球數據入面有好多「多數類先係常見結果」嘅嚴重不平衡場景:紅牌、點球、烏龍球呢類罕見事件本身出現率好低;爆冷(細球會/客隊爆冷)喺任何聯賽都係少數個案,「跟大熱」先係多數類;某啲精確比數(例如 0-0、3 球以上大炒)出現率亦好低。如果直接攞物件偵測領域慣用嘅 BFL 參數(α = 0.75, γ = 2)去訓練呢類模型,好可能會重蹈論文 baseline 嘅覆轍——模型幾乎將所有場次都預測為「常見結果」,對真正有博彩/交易價值嘅罕見結果,specificity 會差到唔可用。


實務做法可以參考論文嘅兩條路: 一係計返自己數據嘅 imbalance ratio ρ(例如「打和」或「爆冷」喺歷史數據入面嘅比例),用 α\* = 1/(1+ρ) 做校準起點,唔好照搬其他領域嘅慣用值;二係如果唔想手動校準、或者 ρ 會隨聯賽/季度改變,可以考慮 G-Mean loss 嗰種自我修正結構,減少因為賽季之間 imbalance ratio 波動而要重新調參嘅麻煩。


Batch size 嘅發現一樣值得留意。 如果罕見事件(例如紅牌、烏龍球)喺一季入面本身出現率極低,訓練時 batch size 太細,會令每個 batch 幾乎見唔到正樣本,同論文入面「absent class 樣本太疏,G-Mean 嘅 soft TNR 估計唔穩定」係同一個問題。對做球員/球隊層面事件預測、或者長線 in-play 模型嘅人嚟講,呢個提醒有直接參考價值。


七、限制

論文最主要嘅限制係實驗數據為模擬數據,並非真實企業出勤記錄,呢個係因為個人層面嘅長期出勤資料屬敏感私隱數據,幾乎冇公開來源。雖然模擬程序有嚴謹校準到 UCI 數據集嘅分布特性,但真實部署前仍需要喺實際組織數據上驗證。作者亦提到,未來可以將框架擴展至加入團隊組成、更精細嘅班表模式等 contextual 訊號的 multivariate 版本。


八、小結

文中嘅價值唔止於提出一個缺勤預測模型,而係提供咗一套可以推廣嘅思考方式:第一,將預測問題明確定義成「用歷史序列預測未來」而唔係「重現已知結果」;第二,喺處理嚴重 class imbalance 時,唔好盲搬其他領域(例如物件偵測)嘅慣用參數,而係要先搞清楚邊個類別先係多數類,再用 ρ 做理論依據去校準,或者索性揀一個唔使校準嘅 loss function。


Reference

  1. K. H. Li, M. Roughan, W. Karunarathne. A time-series classification framework for individual-level absenteeism prediction under severe class imbalance. arXiv:2606.31532v1, 2026. https://arxiv.org/abs/2606.31532

  2. T.-Y. Lin et al. Focal loss for dense object detection. Proceedings of the IEEE International Conference on Computer Vision, 2017.

  3. F. Karim et al. LSTM Fully Convolutional Networks for Time Series Classification. IEEE Access 6, 2018.

  4. A. Martiniano, R. Ferreira. Absenteeism at work. UCI Machine Learning Repository, 2012.


原文 Paper



相關文章

查看全部
bottom of page