top of page

球員互動圖與球隊關係圖預測足球賽果

  • 6月4日
  • 讀畢需時 7 分鐘

足球賽果預測很難,因為一場比賽不是幾個 summary stats 可以完整描述。射門、傳球、控球率、主客場、球員狀態、球隊風格、歷史對賽,全部都可能影響結果。傳統 machine learning 做法通常靠 domain experts 設計大量 features;問題是,很多真正重要的訊號其實藏在球員之間、球隊之間的互動結構裡。

論文中提出 HIGFormer(Heterogeneous Interaction Graph Transformer),用圖和 transformer 來建模足球賽果。它不是只把每隊歷史數據壓成一個向量,而是同時看兩個層級:球員之間的 heterogeneous interaction graph,以及球隊之間的 historical win/loss interaction graph。最後再用 Match Comparison Transformer 比較兩隊,預測主隊 win / draw / lose。


本文重點

HIGFormer 的核心想法很清楚:足球賽果不是單一球員能力或球隊平均數的結果,而是多層互動的結果。球員層面,pass-related 和 defense-related events 形成 player-player edges;球隊層面,歷史對賽勝率形成 team-team graph。模型把這兩種 graph representation 結合,去學「哪種球員互動」和「哪種球隊關係」對賽果有用。

作者在 WyScout Open Access Dataset 上測試,涵蓋 1,941 場比賽、3,293 名球員、154 支球隊與約 3.25M events。HIGFormer 在總體 accuracy 上達到 52.19%,高於 MLP、RNN、player graph、team graph 和 DraftRec 等 baseline;尤其在 lose prediction 上達到 68.25%


一、為何賽果預測需要互動圖

很多足球模型會先做 feature engineering:最近幾場勝率、射門數、失球數、球員平均能力、主客場、排名、Elo 或 PageRank。這些 features 有用,但它們往往把比賽壓縮得太快。

例如兩名中場球員的傳球組合、邊後衛和翼鋒的連動、中堅與防中之間的防守覆蓋,這些都不是單一球員 event count 能完全表達的。更進一步,球隊之間也存在歷史互動:某隊長期壓制另一隊,或在同一聯賽中形成特定對位優勢。

HIGFormer 把足球比賽看成 interaction graphs。球員是 nodes,事件是 edges;球隊也是 nodes,歷史勝率是 directed edge。這種表示法比單純 tabular features 更接近比賽本身。


二、Player Interaction Network:同時看局部與全局

球員層面,模型為每場歷史比賽建立 heterogeneous player interaction graph。每個 player 是 node,node feature 是該球員在比賽中的 key event counts。paper 選了 10 類主要 events,包括 duel、foul、free kick、goalkeeper leaving the line、interruption、offside、others on the ball、pass、save attempt 和 shot。

Edges 則代表球員之間的 interaction。作者把 edge type 分成兩類:pass-related events 和 defense-related events。這裡的「heterogeneous」意思是,node 有不同隊伍類型,edge 也有不同互動類型;模型不能把所有邊都當成同一種關係。

Player Interaction Network 有兩條分支:

Heterogeneous Graph Transformer: 把 nodes 和 edges 都視為 tokens,加入 graph structure identifiers、node type embeddings 和 edge type embeddings,再用 transformer 捕捉 global player interaction。這可以看遠距離、跨隊伍、跨角色的關係。

Heterogeneous GCN / GAT: 用 message passing 捕捉 local neighborhood。這對近鄰互動很重要,例如傳球鏈、局部防守對抗、附近球員之間的連接。

模型再用 Mixture of Experts(MoE) 來動態融合 local expert 和 global expert。換句話說,不是固定把兩種 embedding 串起來,而是讓每個 player 根據 context 決定更依賴 local graph 還是 global transformer。


三、Team Interaction Network:球隊本身也是長期物件

