先說結論

樂透開獎應視為隨機事件。沒有可靠方法能保證提高中獎機率,也沒有模型可以「自我突破」機率極限。任何選號、模型輸出或歷史統計都不構成投注建議;請先閱讀免責聲明

這篇文章不是要推薦某種選號法,而是提出一套可重現的檢驗規格。它可用於檢查樂透模型,也適用於其他有時間順序、會產生機率預測的問題。本文不宣稱任何既有系統已依此規格完成獨立驗證,亦不把單次命中、回顧式挑選結果或歷史測試紀錄當成實證成果。

資料與比較對象要先固定

資料應以台灣彩券的官方開獎結果為準。官方提供各期獎號、開獎日期與其他欄位的查詢及下載資料;使用時要保存下載時間、資料範圍、遊戲名稱、檔案雜湊與清理規則,讓別人可以取得相同輸入資料並重跑分析。資料後續修正、補登或下載格式改版時,也要建立新版本,而不是覆寫舊實驗的輸入。

比較的第一個對象不是另一個複雜模型,而是「無資訊」基準:依該遊戲公開規則,從所有合法組合中均勻隨機抽樣。它不使用歷史號碼、熱門度、遺漏期數或當期以後的資訊。候選方法和基準必須面對相同的遊戲、相同資料截止點、相同輸出組數及相同評分規則;否則「優於隨機」沒有可比性。

這也是小賽 AI 樂透預測應被理解為資料研究作品的原因:模型名稱、介面或預測清單不是效能證據。只有可追溯的資料、事前輸出與樣本外評分,才有資格進入比較。

時間順序比漂亮的回測分數重要

隨機打散資料後再切訓練集與測試集,會讓未來期數的資訊混進過去。時間序列驗證的基本原則是:每一折只用較早期的資料訓練,並在較晚期的資料評估。scikit-learn 的 TimeSeriesSplit 也明確指出,其他交叉驗證方式可能造成「以未來資料訓練、以過去資料評估」的錯誤。

可採用兩種等價方向的設計:

  1. 固定留出期: 先宣布資料截止日,早期資料只用於開發與調整,最後一段連續期數完全保留到模型、規則和指標都固定後才評分。
  2. 走動回測: 對每一期 t,只允許使用 t 以前已公布的資料產生輸出,再以第 t 期結果評分;逐期向前移動並累積結果。

特徵工程、缺失值處理、標準化、選號規則與超參數選擇都必須在每一個訓練窗口內重新擬合。官方文件以特徵選擇為例說明:正確做法是先切分訓練與測試資料,任何 fit 都只看訓練資料;否則看似高的分數可能只是資料洩漏。

事前保存,才有資格談預測

在開獎前,應保存不可任意改寫的預測紀錄,至少包括:資料截止時間、遊戲與期別、模型或規則版本、程式碼 commit、隨機種子、輸出組合或每個事件的機率、產生時間與檔案雜湊。開獎後只新增結果與評分,不能覆寫原輸出。

可將紀錄放在僅追加的資料表、帶時間戳的版本庫標籤,或公開可核對的發布檔案。重點不是採用哪一種工具,而是能回答「當時知道什麼、當時輸出了什麼、之後是否被修改」。沒有這個鏈結,任何「曾經預測到」都只能是回顧敘事。

這項可驗證性原則不只適用於預測。本機影片壓縮的可驗證邊界討論另一個不同領域的案例:內容主張應和讀者能在當前版本重跑或檢查的證據對齊。兩者的技術與用途不同;此處的連結只用來說明相同的證據標準。

命中數要看完整分布,不只挑最好的一期

對每期輸出的合法組合,記錄命中幾個號碼,並依遊戲規則計算在均勻隨機基準下應有的命中數分布。若每張組合從固定母體選取不重複號碼,這個理論分布可由母體大小、選號個數與當期中獎號個數決定;比較時也要納入輸出組數。

報告至少應列出每個命中數的期數或比例、平均命中數、樣本數、評估期間,以及候選模型和均勻隨機基準的差異與不確定性。一次高命中、只報最高命中,或在許多規則中挑出事後最好的版本,都不能證明規則有可複製優勢。若樣本外結果沒有穩定、可重現地優於基準,正確結論就是「尚未觀察到優勢」,不是把偶然波動包裝成能力。

機率輸出還要檢查校準

若模型提供「某號碼或事件會發生的機率」,除了命中數,也要檢查機率是否校準。例如模型多次報出約 20% 的事件,長期觀察的發生比例是否也接近 20%。校準曲線或可靠度圖會把預測機率分箱,並比較每一箱的平均預測機率與實際發生比例;這是檢查機率語句是否可信的基本方法。

可同時報告 Brier score 或 log loss,但不能只用單一分數宣稱「機率更準」。scikit-learn 的機率校準文件指出,Brier score 同時受校準、區辨能力與資料不確定性影響;若要判斷校準本身,仍須看可靠度圖與樣本量。校準也不是神奇增益:它是在獨立資料上調整機率表達,不能創造原本不存在的預測訊號。

Shadow 實驗與版本比較的正確位置

可以讓新版本以 shadow 模式平行產生輸出,不影響對外顯示或任何使用者決策。每個版本都用相同的事前保存格式與走動回測窗口,和均勻隨機基準及既有版本一起評分。升級、保留或停止版本的理由,應由預先定義的樣本外指標、資料品質檢查與不確定性決定。

Shadow 實驗的價值是降低自我欺騙:它能發現資料欄位變更、日期對齊錯誤、資料洩漏或版本差異。但它不會改變樂透的機率結構,更不能用「持續學習」或「AI 迭代」暗示模型終將保證勝過隨機。

一份可檢查的最小報告

每次公開模型比較,至少應提供以下資訊:

  1. 台灣彩券官方資料來源、下載時間、資料範圍與版本識別。
  2. 無資訊/均勻隨機基準的合法組合定義與抽樣方式。
  3. 留出期或走動回測的時間邊界,以及所有資料轉換只在訓練窗口擬合的證據。
  4. 開獎前輸出的版本、時間戳、雜湊與開獎後不可覆寫的評分紀錄。
  5. 全部命中數分布、樣本數、不確定性、基準比較,以及有機率輸出時的校準結果。
  6. 失敗、資料異常、版本撤回與尚未驗證的部分,而不只發布看起來有利的結果。

這些欄位不能讓隨機事件變得可預言,卻能讓讀者判斷一項預測主張是否值得相信。對樂透而言,最誠實的預設立場是:沒有可靠方法能保證提高中獎機率;內容僅供教育、研究與娛樂用途,並非投注建議。