第三部《強化學習》37/100 TD(λ) 與 Eligibility Traces 🧵 串接過去與現在的影響力!

更新 發佈閱讀 8 分鐘

AI時代系列(3) 機器學習三部曲: 📘 第三部:《強化學習 —— AI 的決策與進化》

37/100 第四週:📌 時序差分學習 TD

37. TD(λ) 與 Eligibility Traces 🧵 串接過去與現在的影響力!

_______________________________________

🎯 單元導讀

在學習過程中,我們常希望不只考慮眼前一步,還能兼顧過去的累積經驗。

TD(λ) 是連結 MC 與 TD(0) 的橋樑,它使用一種稱為 Eligibility Traces(適格痕跡) 的方法,

將「現在的 TD 誤差」反向分配給過去的所有狀態或狀態-行動對,並加權更新。

這個方法讓學習過程更平滑、更快,也保留長期依賴的能力。

________________________________________

🧠 一、什麼是 TD(λ)?

TD(λ) 是一種融合 MC 方法(長期更新)與 TD(0)(即時更新) 的折衷方法。

它引入了一個參數 λ(lambda),值域在 0 到 1 之間:

λ = 0:退化為 TD(0),只更新一步

λ = 1:趨近於蒙地卡羅方法(MC),使用整個 episode 來估值

0 < λ < 1:漸進式結合短期與長期的回報資訊

________________________________________

📦 二、Eligibility Traces 是什麼?

📌 定義

Eligibility Trace 可以看成是「每個狀態在近期內被訪問的程度記錄」,隨著時間自然衰減。

📌 作用

當 TD 誤差產生時,會按照這個痕跡的強度,回溯性地更新前面出現過的狀態。

計算公式(累積型)

對於每個狀態 s,計算 e(s):

📝 e_t(s) = γ * λ * e_{t-1}(s) + 1_{[s_t == s]}

其中:

🎯 γ :折扣因子

🎯 λ :追蹤衰減參數(Trace Decay)

🎯 1_{[s_t == s]} :若目前狀態 s_t 等於 s,則為 1,否則為 0

狀態價值更新(以 TD(λ) 為例)

🔄V(s) ← V(s) + α * δ_t * e_t(s)

其中:

⚙ α :學習率

⚙ δ_t :TD 誤差

TD 誤差計算

δ_t = r_t + γ * V(s_{t+1}) - V(s_t)

概念總結

📊 當 δ_t 出現時,會按照每個狀態當前的 e_t(s) 值進行回溯修正。

🕰 λ 越大 ➔ 回溯越長遠(趨近 Monte Carlo)

⏳ λ 越小 ➔ 越偏向單步 TD(趨近 TD(0))

________________________________________

🔍 三、TD(λ) 的更新直覺圖解

當使用 Eligibility Trace 時,系統會記錄近期每個狀態被訪問的程度。假設在時間步 t 產生 TD 誤差,會依據痕跡強度回溯性地修正過去出現的狀態。例如,t-2 時訪問了狀態 A,此時痕跡已經衰減到 λ²,對 A 的修正幅度較小;t-1 時訪問了狀態 B,痕跡為 λ,修正幅度適中;而在 t 時訪問了狀態 C,痕跡為 1,修正幅度最大。最終 TD 誤差會被反向傳遞到 A、B、C 三個狀態,並以不同權重進行同步更新,讓學習不只修正當下狀態,而是兼顧整段經歷中的相關狀態,達到加速學習效果。

________________________________________

🎮 四、TD(λ) 的學習風格

Eligibility Trace 具備長期依賴學習能力,能在每次更新時同時修正整段路徑上多個狀態的價值,使學習不只侷限在當前狀態,積極累積長期經驗。相比單步 TD(0) 或純粹的 Monte Carlo 方法,Eligibility Trace 通常收斂更快、更穩定。透過調整參數 λ,可以控制回溯範圍:λ 越大,越重視過去經驗(接近 Monte Carlo);λ 越小,越專注於即時誤差修正(接近 TD(0))。此外,Eligibility Trace 可靈活與各種強化學習演算法結合,如 SARSA(λ)、Q(λ),進一步提升整體控制與決策效果。

________________________________________

🧪 五、實作建議與挑戰任務

1️⃣ 實作一個 TD(λ) 的值函數學習器,觀察不同 λ 對收斂速度與穩定性的影響

簡答說明:

目標:設計一個能使用 TD(λ) 更新公式的狀態價值學習器。

實驗變數:調整 λ 參數(如 λ=0、0.3、0.6、1.0)。

觀察重點:

o λ 越大,回溯更新範圍越長,修正效果覆蓋更多狀態,初期學習速度會明顯提升;

o λ 越小,更新集中在最近的狀態,學習步伐較慢但震盪較少;

o λ=1 近似於 Monte Carlo,全靠完整經驗後才更新;

o λ=0 則完全等同 TD(0),每次只修正一步。

________________________________________

2️⃣ 比較 TD(0)、MC、TD(λ) 在同一個迷宮任務中所需的訓練次數

簡答說明:

迷宮任務是一個典型適合對照各種強化學習方法的環境。

比較結果可能會發現:

o TD(0):學習過程穩定,每步立即修正,但收斂較慢;

o Monte Carlo (MC):須等待整個 episode 結束才更新,易受高方差影響,收斂速度不穩定;

o TD(λ):兼具兩者優點,適當 λ 值下通常能最快收斂,且學習曲線平滑穩定。

學習效率順序(常見觀察):

TD(λ)(適當 λ) > TD(0) > Monte Carlo

