ML4T 導讀 · Part V · Ch 21–24

四把新工具,四條清楚的邊界

強化學習、RAG、知識圖譜、自主代理——這四章講的與其說是「怎麼用」,不如說是「什麼時候不該用」。用錯地方,它們就只是昂貴的多餘機械。

Ch 21 強化學習 Ch 22 RAG Ch 23 知識圖譜 Ch 24 自主代理
0

一張圖看懂這一部分

四把工具,各自的適用與禁區

Part V 的四章都是熱門技術,但書的態度非常克制——每一章都花了相當篇幅在講什麼時候不該用。這其實是最有價值的部分,因為這四樣東西都很容易因為「聽起來很先進」而被用在錯的地方。

把四章的邊界並排看,會發現一個共同的判準:先問這個問題的結構是什麼,再問要用什麼工具。行動本身是不是最佳化標的?答案需不需要可回溯的證據?問題會不會自然分解成「沿著關係鏈找實體」?——結構對了,工具才有意義。

✓ 該用在這裡 ✗ 別用在這裡 Ch 21 強化學習 執行拆單、造市報價、動態避險 「行動本身就是最佳化標的」的問題 拿來找 alpha 非平穩性侵蝕型態、探索的市場衝擊不可逆——回到監督式管線 Ch 22 RAG 檢索 要「附引文、可查證」的深度分析 每個宣稱都能回溯到來源頁面 讓它做算術 要可擴展的數字分數,用微調過的分類器(廣度)比較划算 Ch 23 知識圖譜 答案取決於「沿關係鏈的路徑」 多跳依賴、共同持股擁擠度、供應鏈傳染 單一實體的屬性查詢、稀疏圖 平均連結數低於 2–3 時,拓撲指標本身就不可靠 Ch 24 自主代理 證據豐富、需要編排多個工具的研究 事件機率預測、盡職調查、低頻決策準備 標籤穩定、全結構化、或延遲敏感的任務 LLM 的延遲不可能做微秒級執行

共同判準只有一句:先確認問題的結構,再挑工具——不是反過來。

A

Ch 21 · 強化學習

當「行動本身」就是最佳化標的

核心思想:RL 在金融最有說服力的場域不是找 alpha,而是那些「行動本身就是最佳化標的」的問題——執行、造市、避險。原因很直接:這些問題的獎勵函數可以綁定一個可觀測的經濟目標(實現成本、庫存懲罰、避險誤差),而報酬預測不行。

書對「用 RL 找 alpha」的評價很不客氣:非平穩性會侵蝕已學到的型態、探索本身造成的市場衝擊不可逆、用短窗 Sharpe 當獎勵會招來過擬合與獎勵駭客(agent 滿足了你寫的獎勵函數,卻違反目標的精神——例如你罰負報酬,它就乾脆完全不交易來拿零罰)。

想用 RL? 先回答一個問題 「行動」本身 就是最佳化標的嗎? 是 用 RL——獎勵可以綁定可觀測的經濟目標 執行拆單 → 最小化實現成本 造市報價 → 價差收益 − κ × 庫存² 動態避險 → 終端損益的風險度量(如 CVaR) 否,只是想預測報酬 回到 Part III 的監督式管線 先預測、再決定部位——這條路穩定得多 獎勵工程 > 演算法選擇 agent 只會最佳化你寫下的那個訊號

書中教學環境的實測:PPO 學到的執行政策平均實現成本約 44 bp,優於 TWAP 的 53 與 Almgren-Chriss 式排程的 52——但作者明說這只是「溫和證據」,且對模擬器設計高度敏感。

Ch 21 · RL 部署前的四道關卡決策規則
# 訓練環境必須夠真,否則 agent 學到的是模擬器的漏洞
環境要含 市場衝擊 · 排隊優先權 · 部分成交 · 延遲
     # 缺了這些,agent 會學會「掛單即成」這種不存在的假設

演算法選型 看 action 空間與資料成本
     離散 action    → DQN 系
     連續 + 資料貴   → PPO(穩健)
     連續 + 模擬器便宜 → SAC / TD3(樣本效率高)
     γ 取 0.99–0.999 逼出長視野