足球隊不是臨時組隊的 online game team。球會有青訓、教練組、財務資源、訓練設施、文化、球員結構和長期戰術風格。因此,team-level history 本身有訊號。

HIGFormer 建立 team interaction graph:每支球隊是一個 node,兩隊之間的 directed edge 根據歷史對賽勝率決定。假設 Team A 對 Team B 過去 30 場贏了 20 場,就建立由 A 指向 B 的 edge,weight 為 2/3。這個 graph 用 GAT 編碼,生成 team embeddings。

這個設計補足 player graph 的不足。即使兩隊球員陣容有變,球隊作為 institution 仍有持續性;如果只看球員歷史,很容易忽略球會層面的長期強弱和對位關係。


四、Match Comparison Transformer:比較兩隊,而不是單獨評分

比賽預測不是問「A 隊好不好」,而是問「A 隊對 B 隊時,哪邊更可能贏」。HIGFormer 的最後一步是 Match Comparison Transformer。

對於即將到來的比賽,模型會取每名參賽球員過去 T 場(paper 最後選 T = 10)的歷史 player embeddings 做 average pooling,得到 player-level historical representation。再把對應 team embedding 加上去,讓每名球員帶有球隊語境。Match Comparison Transformer 處理兩隊共 46 名球員(每隊 23 人,包括 starters 和 squad players)的 embeddings。最後分別平均成主隊 representation 和客隊 representation,取兩者差值,再經 MLP 輸出主隊勝率。

訓練時,作者不是用標準三分類 cross-entropy,而是把賽果視作有序值:lose = 0、draw = 0.5、win = 1,用 MSE loss 來學。這是因為 draw 介乎 win 和 lose 之間,具有 ordinal relationship。


五、資料與 Baselines

實驗使用 WyScout Open Access Dataset,包含 2017/18 五大聯賽,以及 2016 European Cup 和 2018 World Cup。總計:

  • 1,941 matches

  • 3,293 players

  • 154 teams

  • 3,251,294 events

資料按時間排序,每個 competition 以 80% training、20% test 分割。baseline 包括:

  • MLP:使用歷史 event counts 和 player attributes

  • RNN:用歷史比賽序列預測下一場

  • P-Graph:只用 player graph

  • T-Graph:只用 team graph

  • DraftRec:改造自 online game draft recommendation / match prediction 的 transformer 方法

這些 baseline 分別代表 tabular deep learning、sequence modeling、單層 graph modeling 和 transformer-style player history modeling。


六、結果:總體提升,但 draw 仍然難

HIGFormer 的總體 accuracy 為 52.19%,高於最佳 baseline DraftRec 的 48.33%。分項看:

  • win accuracy:57.96%

  • draw accuracy:24.53%

  • lose accuracy:68.25%

最明顯的優勢在 lose prediction。相比 baseline,HIGFormer 對「主隊不利」情境的判斷更強,可能因為 player/team interactions 能較好捕捉弱隊、失衡對位或歷史劣勢。

但 draw prediction 仍然是痛點。paper 指出,所有方法在 draw 上都偏低,最高也只有約 37%。這不只是 HIGFormer 的問題,而是 football outcome prediction 長期難題:draw 不是單一清楚類型,而是介乎勝負之間的多種情境。0-0、1-1、強隊爆冷被逼和、弱隊死守成功,統計特徵可以很不同。


七、Ablation:三個模組都重要

Ablation study 顯示,每個核心設計都對結果有貢獻。

完整模型總體 accuracy 是 52.19%。拿掉 Heterogeneous GCN 後降到 50.13%,代表 local graph structure 有價值;拿掉 Heterogeneous Transformer 後降到 48.84%,說明 global interaction 更重要。

若移除整個 Player Interaction Network,accuracy 降到 48.59%;移除 Team Interaction Network 則降到 48.84%。這支持作者的主張:球員互動與球隊互動都需要,單看其中一層不夠。