________________________________________

3️⃣ 嘗試使用 替代 Eligibility Trace 記憶方式(如 replacing trace)探討效果差異

簡答說明:

累積型 (accumulating trace):

o 每次訪問狀態時痕跡會遞增;

o 容易在高頻訪問狀態下造成痕跡爆炸。

替代型 (replacing trace):

o 每次訪問時直接把該狀態的痕跡設為 1(不累加),其他狀態繼續衰減;

o 可以有效抑制高頻狀態累積過高痕跡值,讓更新更加穩定。

實驗重點:

o 比較兩種 trace 設計下的學習穩定性與收斂速度;

o 在高相關性重複訪問的環境中,replacing trace 往往效果更平衡穩定。

_______________________________________

✅ 六、小結與啟示

TD(λ) 是強化學習中最能融合「即時與延遲回報」的演算法之一

Eligibility Traces 提供了一種自然的記憶衰退機制,讓更新更符合人類直覺

λ 是關鍵調參參數,掌控學習「記憶的長度」與「變動的靈活度」

在實務中,TD(λ) 常作為 Actor-Critic 架構中的關鍵元件!



留言
avatar-img
留言分享你的想法!
avatar-img
Hansen W的沙龍
10會員
274內容數
AIHANS沙龍是一個結合AI技術實戰、產業策略與自我成長的知識平台,主題涵蓋機器學習、生成式AI、創業經驗、財務規劃及哲學思辨。這裡不只提供系統化學習資源與實作案例,更強調理性思維與行動力的結合。無論你是AI初學者、創業者,還是追求人生升維的行者,都能在這裡找到前進的方向與志同道合的夥伴。
Hansen W的沙龍的其他內容
2025/09/24
SARSA 與 Q-Learning 皆為 TD 控制演算法,差異在於策略依賴:SARSA 為 On-policy,更新與實際行動一致,保守穩定,適合高風險任務;Q-Learning 為 Off-policy,追求最大回報,學得快但較激進,適合遊戲與商業決策。選擇取決於任務風險承受度與目標需求。
2025/09/24
SARSA 與 Q-Learning 皆為 TD 控制演算法,差異在於策略依賴:SARSA 為 On-policy,更新與實際行動一致,保守穩定,適合高風險任務;Q-Learning 為 Off-policy,追求最大回報,學得快但較激進,適合遊戲與商業決策。選擇取決於任務風險承受度與目標需求。
2025/09/24
Q-Learning 是典型 Off-policy TD 控制演算法,核心在最大化未來回報。更新 Q 值時取下一狀態的最大估計值,即使當下行動非最優,仍能收斂至最優策略。適合自駕、金融、博弈等需高效率探索的任務。
2025/09/24
Q-Learning 是典型 Off-policy TD 控制演算法,核心在最大化未來回報。更新 Q 值時取下一狀態的最大估計值,即使當下行動非最優,仍能收斂至最優策略。適合自駕、金融、博弈等需高效率探索的任務。
2025/09/24
SARSA 是 On-policy TD 控制演算法,更新依賴實際採取的動作,透過 (s,a,r,s′,a′) 修正 Q 值。與 Q-learning 相比更保守穩定,適合高風險或需安全控制的場景,如導航與推薦系統,能逐步累積經驗學得穩健策略。
2025/09/24
SARSA 是 On-policy TD 控制演算法,更新依賴實際採取的動作,透過 (s,a,r,s′,a′) 修正 Q 值。與 Q-learning 相比更保守穩定,適合高風險或需安全控制的場景,如導航與推薦系統,能逐步累積經驗學得穩健策略。
看更多
你可能也想看
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 129 中說,Bidirectional Encoder Representations from Transformers (BER
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 129 中說,Bidirectional Encoder Representations from Transformers (BER
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 我們已經在 AI說書 - 從0開始 - 114 建立了 Transformer 模型。 現在我們來載入預訓練權重,預訓練的權重包含 Transformer 的智慧
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 我們已經在 AI說書 - 從0開始 - 114 建立了 Transformer 模型。 現在我們來載入預訓練權重,預訓練的權重包含 Transformer 的智慧
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續 AI說書 - 從0開始 - 93 介紹了 The Corpus of Linguistic Acceptability (CoLA),其核心思想為:如果該句子在語
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續 AI說書 - 從0開始 - 93 介紹了 The Corpus of Linguistic Acceptability (CoLA),其核心思想為:如果該句子在語
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續 xxx 提到,既然提到訓練,就表示要有一套衡量基準供大家遵守,有鑑於此,以下繼續介紹幾類衡量方式: MCC: 首先介紹 True (T) Positive (
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續 xxx 提到,既然提到訓練,就表示要有一套衡量基準供大家遵守,有鑑於此,以下繼續介紹幾類衡量方式: MCC: 首先介紹 True (T) Positive (
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 可以透過繼承預訓練模型 (Pretrained Model) 來微調 (Fine-Tune) 以執行下游任務。 Pretrained Mo
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 可以透過繼承預訓練模型 (Pretrained Model) 來微調 (Fine-Tune) 以執行下游任務。 Pretrained Mo
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 如 AI說書 - 從0開始 - 78 所述,經過 AI說書 - 從0開始 - 74 到目前為止的實驗,應可以漸漸感受到 Transformer 模型如何從數學層面漸漸往
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 如 AI說書 - 從0開始 - 78 所述,經過 AI說書 - 從0開始 - 74 到目前為止的實驗,應可以漸漸感受到 Transformer 模型如何從數學層面漸漸往
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News