部署四階段
     跨 regime 樣本外驗證 → 紙上交易 → 限額實盤 → 持續治理
     # 硬性風控與 kill switch 永遠在 agent 之外,不交給學習

評估先看政策形狀,再看賺賠
     造市:報價中心有沒有逆著庫存偏移
     # 單一 seed、單一回合的數字不構成排名證據
註解為什麼重要:這章有個跟 RL 無關、但全書最該記住的數字之一。書拿同一筆 500 萬美元的動能單,打在五種流動性量級的美股上:大型股只占日成交量約 1.5%,即使在最強的衝擊假設下仍然獲利;微型股的同一筆單超過日成交量數倍,紙上大賺直接翻成接近全損。這就是「小型股 alpha 無法放大」的機制——下單量超過一日成交量的紙上贏家,幾乎全數翻虧。

→ 接到台股(以下為外推,非書上內容):那個「參與率」的教訓對台股格外重要——台股的流動性斷崖比美股陡得多。上市櫃約 1,700 檔裡,日成交金額能撐起有意義部位的可能只有前幾百檔,而回測最漂亮的訊號往往集中在小型股。書給的檢查很簡單也很便宜:下單前先把委託量除以該檔的日均成交量,超過某個比例就知道紙上績效不可信。至於 RL 本身,書的建議(別拿來找 alpha)對台股同樣適用,而且台股可用歷史更短、非平穩性問題只會更嚴重。

B

Ch 22 · 檢索增強生成(RAG)

幻覺是架構問題,不是 prompt 問題

核心思想:幻覺是機率式生成模型的固有性質,不是可以修掉的 bug——在金融這是部署阻斷級的風險。所以解法必須是架構性的:RAG 把 LLM 從「生成神諭」約束成「只在檢索到的證據上做綜合的引擎」,每個宣稱都可以回溯到來源頁面。

這章有一個非常實用的觀念:RAG 的品質天花板在資料匯入(ingestion),不在模型。固定長度的天真切塊會把表格撕碎、把標題和內文拆散,LLM 因此混淆會計年度、錯誤歸屬——而這違反了 RAG 的根本前提。書的實測顯示,改用結構感知的解析後,表格保存度從 0.45 提升到 0.85、版面忠實度從 0.40 到 0.88,代價是解析延遲增加約 70%——這個交換很划算。

查詢 使用者的問題 語意搜尋(向量) 抓得到同義概念,但對代號與精確數字是盲區 關鍵字搜尋(BM25) 精準命中代號與法規代碼,抓不到同義說法 RRF 融合 分數 = Σ 1/(k + 排名) k 通常取 60 最終排名 再交給 LLM 只依證據作答 RRF 的特徵偏好:「兩邊都排前十」的文件,會贏過「單邊第一名但另一邊第十五名」的文件——這正是你要的行為

書的實測:混合檢索加 RRF 的 MRR 是 0.443,比純關鍵字的 0.349 高出約 27%。

Ch 22 · RAG 的參數起點與失敗診斷決策規則
切塊大小 金融文件起點 400–600 tokens,重疊 50–100
     當超參數掃:256 / 512 / 768 / 1024
     # 檢索用小塊求精準,命中後回傳整個父節餵給 LLM

凡是算術 一律走 retrieve → extract → compute → narrate
     # 用程式碼算,不讓 LLM 算
     # 「證據對、算式錯」這種錯,標準的忠實度指標抓不到

reranker 必須在自家語料驗過再用
     # 通用網頁訓練的 reranker 實測反而讓 MRR 掉了 36%

長 context 是 fallback 不是預設
     5–10K 的精準片段,通常勝過 100K+ 的鬆散材料

除錯先分類失敗(別亂槍打鳥)
     context recall 低 → 修檢索
     context precision 低 → 修排序與過濾
     忠實度低     → 修 prompt 或換模型
     算術錯      → 只能靠程式驗算抓
     該拒答卻硬答   → 要專門測拒答品質
註解為什麼重要:「公開排行榜第一名」在這裡要當成假說不是結論。書比較兩個 embedding 模型:整體 MRR 是 0.675 對 0.592(大模型贏 14%)——但拆開查詢型態看,技術題 0.90 對 0.73(大幅領先)、風險題 0.61 對 0.48,一般商業題反而小模型小勝。結論很清楚:模型之間的差距,約等於同一個模型內不同查詢型態的變異。所以榜單只給候選名單,最終要在自己的語料上量。