兩階段訓練也很關鍵。若不用 two-stage training,accuracy 只有 47.95%。原因是每場預測牽涉大量歷史 player graphs,直接 end-to-end train 監督太稀疏;先把 Player Interaction Network 預訓練好,再訓練融合與比較模組,會更穩定。


八、模型解釋:中場與後衛得到更多 attention

作者也分析了 Player Interaction Network 的 attention weights。結果顯示,球員傾向關注同角色球員,尤其是 midfielders 和 defenders。中場與後衛在 team control 和 defensive structure 中作用大,因此得到較高 attention;goalkeepers 則相對較低,可能因為事件參與較少,與其他球員的直接 interaction 較少。

這個結果符合足球直覺。賽果不只由 forwards 決定,中場控制、後防穩定、攻防轉換位置關係,往往對結果有更持續的影響。HIGFormer 的 attention pattern 至少顯示,它沒有只盲目追逐射門球員,而是學到一些結構性訊號。


九、Player Evaluation:替換球員 embedding 看影響

paper 還展示了一個有趣應用:用 player embeddings 做 player evaluation。作者在測試集中選了 2017/18 西甲三支不同排名球隊:Real Betis、Girona 和 Celta Vigo,然後把特定球員 embedding 替換成 Messi、Cristiano Ronaldo、Toni Kroos 或 Gerard Piqué 等球員,觀察模型預測勝率變化。

結果顯示,對 Betis 和 Girona 這類 top / middle ranked teams,加入頂級球員通常令 predicted win probability 上升 6% 以上,並降低 lose probability。對低排名的 Celta Vigo,單一球星帶來的改善就不穩定,甚至可能增加 lose probability。作者解讀為:足球是 team-oriented sport,單一高 profile player 未必能補償整體 team dynamics 的不足。

這個實驗不應被理解成真實轉會模擬,但它展示了 embedding-based player impact analysis 的可能性:如果模型能把球員歷史互動表現壓成 vector,就可以用 counterfactual substitution 來探索陣容變化的方向性影響。


十、限制與實務解讀

第一,draw prediction 仍然弱。若模型要用於 betting、risk pricing 或賽前策略分析,不能只看 overall accuracy,必須仔細處理 draw calibration。

第二,player interaction graph 目前主要使用 pass-related 和 defense-related events。作者也指出,未來可以加入 shooting、dribbling 或更細的 event types,讓 attacking pattern 更完整。

第三,paper 刻意使用 basic event counts,以展示架構本身的能力。若加入 domain-specific engineered features,例如 xG、rest days、injury、lineup uncertainty、travel、market odds 或 tactical style features,準確率可能進一步提升,但也會更難分辨提升來自架構還是 feature engineering。


十一、總結

文中的價值,在於把足球賽果預測從「人工 features + 一個分類器」推向「多層互動圖 + transformer comparison」。HIGFormer 同時建模 player-player interactions 和 team-team historical relationships,並用 local GCN、global graph transformer 和 MoE 來融合不同尺度的訊號。

對足球 AI 研究來說,這是一個重要方向:不是只問某隊最近進了幾球,而是問球員如何互動、球隊如何對位、歷史結構如何影響下一場比賽。真正的賽果預測未必會單靠這類模型完成,但它提供了一個更接近比賽結構的 representation learning 框架。


Reference

  1. L. Wang, S. Xu, M. Horton, J. Gudmundsson, Z. Wang. Player-Team Heterogeneous Interaction Graph Transformer for Soccer Outcome Prediction. KDD 2025. arXiv:2507.10626v1 [cs.LG], 2025. https://arxiv.org/abs/2507.10626

  2. O. Hubáček, G. Šourek, F. Železný. Learning to predict soccer results from relational data with gradient boosted trees. Machine Learning, 2019.

  3. H. Lee, D. Hwang, H. Kim, B. Lee, J. Choo. DraftRec: Personalized draft recommendation for winning in multiplayer online battle arena games. WWW, 2022.


原文 Paper



bottom of page