VERSA:為足球 Event Data 加上邏輯驗證的資料格式
- 5月5日
- 讀畢需時 5 分鐘
已更新:5月6日
足球數據分析入面,很多模型都假設 event stream 是可信的:傳球、接應、射門、封堵、搶回球權按時間順序出現,然後模型再用這些事件去計算 xG、xT、VAEP 或球員貢獻。但現實中的 event data 多數由人手或半自動標註產生,不同 provider 又有不同 schema;一旦事件順序錯、關鍵事件漏記,後面的模型再準都可能只是在學錯資料。
Jo 等喺 arXiv:2601.21981v1 提出 VERSA(Verified Event Data Format for Reliable Soccer Analytics),用 state-transition model 形式化足球比賽的事件邏輯,自動偵測同修正 event stream 內的異常序列。這篇 paper 的價值在於提醒我們:sports analytics 的可靠性,不只是模型問題,也是資料語法問題。
本文重點
VERSA 將足球比賽抽象成幾個互斥狀態,例如 Kick-off、In transition、In possession、Ball neutral、Set piece、Post shot。每個事件類型都應該觸發合法的狀態轉移;如果某個事件在當前狀態不可能發生,系統就把它標記為 logical exception,並透過 rule-based handler 修正。
作者在 Bepro、StatsBomb、Wyscout 三類資料上測試,發現邏輯例外並不罕見。例如 Bepro 的 K League 1 2024 season 中,18.81% 已記錄事件出現邏輯不一致;Wyscout 多個聯賽的 exception rate 更接近 38%,主要因為它沒有顯式記錄 Pass Received。修正後,VERSA 在跨 provider 一致性與 VAEP 下游模型表現上都比 SPADL、Atomic-SPADL 更穩定。
一、為何 event stream 需要「語法檢查」
足球 event stream 通常記錄每次 on-ball action:誰做了動作、在甚麼位置、甚麼時間、事件類型和結果。這些資料支撐很多常見模型,包括 Expected Goals (xG)、Expected Threat (xT)、以及 VAEP 這類 action-value model。
問題是,event stream 並不是天然乾淨的真相。標註員可能因為鏡頭角度、主觀判斷、時間同步誤差而記錯事件;不同 provider 對同一類事件亦可能有不同定義。例如一個 provider 可能記錄 Carry,另一個 provider 可能不記;一個叫 Error,另一個叫 Miscontrol。
更嚴重的是邏輯順序錯誤。若 Block 被記錄在 Shot 之前,模型就可能無法知道這個 Block 其實是阻止射門的防守貢獻。若成功傳球之後直接出現 Shot,但中間沒有 Pass Received,VAEP 之類模型在分配球員行動價值時就會被扭曲。
二、VERSA 的狀態轉移模型
VERSA 的核心是把比賽過程寫成一個 state machine。作者定義六個主要狀態:
Kick-off:開波或入球後重新開始。
In transition:球正在兩名球員之間移動,暫時未被完全控制。
In possession:某名球員已完全控制皮球,可作傳球、盤帶、射門等動作。
Ball neutral:皮球因反彈、封堵、折射等原因暫時無明確控制方。
Set piece:死球重開,例如 free kick、corner、throw-in。
Post shot:射門之後,視乎 Goal、Catch、Block、Out 等結果轉移。
每個 event label 都對應某種合法轉移。例如 Pass 會把狀態推向 In transition;Pass Received 才能把球權落到 In possession;Shot 通常需要在 In possession 狀態下發生。對 off-ball 或不改變狀態的事件,系統使用 self-loop。
這種設計的好處是清楚:如果一個事件不能從當前狀態合法轉移,就代表資料很可能有漏記、錯序或 provider schema 差異。
三、VERSA 怎樣修正錯誤
論文展示兩類典型 handler。
第一是事件順序錯誤,例如 Block → Shot。在足球語義上,Block 通常是對 Shot 的反應;若原始資料將 Block 記在 Shot 前面,VERSA 會偵測到 Block 不能在當前狀態合法發生,然後把序列修正成 Shot → Block。
第二是缺失事件,例如成功 Pass 後直接出現 Carry 或 Shot,但中間沒有 Pass Received。若 Shot 只能在 In possession 狀態發生,而目前狀態仍是 In transition,handler 就會補入缺失的 Pass Received,令序列重新符合比賽邏輯。
這些修正不只是資料清洗;它會直接影響球員貢獻評估。事件順序改變後,同一段攻勢裡每個 action 的 VAEP value 可能重新分配,防守、接應、推進的價值也會更合理。
四、不同 provider 的異常模式
作者使用三個主要資料來源:Bepro 的 K League 1 / K League 2(2021 至 2025)、StatsBomb 的 J1 League、La Liga、2018 World Cup,以及 Wyscout 的歐洲五大聯賽與 2018 World Cup。
在 exception 分析中,各 provider 呈現不同模式。Bepro 和 StatsBomb 的主要 exception 多數是 Carry,例如同一球員連續兩個動作之間移動超過 3 米但資料沒有記錄 Carry;StatsBomb 有時亦會把很細微甚至靜止狀態記成 Carry。Wyscout 則大量缺少 Pass Received,因此在 VERSA 的語法下會被標記為 missing event。
這解釋了為何跨 provider 分析困難:兩份資料可能描述同一場比賽,但事件粒度、命名和隱含假設不同。若不先統一語法,直接比較球員評分或訓練模型,很容易混入 provider bias。
五、跨 provider 一致性與 VAEP 結果
作者用 StatsBomb 與 Wyscout 都覆蓋的 La Liga 2017/2018 和 2018 World Cup 做 cross-provider consistency 評估。指標包括 event sequence 的 Normalized Edit Similarity,以及兩個 provider 計算出的 VAEP 半場總值 Pearson correlation。
結果顯示,VERSA 和 Simplified VERSA 的一致性高於 SPADL 與 Atomic-SPADL。以 La Liga 為例,Normalized Edit Similarity 由 SPADL 的 0.532、Atomic-SPADL 的 0.660,提升到 VERSA 的 0.684,以及 Simplified VERSA 的 0.769。VAEP correlation 亦由 SPADL 的 0.890、Atomic-SPADL 的 0.947,提升到 VERSA 的 0.958 和 Simplified VERSA 的 0.962。
在下游 VAEP 模型方面,作者用 CatBoost 在三個 provider 混合資料上訓練並測試。VERSA 大多數情況下取得更高 AUROC、更低 Log Loss / Brier Score / ECE。例如在 Bepro 資料上,VERSA 的 scoring / conceding AUROC 為 0.8938 / 0.9010,高於 Atomic-SPADL 的 0.8617 / 0.8446。
六、分析含意
VERSA 的意義不只是「又一個足球資料格式」。它將 event data 的可靠性問題變成可驗證的形式邏輯:事件是否能從當前狀態發生?是否需要補一個 implicit event?是否需要重排前後順序?
對球隊分析、球員評估、跨聯賽 scouting、以及任何需要合併不同 provider 資料的模型而言,這層 verification 很重要。模型表現若建立在錯序或缺失事件之上,最後得到的球員價值可能看似精密,實際上卻不穩定。
七、限制與可延伸方向
第一,VERSA 的 correction handler 仍是 rule-based。這令系統可解釋,但亦意味它依賴人工定義的足球語法;不同聯賽、不同 provider、甚至不同戰術風格下,某些例外可能需要額外規則。
第二,state-transition model 把足球事件離散化,對複雜的同時事件、身體對抗、VAR 或混亂禁區情境未必能完整表達。若未來結合 tracking data,可能可以更準確判斷是否真的需要補 Carry、Interception 或 Pass Received。
第三,VERSA 改善資料一致性,不代表所有 provider 差異都應該被消除。有些差異可能來自真實標註哲學,而不是錯誤;因此 Simplified VERSA 這種「降低粒度以提升一致性」的做法,應按使用場景取捨。
八、小結
arXiv:2601.21981v1 提出一個很實用的觀點:足球 AI 模型要可靠,先要確保 event stream 自己有邏輯。VERSA 用 state-transition model 將這件事形式化,既能偵測錯序與缺失事件,也能提升跨 provider 一致性與 VAEP 類模型表現。
對 sports analytics 團隊而言,這篇 paper 值得放入資料 pipeline 設計清單:在談更複雜模型之前,先問 event data 是否通過了比賽語法檢查。
Reference
G. Jo, M. Kang, K. Lee, M. Lee, P. Bauer, S.-K. Ko. VERSA: Verified Event Data Format for Reliable Soccer Analytics. arXiv:2601.21981v1 [cs.AI], 2026. https://arxiv.org/abs/2601.21981
T. Decroos, L. Bransen, J. Van Haaren, J. Davis. Actions Speak Louder than Goals: Valuing Player Actions in Soccer. KDD, 2019.
DTAI Sports Analytics Lab. Introducing Atomic-SPADL: A New Way to Represent Event Stream Data. 2020.
原文 Paper