→ 接到台股(以下為外推,非書上內容):做台股的中文 RAG,這章的方法可以整套照搬,但元件要全換。中文沒有天然的詞邊界,BM25 那一路需要先斷詞(jieba 或其他中文斷詞器),效果會直接影響混合檢索的品質;embedding 模型也要換成支援中文的。切塊大小 400–600 tokens 這個數字不能照抄——中文的 token 化比例跟英文完全不同,同樣的 token 數承載的資訊量差很多,這個參數必須自己掃。至於素材,台股的公開資訊觀測站重大訊息、法說會逐字稿、月營收公告都是很好的語料,而且「時間戳紀律」(用公告可得時間而非文件日期)跟書上完全一致。

C

Ch 23 · 知識圖譜

先問:這個問題真的是關係型的嗎

核心思想:知識圖譜只在問題「真正是關係型」時才值回票價——答案取決於實體之間的路徑、關係類型與揭露時點,而不是單一實體的屬性。書給了一個很好用的前置檢查叫 path-pattern test:把你的問題改寫成路徑模式,如果它自然分解成「找出經由關係鏈連接的實體」,才適合用圖。

而這章最重要的一個機制,是三時間戳模型——每條關係都要帶三個時間:事件發生時間、公開揭露時間、以及你的管線處理時間。可見性閘門一律用「揭露時間」。這聽起來理所當然,但實務上很容易搞錯:13F 持股是季報,而且有 45 天的延遲——某個機構的持股要以申報日才算可交易資訊,不是季末日。

時間 ① 事件發生 機構真正買進的那天 此刻市場還看不到 ② 公開揭露 申報文件公布的那天 可見性閘門用這個 回測只能從這裡開始用 ③ 管線擷取 你的程式跑完的那天 用於稽核與重放 這段是「經濟上為真、但尚未揭露」的盲區 用事件時間當閘門,就是把這段偷渡進模型 13F 持股:季報 + 45 天延遲 以申報日算可交易,不是季末日

「事件何時發生」與「市場何時能看見」永遠不同——一律以後者為準。

Ch 23 · 建圖前的治理三合約與特徵路線圖決策規則
# 治理先於 prompt——這三件事沒定好,萃取出來的圖不可信
合約一 身分 提及 ≠ 身分
     用穩定識別碼當主鍵;代號是「帶效期的時變屬性」
     併購與改名要當成一等事件處理
合約二 schema 關係詞彙有限且具型別
     白名單以外的邊直接拒收,或送人工審查
     # 實務上多數實作只用 8–15 種關係型別就夠了
合約三 出處 每條邊要帶來源文件、公開日、位置、萃取器版本

品質監控門檻
     schema 合規率 > 90% · 出處覆蓋率 > 95%

特徵路線圖(照順序來,別跳級)
     手工圖特徵(中心性、擁擠度)
       → MST / 社群偵測
         → 最後才考慮 graph embedding 或 GNN
     # GNN 是補充不是預設架構
註解為什麼重要:書對 GNN 的期待值管理得很誠實:實測用圖注意力網路的嵌入混合表格模型,IC 是 0.215,反而低於純表格模型的 0.233(差了 7.7%)。成熟度是分層的——詐欺偵測已經可以上生產、系統性風險分析在發展中、alpha 生成還是實驗性質。但圖真正有價值的地方在別處:書的傳染模擬顯示,從最高中心性節點注入的衝擊會傷害組合 −87.3%,同樣的衝擊從邊陲節點注入只有 −23.0%——3.8 倍的差距,拓撲位置比衝擊大小更決定傳染範圍。

→ 接到台股(以下為外推,非書上內容):有趣的是,台積電與鴻海就出現在書的供應鏈圖裡——書處理了 101 家 S&P 100 公司的 601 份 10-K,萃出 1,057 條關係,台積電、鴻海、三星是最連通的供應商(分別有 61、33、28 家下游客戶)。這代表台股的供應鏈關係本來就嵌在美股的揭露文件裡,反向利用是可行的。而台股自己有一層美股完全沒有的關係資料:券商分點。「哪些分點同時進出哪些股票」天然就是一張二部圖,Ch 23 的擁擠度、共同持有共動這些概念可以直接對映過來。但書的警告也適用:先做 path-pattern test,如果你的問題只是「這檔股票今天誰買最多」,那是屬性查詢,用資料表就好,建圖是浪費。至於揭露時點,台股分點資料是當日盤後公布,延遲比 13F 短得多——這是台股的結構性優勢。以上是把書的框架映射到台股的推論。

