產業導入

零售庫存預測 AI:如何降低缺貨與呆滯庫存,把預測誤差壓到個位數

一家連鎖美妝零售商,一邊北區精華液斷貨四天,一邊倉庫壓著兩千支賣不動的禮盒——同一個病:預測不準。我們進場三個月,把需求預測誤差從 37% 壓到 8.6%,缺貨率降七成、呆滯庫存降六成。這篇拆解零售庫存預測 AI 真正動了哪些數字,以及我們在資料、促銷因果和模型漂移上踩過的雷。

Autor

Tenten AI 交付團隊

產業交付

Publicado

9 de noviembre de 2025

Tiempo de lectura

5 分鐘

零售庫存預測AI需求預測缺貨與呆滯庫存零售電商AI導入MAPE預測誤差FDE前線部署

去年冬天,我們接手一家連鎖美妝零售商的補貨問題。他們有 78 家門市、大約 3,200 個 SKU,每週的補貨決策靠三位資深採購憑手感加 Excel。那年雙十一前一週,熱銷的一款精華液在北區斷貨四天,官網照樣掛著「現貨」;同一時間,倉庫裡壓著兩千多支賣不動的節慶禮盒,效期一到只能報廢。

一邊缺貨,一邊呆滯。這不是矛盾,這是同一個病:預測不準。

我到現場拉出他們的歷史數據算了一次,整體需求預測的 MAPE(平均絕對百分比誤差)是 37%。翻成白話,採購每押十件貨,有將近四件的量是猜錯的。上面壓著缺貨罰款,下面堆著報廢損失,中間三個人天天加班改單。這種狀態,再多請兩個採購也救不回來。

零售庫存預測 AI 到底在預測什麼

先講清楚一件事。零售庫存預測 AI 不是給你一個「下個月賣幾支」的神諭數字,它預測的是「每個 SKU、每個門市、每一天的需求機率分布」。差別很關鍵:傳統做法給一個點估計,AI 給的是一整條曲線,告訴你在 95% 服務水準下該備多少安全庫存,在 80% 下又是多少。補貨決策從「猜一個數」變成「選一個風險」。

我們沒有一上來就換系統。第一步是把他們散在 POS、ERP、電商後台、還有各門市 LINE 群組回報的資料,接進一個統一的特徵表。光這一步就花了六週——真正難的從來不是模型,是資料。門市店長手動改的庫存數字、促銷檔期沒登記的贈品、跨店調撥沒入帳,這些髒資料會讓再好的模型算出垃圾。

模型本身反而樸素。我們用 LightGBM 做主力,把價格、促銷旗標、天氣、節氣、鄰近門市銷量、社群聲量這些特徵餵進去,對長尾低頻的 SKU 再疊一層階層式貝氏做借力估計(讓賣得少的品項向同類品項「借」需求型態)。沒有用到什麼花俏的深度學習,因為零售需求的訊號多半是結構化的,梯度提升樹的性價比更高。

三個月後的數字

導入的節奏是先在 12 家門市、單一品類跑影子模式:AI 每天出補貨建議,但採購照舊人工下單,我們把兩邊擺在一起比對。跑了五週,採購對 AI 建議的採納率從 30% 爬到 71%,他們自己開始信了,才全面切換。

以下是全面上線滿三個月、和導入前同期相比的實際變化:

指標導入前導入後變化
需求預測誤差(MAPE)37%8.6%壓進個位數
門市缺貨率11.2%3.4%降約七成
呆滯庫存(90 天未動銷)占比18%6.5%降約六成
平均庫存周轉天數74 天49 天快 25 天
促銷檔期備貨命中率約 55%88%

把預測誤差從 37% 壓到 8.6%,不是換了個更聰明的模型,是三件事疊起來的結果:資料乾淨了、預測顆粒度細到「店 × 品 × 日」、還有把促銷和天氣這些外生變數正式納進特徵。缺貨率降七成的同時,呆滯庫存也降六成——這兩個數字能一起往下走,才是預測真的變準的證據。如果只有一邊改善,通常只是把安全庫存整體調高或調低,治標而已。

我們踩過的雷,誠實講

不是每個品類都適用。新品和季節性極強的限量款,歷史資料太薄,模型信心區間寬到沒有參考價值,這部分我們老實建議客戶保留人工判斷,別硬套 AI。另外促銷的因果效應很棘手:同樣打七折,週年慶和清倉的需求彈性差很多,前三個月模型在這裡吃了不少虧,後來我們把促銷「意圖」也標進特徵才穩下來。

還有一個容易被忽略的坑——模型會漂移。消費者行為每季都在變,我們設了每週回測、指標一旦連續兩週退化就自動告警重訓。沒有這套監控機制,再準的模型三個月後也會慢慢爛掉。上線那天的準確率,從來不是終點。

這也是我們做事的一貫方式:工程師直接進客戶現場,把資料管線、模型、監控和採購的日常決策流程一起搭起來,盯到採購真的每天在用、KPI 真的動了才算交付完成。Demo 上跑出 8% 的誤差不算數,門市貨架不再缺、倉庫不再壓死貨,才算數。

Flujos de trabajo con IA,
integrados en tu operación

Nos integramos (FDE y FDM) para construir los agentes y flujos de trabajo de IA que tu equipo usa cada día. En producción en semanas, no en trimestres.