Created at 1pm, Dec 29
benjaminArtificial Intelligence
0
TacticAI: an AI assistant for football tactics
6kK-AG-cHuF0sv0bNgfa4G4zxb_MfWD-C4zbfWUj4HA
File Type
PDF
Entry Count
128
Embed. Model
jina_embeddings_v2_base_en
Index Type
hnsw

Abstract of the Paper: Identifying key patterns of tactics implemented by rival teams, and developing effective responses, lies at the heart of modern football. However, doing so algorithmically remains an open research challenge. To address this unmet need, we propose TacticAI, an AI football tactics assistant developed and evaluated in close collaboration with domain experts from Liverpool FC. We focus on analysing corner kicks, as they offer coaches the most direct opportunities for interventions and improvements. TacticAI incorporates both a predictive and a generative component, allowing the coaches to effectively sample and explore alternative player setups for each corner kick routine and to select those with the highest predicted likelihood of success. We validate TacticAI on a number of relevant benchmark tasks: predicting receivers and shot attempts and recommending player position adjustments. The utility of TacticAI is validated by a qualitative study conducted with football domain experts at Liverpool FC. We show that TacticAI’s model suggestions are not only indistinguishable from real tactics, but also favoured over existing tactics 90% of the time, and that TacticAI offers an effective corner kick retrieval system. TacticAI achieves these results despite the limited availability of gold-standard data, achieving data efficiency through geometric deep learning.

The entire dataset was split into training and evaluation sets with a 80 : 20 ratio through random sampling, and the same splits were used for all tasks. Graph neural networks The central model of TacticAI is the graph neural network (GNN) , which computes latent representations on a graph by repeatedly combining them within each nodes neighbourhood. Here we define a nodes neighbourhood, N, as the set of all first-order neighbours of node , that is, N = { | (, ) E}. A single GNN layer then transforms the node features by passing messages between neighbouring nodes , following the notation of related work , and the implementation of the CLRS-30 benchmark baselines : h() = (cid:32) h(1) , (cid:202) N (cid:16) h(1) , h(1)
id: cb42c26a91429f5b34e3de7d827d11e3 - page: 14
, e, g (cid:17) (cid:33) where : are two learnable functions (e.g. multilayer are the features of node after GNN layers, and (cid:201) is any permutation-invariant perceptrons), h() aggregator, such as sum, max, or average. By definition, we set h(0) = x, and iterate Equation 2 for steps, where is a hyperparameter. Then, we let H = G (X, E, g) = H( ) be the final node embeddings coming out of the GNN.
id: 0df83c246d7e820564de671ba05a416c - page: 14
This makes GNNs a perfect framework for benchmarking various approaches to modelling player-player interactions in the context of football. Different choices of , and (cid:201) yield different architectures. In our case, we utilise a message function that factorises into an attentional mechanism, : : h() = (cid:32) h(1) , (cid:202) N (cid:16) h(1) , h(1) , e, g (cid:17) (cid:16) h(1) (cid:17) (cid:33) yielding the graph attention network (GAT) architecture . In our work, specifically, we use a two-layer multilayer perceptron for the attentional mechanism, as proposed by GATv2 : (cid:16) h(1) , h(1) , e, g (cid:17) = softmax N aLeakyReLU (cid:16) W1h(1) + W2h(1)
id: 594eda8348662608ae5de14f3492ac95 - page: 14
+ We + Wg where W1, W2 , W , W and a are the learnable parameters of the attentional mechanism, and LeakyReLU is the leaky rectified linear activation function. This mechanism computes coefficients of interaction (a single scalar value) for each pair of connected nodes (, ), which are then normalised across all neighbours of using the softmax function. (cid:17) (2) (3) (4) 14
id: 13dbdc3a3f00b624d0eb801d65ea74aa - page: 14
How to Retrieve?
# Search

curl -X POST "https://search.dria.co/hnsw/search" \
-H "x-api-key: <YOUR_API_KEY>" \
-H "Content-Type: application/json" \
-d '{"rerank": true, "top_n": 10, "contract_id": "6kK-AG-cHuF0sv0bNgfa4G4zxb_MfWD-C4zbfWUj4HA", "query": "What is alexanDRIA library?"}'
        
# Query

curl -X POST "https://search.dria.co/hnsw/query" \
-H "x-api-key: <YOUR_API_KEY>" \
-H "Content-Type: application/json" \
-d '{"vector": [0.123, 0.5236], "top_n": 10, "contract_id": "6kK-AG-cHuF0sv0bNgfa4G4zxb_MfWD-C4zbfWUj4HA", "level": 2}'