D

Ch 24 · 自主代理

要設計成工作流,不是人格

核心思想:金融 agent 要設計成工作流而非人格。那些推理模式(ReAct、思維樹、Reflexion)只有嵌在顯式狀態、具型別的工具合約、有界的自主權、可重放的產物裡才有意義。而且書刻意把整章停在唯讀邊界——預測支援與下單執行是不同類別的系統。

書給了一個很清楚的自主等級量表,並直說金融實務目前多半停在 L1–L2:因為預測錯誤很貴,而沒有政策把關的執行錯誤是災難。

自主等級——金融實務目前多停在中間那兩級 L0 被動摘要 人讀、人決定 L1 決策支援 輸出機率與證據 實務主場 L2 受限行動 每個動作需人工核准 實務上限 L3 有界自主 政策範圍內自行動作 L4 漸進自主 金融幾乎沒有人到這裡 綜合之前要過三道品質閘 涵蓋度 必要的證據型態齊全了嗎 新鮮度 證據落在時間窗內嗎 一致性 代號有沒有錯配、有沒有洩漏未來資訊 最容易被忽略的風險:污染 LLM 可能靠訓練資料裡的記憶,「預測」出 cutoff 之前就已實現的結果 污染分析與展示績效衝突時,以污染分析為準

cutoff 日期要在工具邊界強制執行(用日期過濾),不能靠模型自律。

Ch 24 · agent 的優先順序與除錯順序決策規則
# 品質的主宰因素排序——這個順序跟直覺相反
工具設計 > prompt 工程 > 模型選擇
     # 工具描述要含三部分:回傳什麼、何時呼叫、「何時不要呼叫」
     # 那個負向指引擋掉最常見的「選錯工具」bug

推理模式逐層加,別一次上滿
     ReAct 起手(便宜、可稽核)
       → 分支重的決策才加思維樹(成本 × 分支數)
         → 評估管線穩定後才加 Reflexion
     每次執行都要設推理預算:工具呼叫上限、分支上限、輪數上限
     預算用完就回傳「有界棄權」,不要無限探索

結果不好時的除錯順序(也跟直覺相反)
     ① 工具合約與搜尋品質
     ② JSON 解析與輸出抽取
     ③ 最後才是 prompt 措辭
     # 可靠性失敗多半源於工具與解析設計,不是語言生成

多代理聚合 Neyman extremization 因子 n/(1+(n−1)ρ)
     # agent 彼此高度相關時,加更多 agent 的邊際資訊遞減
     # 校準窗要與聚合資料分離,否則會複合過度自信
註解為什麼重要:書裡有一個真實的 agent 實跑很值得看:它被指派去執行 ETF 案例的下一步實驗,做出來的 ensemble IC 較高(0.065 對 0.052)但驗證窗的 Sharpe 反而較低(0.56 對 0.92)——因為九折裡有三折的 IC 是負的,被配置器放大了。重點是:agent 診斷出了這個落差,並回報了一個乾淨的負結果。這才是 L1 決策支援該有的樣子——它不是來給你好消息的。整趟 39 輪、花費約 1.25 美元。

→ 接到台股(以下為外推,非書上內容):這章其實正在描述你現在正在做的事——用 Claude Code 加上一組 skill 與工具去跑研究流程,就是書裡的「operator 模式」:小型編排器 + 通用工具 + 按需讀取的方法論檔案。書的觀察值得記住:方法論不在編排器裡,在函式庫與 skill 檔裡,所以換個研究題目只要改一個參數。至於安全邊界,書堅持停在唯讀——研究支援可以自動化,下單不行。這條界線對台股個人研究者同樣適用,而且更該堅持:沒有機構的風控層兜底,agent 的一個錯誤沒有第二道防線。另外「污染」那條在台股也成立:問 LLM 某檔股票過去的走勢判斷,它可能只是記得結果。

