Excel 中的指數平滑法,是將平滑常數 α 套用至最新的觀測值,並對每一個較舊的觀測值套用一個以幾何級數衰減的權重 α(1−α)^k,其中 k 代表該觀測值距離現在的期數。將遞迴預測公式 F_{t+1} = α·Y_t + (1−α)·F_t 展開 n 期,你就會得到一個加權平均,其中觀測值 Y_{t−k} 的權重正好是 α(1−α)^k。底數 (1−α) 會被提升至整數次方 k,這就是為什麼數學運算依賴重複的乘法。以 α = 0.3 且 k = 3 為例,Y_{t−3} 的權重為 0.3 × (1−0.3)^3 = 0.3 × 0.343 = 0.1029。Excel 可以用儲存格公式建構出來,但 (1−α)^k 這一項才是主要的運算,而該項就是單純的指數計算。一個 指數計算機 會在你輸入時立即回傳 (1−α)^k,這讓你在決定寫入試算表之前,更容易測試不同的 α 值,並觀察權重衰減的速度。

指數平滑權重背後的數學
簡單指數平滑透過單一遞迴方程式,將新的觀測值與先前的預測結合:
F_{t+1} = α·Y_t + (1−α)·F_t
將 F_t 反覆代回自身,遞迴就會展開成一個單一的加權平均,一次揭露所有權重:
F_{t+1} = α·Y_t + α(1−α)·Y_{t−1} + α(1−α)²·Y_{t−2} + α(1−α)³·Y_{t−3} + …
規律很清楚:Y_{t−k} 的權重是 α(1−α)^k。前面的 α 是常數,而 (1−α)^k 部分就是負責所有運算的指數。一旦你以這種方式理解,預測就只是兩欄之間的點積——觀測值與權重——而權重不過是 α 乘以 (1−α) 的整數次方。
這個結構會自然衍生出幾項特性:
- 權重總和為 1,因為 α 乘以從 k = 0 到 ∞ 的幾何級數 Σ(1−α)^k 等於 α · 1/α = 1。
- α 越高,權重衰減越快,近期觀測值的影響力就越大。
- α 越低,衰減越慢,較舊的觀測值仍會影響預測。
- 當你展開有限的歷史資料時,指數 k 永遠是整數,這就是為什麼數學運算符合整數次方的指數規則。
最後一點在實務上很重要。由於 k 是整數,你可以讀取完整的展開式。以 α = 0.3 且 k = 3 為例:
Weight = α(1−α)^k = 0.3 × (1 − 0.3)^3 = 0.3 × 0.7^3 = 0.3 × (0.7 × 0.7 × 0.7) = 0.3 × 0.343 = 0.1029
把乘法展開來看,能讓幾何衰減從抽象變得具體——這正是指數計算機會在小整數次方旁邊額外顯示的步驟。
挑選合適的平滑常數 Alpha
平滑常數 α 控制預測的反應程度。三個大範圍就能涵蓋大多數情境:
| Alpha 範圍 | 權重衰減 | 適用情境 |
|---|---|---|
| 0.7 – 0.9 | 快速——舊資料在幾期內就淡出 | 有趨勢、變動快速的序列,由最新的觀測值主導 |
| 0.3 – 0.6 | 中等——典型的幾何衰減 | 穩定且雜訊不大的序列——日常的預設選擇 |
| 0.05 – 0.2 | 緩慢——舊資料在許多期內仍會影響預測 | 長期、緩慢的序列,趨勢不明顯但有大量可用歷史資料 |
多數教科書會從 α = 0.2 或 0.3 這個中性預設值開始,若預測持續落後於實際值就調高,若每次尖峰都過度反應就調低。衰減形狀在這個範圍內變化很大,這正是指數計算機派上用場的時刻——在決定寫入 Excel 之前,先在指數計算機中試幾個底數,讓欄位的形狀符合你對預測反應程度的直覺。
如何在 Excel 中計算指數平滑的權重
你可以在兩個欄位中,用一個公式計算出每一個 α(1−α)^k 權重。設定大約花兩分鐘,任何近期版本的 Excel 或 Google 試算表都能使用。
- 開啟一個空白活頁簿,在第一列標示四個欄位:A1 Period(期數)、B1 Observation(觀測值)、C1 k (periods back)(k,往回期數)、D1 Weight α(1−α)^k(權重 α(1−α)^k)。
- 在一個固定儲存格中輸入平滑常數,例如 E1 = 0.3。使用錢字號讓公式參照在往下拖曳時保持鎖定。
- 在 A2:A11 輸入從 0 到 9 的期數標籤,其中 0 是當期,9 是最舊的一期。在 B2:B11 以反向順序貼上觀測值——B2 是今天,B11 是九期之前。
- 在 C2 輸入 0,然後向下填滿到 C11,讓該欄顯示 0, 1, 2, …, 9。
- 在 D2 輸入公式 =$E$1*(1-$E$1)^C2,然後向下填滿到 D11。
- 讀取 D 欄。第一列回傳 α 本身,第二列回傳 α(1−α),之後每一列都再乘以一個 (1−α) 的衰減因子——從最新觀測值往後呈現平滑的幾何衰減。
- 若要預測第 t + 1 期,將 B 欄的每一列乘以 D 欄對應的列,並用 =SUMPRODUCT(B2:B11, D2:D11) 加總。該總和就是你的下一步預測值,而且完全不需要遞迴就能得到。
同一個公式適用於任何正整數 k,而這也是指數計算機唯一需要處理的指數型態——沒有分數次方、沒有複數的意外狀況,就只有 k = 0, 1, 2, … 時的 α(1−α)^k。
使用相同權重模式的變體
α(1−α)^k 結構是基礎,但不是全部。有幾種 Excel 友善的預測方法以此延伸,卻不改變背後的指數模式:
- Holt 線性趨勢法 為趨勢分量加入第二個平滑常數 β。位準仍使用 α(1−α)^k 權重,而趨勢則對過去的趨勢估計值使用 β(1−β)^k 權重。
- 阻尼趨勢 將趨勢每期乘上一個介於 0 到 1 之間的阻尼因子 φ,使長期預測趨於平緩,而不是沿著一條直線無限延伸。
- Holt-Winters 再加入第三個平滑常數 γ 處理季節性,讓季節性權重在整個季節週期中遵循相同的 γ(1−γ)^k 模式。
這些都不會改變基本形狀。每一種都只是把指數模式乘以一個額外的常數,然後將各個分量相加。因此,如果你的 α(1−α)^k 表格在 Excel 中可行,同樣的指數計算機方法也能處理 β、γ 與 φ——每個平滑常數一個底數、整數次方,完全不必擔心分數次方的邊界情況。
指數計算機何時能幫你節省時間
表格建立完成後,Excel 就能處理。但在你決定一個 alpha 之前,你通常會想測試三四個候選值,並用肉眼判斷權重衰減的速度。每次 Excel 都要你編輯 E1、重新拖曳公式,然後目測掃描該欄,而且公式 =$E$1*(1-$E$1)^C2 每個儲存格恰好只做一次指數運算——僅此而已。
這就是指數計算機更快的地方。把 (1−α) 作為底數輸入——例如 0.7——再輸入指數,它就會立即回傳 0.7^k,並在下方顯示完整的乘法鏈。把底數改成 0.8 來測試 α = 0.2,改成 0.5 來測試 α = 0.5,或改成 0.9 來測試 α = 0.1,新的權重在你打完字的那一刻就會出現。一鍵的 x²、x³ 與 √x 按鈕則能幫你設定指數,方便你抽查底數的平方、立方或平方根。
這個工具遵循你的 Excel 公式所依賴的相同指數規則,包括:
- 任何非零底數的 0 次方都回傳 1,因此 α(1−α)^0 = α,與 alpha 值無關。
- 負底數在整數次方時運作正常,但在分數次方時會變成複數——在這裡無關緊要,因為 k 永遠是整數。
- 非常小的權重會以科學記號顯示,這與 Excel 對長尾數值的格式一致。
- 所有運算都在你的瀏覽器本地端執行,因此計算過程具隱私性,且頁面載入後即使離線也能使用。
如果你也使用 Excel 為另一種以衰減為基礎的預測建模,指數移動平均指南 會以相同的 α 對 N 框架與相同的核心指數表格,介紹該變體。