E

這一部分的決策速查

進階 AI 的邊界與參數起點

情境怎麼做出處
考慮用 RL先問行動本身是不是最佳化標的;找 alpha 請回監督式管線Ch 21
選 RL 演算法離散 → DQN;連續+資料貴 → PPO;連續+模擬器便宜 → SAC/TD3;γ 取 0.99–0.999Ch 21
建 RL 訓練環境必須含市場衝擊、排隊優先權、部分成交、延遲,否則學到的是模擬器漏洞Ch 21
RL 上線四階段:跨 regime 驗證 → 紙上 → 限額實盤 → 治理;硬風控永遠在 agent 之外Ch 21
下單前必查委託量 ÷ 日成交量;超過一日成交量的紙上贏家幾乎全數翻虧Ch 21
設 RAG 切塊金融文件起點 400–600 tokens、重疊 50–100;當超參數掃 256/512/768/1024Ch 22
做檢索語意+關鍵字混合,用 RRF 融合(k 取 60);metadata 要在搜尋前過濾Ch 22
用 reranker必須先在自家語料驗過——通用款實測反而讓 MRR 掉 36%Ch 22
查詢含算術retrieve → extract → compute → narrate;用程式算,不讓 LLM 算Ch 22
建 RAG 評估集50–100 條分層題目,含 10–20% 不可回答題;按五類失敗分類除錯Ch 22
該不該建圖先做 path-pattern test;平均連結數 < 2–3 時先修萃取管線Ch 23
建圖治理身分、schema、出處三合約先於 prompt;schema 合規 > 90%、出處覆蓋 > 95%Ch 23
圖的時間紀律三時間戳,可見性一律用揭露時間;13F 記得季報+45 天延遲Ch 23
圖特徵路線手工特徵 → MST/社群偵測 → 最後才 GNN;GNN 是補充不是預設Ch 23
設計 agent顯式狀態、具型別工具合約、有界自主、可重放產物——四者缺一都不算數Ch 24
加推理模式ReAct 起手;分支重才加思維樹;評估穩定後才加 Reflexion;每次執行設預算Ch 24
agent 結果不好除錯順序:工具合約 → JSON 解析 → 最後才是 prompt 措辭Ch 24
強制時間紀律cutoff 在工具邊界用日期過濾強制,不靠模型自律Ch 24
多 agent 聚合Neyman extremization 因子 n/(1+(n−1)ρ);校準窗與聚合資料要分離Ch 24
評估 agent只認已實現結果;污染分析與展示績效衝突時,以污染分析為準Ch 24

注意事項 · 這一部分最容易踩的坑

🎮用簡單的價格回放當 RL 訓練環境:沒有訂單簿機制、沒有衝擊、沒有排隊、沒有部分成交與延遲,agent 就會學會利用「掛單即成」這種不存在的假設——上線即敗。
📄忽略 RAG 的時間 metadata:問「2024 年的展望」卻撈到 2022 年那份順帶提及 2024 的前瞻陳述——有引文、看起來很合理、而且危險地過期。這種錯比沒有引文更難發現。
🧮讓 LLM 做算術:證據對、算式錯,而且標準的忠實度指標完全抓不到這種錯——因為答案確實接地於檢索到的內容,只是算錯了。只能靠程式驗算。
🕸️把 10-K 的供應鏈揭露當成完整清冊:揭露是選擇性的、部分的、有時是刻意含糊的——它是高精度但低召回的來源。要廣度就得疊上結構化的供應商資料集,並經過身分合約對帳。
🤖用隱式的對話紀錄當 agent 的狀態:指令、證據、推理、工具輸出全混成一條無差別的流,要抽取任何產物都得去 parse 自由文字——脆弱而且不可重現。顯式的具型別狀態才是可測試、可稽核的前提。
📐本頁的來源邊界:內容取自 skills/ml4t/chapters/ch21–ch24 蒸餾檔。來源 EPUB 抽取時數學公式與圖表無法讀取,本頁數字均取自章節檔中以文字明確寫出的部分。書中實測為作者環境下的結果,屬研究等級、非實盤依據;口徑是美股,台股段落已逐段標示為外推。