## Soccer Team Vectors

Robert M¨ uller, Stefan Langer, Fabian Ritz, Christoph Roch, Steffen Illium and Claudia Linnhoff-Popien

Mobile and Distributed Systems Group LMU Munich

{ robert.mueller,stefan.langer,fabian.ritz, christoph.roch,steffen.illium,linnhoff @ifi.lmu.de }

Abstract. In this work we present STEVE S occer TE am VE ctors, a principled approach for learning real valued vectors for soccer teams where similar teams are close to each other in the resulting vector space. STEVE only relies on freely available information about the matches teams played in the past. These vectors can serve as input to various machine learning tasks. Evaluating on the task of team market value estimation, STEVE outperforms all its competitors. Moreover, we use STEVE for similarity search and to rank soccer teams.

Keywords: Sports Analytics · Representation Learning · Self-Supervised Learning · Soccer · Football

## 1 Introduction

The field of soccer analytics suffers from poor availability of free and affordable data. While Northern American sports have already been the subject of data analytics for a long time, soccer analytics has only started to gain traction in the recent years.

Feature vectors usually serve as an input to machine learning models. They provide a numeric description of an objects characteristics. However, in the case of soccer analytics these features are hard to obtain. For example, collecting nontrivial features for a soccer player or a team involves buying data from a sports analysis company which employs experts to gather data.

In this work we propose STEVE S occer TE am VE ctors, a method to automatically learn feature vectors of soccer teams. STEVE is designed to only use freely available match results from different soccer leagues and competitions. Thus, we alleviate the problem of poor data availability in soccer analytics. Automatically extracted feature vectors are usually referred to as representations in the literature. These representations can conveniently serve as input to various machine learning tasks like classification, clustering and regression. In the resulting vector space, similar teams are close to each other. We base the notion of similarity between soccer teams on four solid assumptions (Section 3). The most important one is that two teams are similar if they often win against the same opponents. Hence, STEVE can be used to find similar teams by computing the distance between representations and to rank a self chosen list of teams

according to their strengths.

This paper is organized as follows: In Section 2 we review related work. It consists of an in depth discussion of the process of learning real valued vectors for elements in a set and its applications. We also briefly review a recent approach to team ranking. In Section 3 we introduce STEVE , our approach to learn meaningful representations for soccer teams. After giving an overview of the underlying idea, we introduce the problem with more rigor and conclude the section by formulating an algorithm for the task. In Section 4 we conduct various experiments to evaluate the approach. Finally, Section 5 closes out with conclusions and outlines future work.

## 2 Related Work

Learning real valued vectors for elements in a set has been been of particular interest in the field of natural language processing. Elements are usually words or sentences and their representation is computed in such a way, that they entail their meaning. Modern approaches typically learn a distributed representation for words [3] based on the distributional hypothesis [22], which states that words with similar meanings often occur in the same contexts.

Mikolov et al. [16,17] introduced word2vec , a neural language model which uses the skip-gram architecture to train word representations. Given a center word word2vec by iteratively maximizes the probability of observing the surrounding window of context words. The resulting representations can be used to measure semantic similarity between words. According to word2vec the most similar word to soccer is football . Moreover, vector arithmetic can be used to compute analogies. Although having recently been put in question [12,2], a very famous example is the following: king - man + woman = queen . The concept has since then been extended to graph structured data to learn a representation for each node in a graph. Perozzi et al. [21] and Dong et al. [7] treat random walks as the equivalent of sentences. This is based on the assumption that these walks can be interpreted as sampling from a language graph. The resulting sentences are fed to word2vec . Building upon graph based representation learning approaches, LinNet [20] builds a weighted directed match-up network where nodes represent lineups from NBA basketball teams. An edge from node i to node j is inserted if lineup i outperformed lineup j . The edge weight is set to the performance margin of the corresponding match-up. Lineup representations are computed by deploying node2vec [9] on the resulting network. Afterwards, a logistic regression model based on the previously computed lineup representations is learned to model the probability of lineup λ i outperforming lineup λ i .

More recently, the aforementioned findings have also been applied to sports analytics. (batter pitcher)2vec [1] computes representations of Major League Base-| ball players through a supervised learning task that predicts the outcome of an at-bat given the context of a specific batter and pitcher. The resulting representations are used to cluster pitchers who rely on pitches with dramatic movement

and predict future at-bat outcomes. Further, by performing simple arithmetic in the learned vector space they identify opposite-handed doppelgangers.

Le et. al [14] introduce a data-driven ghosting model based on tracking data of a season from a professional soccer league to generate the defensive motion patterns of a league average team. To fine-tune the league average model to account for a team's structural and stylistic elements, each team is associated with a team identity vector.

Our approach aims to learn representations for soccer teams and is thus closely related to the presented approaches. As we use the representations to rank teams, we briefly review related work on the topic.

Neumann et al. [18] propose an alternative to classical ELO and Pi rating based team ranking approaches [11,6]. A graph based on the match results and a generalized version of agony [10] is used to uncover hierarchies. The approach is used to categorize teams into a few discrete levels of playing quality. General match-up modeling is addressed by the blade-chest model [5]. Each player is represented by two d -dimensional vectors, the blade and chest vectors. Team a won if its blade is closer to team b 's chest than vice versa. Intransitivity is explicitly modeled by using both blade and chest vectors, something that cannot be accounted for by approaches that associate a single scalar value with each team [4].

## 3 Soccer Team Vectors

In this section we present STEVE - Soccer Team Vectors . We first give an overview of the underlying idea and the goal of this work. Afterwards we discuss the problem definition and introduce an algorithm to learn useful latent representations for soccer teams.

## 3.1 Overview

STEVE aims to learn meaningful representations for soccer teams where representations come in the form of low dimensional vectors. If two teams are similar, their representations should be close in vector space while dissimilar teams should exhibit a large distance. Furthermore, these learned latent representations can be used as feature vectors for various machine learning tasks like clustering, classification and regression. Due to the fact that there is no clear definition of similarity for soccer teams, we base our approach on the following four assumptions:

- 1. The similarity between two teams can be determined by accounting for the matches they played in the past.
- 2. Frequent draws between two teams indicate that they are of approximately equal strength. Hence, both teams are similar.
- 3. Two teams are similar if they often win against the same opponents.
- 4. More recent matches have a higher influence on the similarity than those a long time ago.

Since data acquisition is expensive and time-consuming, especially in the field of sports analytics, STEVE is designed to learn from minimal information. More precisely, we only use data about which teams played against each other, during which season a match took place and whether the home team won, lost or the match resulted in a draw. Note that the assumptions mentioned above do not require any further information and are therefore well suited for this setting.

## 3.2 Problem Definition

To simplify definitions, let M = { 1 2 , , . . . , m } , we assume that each of the m soccer teams we want to learn a representation for is associated with an identification number i ∈ M . Further, let Φ ∈ R m δ × , where each row Φ i represents team i 's δ dimensional latent representation. The goal of this work is to find Φ in such a way, that dist Φ , Φ ( i j ) is small for similar teams i and j and dist Φ , Φ ( i k ) is large for dissimilar teams i and k . dist ( · , · ) is some distance metric and similarity between teams is determined according to the assumptions made in Section 3.1. To solve this task, data is given in the following form: D = { ( a, b, s, d ) ∈ M × M ×{ 1 , . . . , x max } × { 0 1 , }} . The quadruple ( a, b, s, d ) represents a single match between teams a and b , s is an integer indicating during which of the x max seasons the match took place and d is a flag set to 1 if the match resulted in a draw and 0 otherwise. If d = 0, the quadruple is arranged such that team a won against team b .

## 3.3 Algorithm

According to the first assumption, we can loop over the dataset D while adjusting Φ . If d = 1, we minimize the distance between Φ a and Φ b , thereby accounting for the second assumption. The third assumption addresses a higher order relationship, where teams that often win against the same teams should be similar. We introduce a second matrix Ψ ∈ R m δ × and call each row Ψ i team i 's loser representation. Further, we call Φ i the winner representation of team i . Both matrices Φ and Ψ are initialized according to a normal distribution with zero mean and unit variance. When team a wins against team b we minimize the distance between Φ a and Ψ b , bringing b 's loser representation and a 's winner representation closer together. That is, the loser representations of all teams a often wins against, will be in close proximity to team a 's winner representation. Consequently, if other teams also often win against these teams, their winner representations must be close in order to minimize the distance to the loser representations. Parameters Φ and Ψ are estimated using stochastic gradient descent where the objective we aim to minimize is given as follows:

$$\underset { \Phi, \Psi } { \arg \min } \sum _ { ( a, b, s, d ) \in \mathcal { D } } d * d i s t ( \Phi _ { a }, \Phi _ { b } ) + ( 1 - d ) * d i s t ( \Phi _ { a }, \Psi _ { b } )$$

We minimize the distance between Φ a and Φ b directly when both teams draw ( d = 1). Otherwise ( d = 0) we minimize the distance between Φ a (winner representation) and Ψ b (loser representation). With the squared euclidean distance

as the distance metric, the expression can be rewritten as illustrated below.

$$\underset { \Phi, \Psi } { \arg \min } \sum _ { ( a, b, s, d ) \in \mathcal { D } } d * \| \Phi _ { a } - \Phi _ { b } \| ^ { 2 } + ( 1 - d ) * \| \Phi _ { a } - \Psi _ { b } \| ^ { 2 }$$

In its current form, matches played in long past seasons contribute as much to the loss as more recent matches. We alleviate this problem by down-weighting matches from older seasons using the linear weighting scheme s x xmax , thereby completing the formulation of the objective:

$$\underset { \Phi, \Psi } { \arg \min } \sum _ { ( a, b, s, d ) \in \mathcal { D } } \frac { s } { x _ { m a x } } \left [ d * \| \Phi _ { a } - \Phi _ { b } \| ^ { 2 } + ( 1 - d ) * \| \Phi _ { a } - \Psi _ { b } \| ^ { 2 } \right ]$$

This approach has the advantage of no complex statistics having to be gathered. All our assumptions are captured in the teams's representations. We describe the algorithm in more detail in Algorithm 1. Note that here gradients are computed after observing a single data point and the regularization term is omitted. This is done for illustration purposes only. In our implementation, we train the algorithm in a batch-wise fashion. For In lines 9, 12 and 15 the representations are normalized as we have found this to speed up training. It also helps to keep distances within a meaningful range.

| Algorithm 1 STEVE( D , m, δ , α , x max ,e)   | Algorithm 1 STEVE( D , m, δ , α , x max ,e)       | Algorithm 1 STEVE( D , m, δ , α , x max ,e)                         |
|-----------------------------------------------|---------------------------------------------------|---------------------------------------------------------------------|
| 1: Φ ∼ N (0 , 1) m × δ                        | 1: Φ ∼ N (0 , 1) m × δ                            | glyph[triangleright] Initialize Φ                                   |
| 2: Ψ ∼ N (0 , 1) m × δ                        | 2: Ψ ∼ N (0 , 1) m × δ                            | glyph[triangleright] Initialize Ψ                                   |
| 3: for i in { 1 , . . . , e } do              | 3: for i in { 1 , . . . , e } do                  | 3: for i in { 1 , . . . , e } do                                    |
| 4:                                            | D = shuffle( D )                                  | glyph[triangleright] Shuffle dataset                                |
| 5:                                            | for each ( a, b, s, d ) in D do                   | for each ( a, b, s, d ) in D do                                     |
| 6:                                            | L ( Φ, Ψ ) = s x xmax [ d ∗ ‖ Φ a - Φ b ‖ 2 +(1 - | d ) ∗ ‖ Φ a - Ψ b ‖ 2 ] glyph[triangleright] Compute loss           |
| 7:                                            | if d = 0 then                                     | glyph[triangleright] a won the match                                |
| 8:                                            | Ψ b = Ψ b - α ∗ ∂L ∂Ψ b                           | glyph[triangleright] Gradient descent on b 's loser representation  |
| 9:                                            | Ψ b = Ψ b / ‖ Ψ b ‖ 2                             | glyph[triangleright] Normalize b 's loser representation            |
| 10:                                           | else                                              | glyph[triangleright] Match is a draw                                |
| 11:                                           | Φ b = Φ a - α ∗ ∂L ∂Φ b                           | glyph[triangleright] Gradient descent on b 's winner representation |
| 12:                                           | Φ b = Φ b / ‖ Φ b ‖ 2                             | glyph[triangleright] Normalize b 's winner representation           |
| 13:                                           | end if                                            | end if                                                              |
| 14:                                           | Φ a = Φ a - α ∗ ∂L ∂Φ a                           | glyph[triangleright] Gradient descent on a 's winner representation |
| 15:                                           | Φ a = Φ a / ‖ Φ a ‖ 2                             | glyph[triangleright] Normalize a 's winner representation           |
| 16:                                           | end for                                           |                                                                     |
| 17: end for                                   | 17: end for                                       | 17: end for                                                         |
| 18: return Φ , Ψ                              | 18: return Φ , Ψ                                  | 18: return Φ , Ψ                                                    |

## 4 Experiments

In this section, we provide an overview of the dataset. We also conduct various experiments to investigate the expressiveness and efficacy of our approach.

## 4.1 Dataset and Experimental Setup

The dataset consists of all the matches from the Bundesliga (Germany), Premier League (Great Britain), Serie A (Italy), La Liga (Spain), Eredivisie (Netherlands), League 1 (France), Sper Lig (Turkey), Pro League (Belgium), Liga NOS (Portugal), Europa League and the Champions League played from 2010 until 2019. A total of 29529 matches between 378 different teams was carried out where approximately 25% ended in a draw. Unless stated otherwise, for all experiments we set δ = 16 and batch size = 128. We use Adam [13] with a learning rate α = 0 0001 for parameter estimation and train for . e = 40 epochs. Additionally, we add a small L 2 weight penalty of 10 -6 .

## 4.2 Similarity Search

We select five European top teams and run STEVE on all the matches from season 2010 until 2019 in the corresponding league. Since we are dealing with small datasets, we set δ = 10 and batch size = 32. For each team, we note the five most similar teams (smallest distance) in Table 1. Note that we use the distance between the corresponding winner representations. As expected, we clearly observe that top teams are similar to other top teams. For example, the team most similar to Barcelona is Real Madrid. Both teams often compete for supremacy in La Liga . In general, we observe that similarities in Table 1 roughly reflect the average placement in the respective league.

Table 1. Five most similar teams for five European top teams.

| Top soccer team per league chosen for similarity search   | Top soccer team per league chosen for similarity search   | Top soccer team per league chosen for similarity search   | Top soccer team per league chosen for similarity search   | Top soccer team per league chosen for similarity search   |
|-----------------------------------------------------------|-----------------------------------------------------------|-----------------------------------------------------------|-----------------------------------------------------------|-----------------------------------------------------------|
| Bayern M¨nchen u                                          | Barcelona                                                 | Paris SG                                                  | Manchester U.                                             | Juve. Turin                                               |
| Five most similar teams chosen by STEVE                   | Five most similar teams chosen by STEVE                   | Five most similar teams chosen by STEVE                   | Five most similar teams chosen by STEVE                   | Five most similar teams chosen by STEVE                   |
| RB Leipzig                                                | Real Madrid                                               | Lyon                                                      | Liverpool                                                 | SSC Napoli                                                |
| Dortmund                                                  | Valencia                                                  | Marseille                                                 | Manchester C.                                             | AS Roma                                                   |
| M¨nchengladbach o                                         | Atletico Madrid                                           | Monaco                                                    | Chelsea                                                   | AC Milan                                                  |
| Leverkusen                                                | Sevilla                                                   | St Etienne                                                | Tottenham                                                 | Inter. Milano                                             |
| Hoffenheim                                                | Villarreal                                                | Lille                                                     | Arsenal                                                   | SS Lazio                                                  |

## 4.3 Ranking Soccer Teams

To retrieve a ranked list of soccer teams, one could simply use a league table. However, the list will only reflect the team's constitution accumulated over a single season. The ranking will not take past successes into account. One might alleviate this problem by averaging the league table over multiple seasons. Nevertheless, another problem arises: the list will only consist of teams from a single league. Combining league tables from different countries and competitions to obtain a more diverse ranking is considerably less straightforward. It gets even more complicated when we wish to rank a list of self chosen teams, possibly from many different countries. STEVE provides a simple yet effective way to generate rankings for the use case mentioned above. Given a list of teams, we simulate a tournament where each team plays against all other teams. The list is then sorted according to the number of victories. To compute the outcome of a single match (victory or defeat) between team a and b , let α = ‖ Φ a -Ψ b ‖ 2 and β = ‖ Φ b -Ψ a ‖ 2 . If α &lt; β , then team b 's loser representation is closer to team a 's winner representation than team a 's loser representation is to team b 's winner representation. Thus, team a is stronger than team b and we increase team a 's victory counter. The same line of reasoning is applied to the case where α &gt; β . In Figure 1 we generated two rankings using the aforementioned approach. Each list consists of twelve teams from different European countries of different strengths. Our approach produces reasonable rankings: Highly successful international top teams like Real Madrid, FC Bayern Munich, FC Barcelona , and AS Roma are placed at the top of the list while mediocre teams like Espanyol Barcelona and Werder Bremen are placed further back in the list. The least successful teams like FC Toulouse, Cardiff City, Fortuna D¨sseldorf u and Parma Calcio occupy the tail of the list. STEVE can be seen as an alternative to previous soccer team ranking methods [11,15] based on the ELO rating [8].

Fig. 1. Team rankings generated by STEVE . Each row 1,2 depicts one ranked list from the strongest (left) to the weakest team (right). Numbers represent a team's relative strength - the number hypothetical matches won.

1 Real Madrid, FC Bayern Munich, Inter Milano, Liverpool FC, Borussia Dortmund, Ajax Amsterdam, FC Porto, Club Brugge KV, Werder Bremen, 1.FC Nuremberg, FC Toulouse, Cardiff City

2 FC Barcelona, AS Roma, Atltico Madrid, Paris SG, Tottenham, PSV Eindhoven, Arsenal London, SL Benfica, Espanyol Barcelona, VFB Stuttgart, Fortuna Dusseldorf, Parma Calcio

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00698v2-figure-b363acbe-78ea-4ff5-8161-eca82324fa69.jpg)

## 4.4 Team Market Value Estimation

The goal of this work is to learn representations that are well suited for various downstream machine learning tasks. We validate this property by evaluating STEVE with respect to regression and classification performance. We argue that a meaningful representation should carry enough information to reliably predict a team's market value. Therefore, both tasks involve predicting the value of a team given its representation. We obtained current market values for all teams in the dataset from season 2018/2019. A team's market value is determined by the sum of the market values of all its players. On average, a team is worth e 183.7 million with a standard deviation of e 241.2M. The least valuable team is BV De Graafschap ( e 10.15M) and the most valuable team is FC Barcelona ( e 1180M). The first, second and third quartiles are e 25M, e 93.7M and e 232.5M, respectively. For regression and classification, we use the following team representations as an input to a multi layer perceptron (MLP) with two hidden layers. The first hidden layer has a size of 50, the second one 20. Apart from changing hidden layer sizes, we use default parameters provided by [19] for all further analyses.

- - STEVE Representations are computed using STEVE with δ ∈ { 8 16 32 , , } . A team's winner and loser representation is concatenated to form its team vector. The resulting feature vectors are of size 16, 32, 64.
- - Season-stats We extract count based features for each team in the dataset to mimic traditional feature extraction. For season 2018/2019 we collect the following statistics: number of victories, draws, defeats as well as goals scored and goals conceded. Each feature is computed for matches in the Champions League, Euro League and the respective national league. Additionally, we use goals per match, goals per national and international match. This results in a 18 dimensional feature vector (representation) for each team.
- - Season-stats (CAT-x) Season-stats for the last x seasons are concatenated. The resulting feature vectors are of size x ∗ 18.
- - Season-stats (SUM-x) Season-stats for the last x seasons are summed together. The resulting feature vectors are of size 18.

Comparability between the different representations mentioned above is ensured due to the fact that none of them requires information absent in the dataset. Season-Stats has many features that are intuitively well suited for team value estimation. For example, a large proportion of teams that participate in international competitions are more valuable than those who don't. Statistics about goals and match results are helpful for assessing a team's strength which is in turn correlated to the team's market value.

Regression Team value estimation naturally lends itself to be cast as a regression problem. During training we standardize team values (targets) and SeasonStats features by subtracting the mean and dividing by the standard deviation. Evaluation is carried out using 5-fold cross-validation and results are reported in Table 2.

Classification By grouping team values into bins, we frame the task as classification problem. Teams are assigned classes according to the quartile their value lies in. Consequently, each team is associated with one of four classes. We apply the same standardization procedure as in the case of regression and use 5-fold cross-validation. Results are reported in Table 3.

Table 2. Results for the regression task of team value estimation. To quantify the quality of prediction, we use root mean squared error (RMSE), mean absolute error (MAE) and the mean median absolute error (MMAE), all reported in million e .

|                      | RMSE            | MAE            | MMAE          |
|----------------------|-----------------|----------------|---------------|
| STEVE-16             | 142.12 ± 75.22  | 88.37 ± 25.69  | 52.01 ± 13.42 |
| STEVE-32             | 131.51 ± 40.15  | 83.20 ± 24.51  | 46.87 ± 21.89 |
| STEVE-64             | 111.27 ± 48.58  | 67.14 ± 30.51  | 32.80 ± 10.42 |
| Season-Stats         | 173.75 ± 119.35 | 110.32 ± 63.61 | 69.96 ± 15.43 |
| Season-Stats (CAT-3) | 200.77 ± 157.55 | 138.15 ± 87.06 | 86.98 ± 39.83 |
| Season-Stats (CAT-5) | 172.05 ± 70.83  | 119.81 ± 43.18 | 80.74 ± 18.96 |
| Season-Stats (CAT-9) | 151.09 ± 80.37  | 105.98 ± 41.96 | 68.82 ± 23.15 |
| Season-Stats (SUM-3) | 158.44 ± 108.50 | 105.65 ± 53.95 | 69.16 ± 11.39 |
| Season-Stats (SUM-5) | 154.71 ± 115.76 | 104.04 ± 59.34 | 69.81 ± 15.69 |
| Season-Stats (SUM-9) | 158.33 ± 120.90 | 106.67 ± 62.61 | 67.74 ± 17.75 |

Table 3. Results for the classification task of team value estimation, measured with micro F 1 score and macro F 1 score.

|                      | Micro F 1   | Macro F 1   |
|----------------------|-------------|-------------|
| STEVE-16             | 0.67 ± 0.10 | 0.64 ± 0.10 |
| STEVE-32             | 0.74 ± 0.11 | 0.71 ± 0.14 |
| STEVE-64             | 0.74 ± 0.10 | 0.72 ± 0.09 |
| Season-Stats         | 0.52 ± 0.14 | 0.45 ± 0.19 |
| Season-Stats (CAT-3) | 0.50 ± 0.12 | 0.44 ± 0.15 |
| Season-Stats (CAT-5) | 0.55 ± 0.14 | 0.51 ± 0.16 |
| Season-Stats (CAT-9) | 0.60 ± 0.13 | 0.56 ± 0.11 |
| Season-Stats (SUM-3) | 0.49 ± 0.09 | 0.40 ± 0.10 |
| Season-Stats (SUM-5) | 0.48 ± 0.08 | 0.39 ± 0.07 |
| Season-Stats (SUM-9) | 0.47 ± 0.09 | 0.37 ± 0.15 |

Results STEVE clearly outperforms the other representations both in terms of regression and classification performance. While δ = 64 generally yields the best results, even δ = 16 produces superior results compared to Season-Stats . In terms of regression performance, we observe that Season-Stats is most competitive when using information from multiple seasons (CAT-x and SUM-x). All forms of representation manage to estimate the general tendency of a team's market value but STEVE's predictions are far more precise. Similar conclusions can be drawn when inspecting classification performance. The best competing representation is Season-Stats (CAT-9) which is 162 dimensional, 92 dimensions more than STEVE ( δ = 64 . Still, ) STEVE ( δ = 64 ) provides ≈ 20% better performance than Season-Stats (CAT-9) . It can therefore be concluded that STEVE is able to compress information needed for the task and succeeds to provide high efficacy representations.

## 5 Conclusion

In this work we introduced STEVE , a simple yet effective way to compute meaningful representations for soccer teams. We provided qualitative analysis using soccer team vectors for team ranking and similarity search. Quantitative analysis was carried out by investigating the usefulness of the approach by estimating the market values of soccer teams. In both cases, STEVE succeeds to provide meaningful and effective representations. Future work might investigate further upon different weighting schemes for the season during which a match took place. For example instead one can use the exponential distribution to weigh down past seasons. Moreover, including the number of goals scored during a match and accounting for the home advantage might help to capture more subtleties.

## References

- 1. Alcorn, M.A.: (batter | pitcher)2vec: statistic-free talent modeling with neural player embeddings. MIT Sloan Sports Analytics Conference (2016)
- 2. Allen, C., Hospedales, T.M.: Analogies explained: Towards understanding word embeddings. In: Proceedings of the 36th International Conference on Machine Learning, ICML 2019, 9-15 June 2019, Long Beach, California, USA. pp. 223-231 (2019)
- 3. Bengio, Y., Ducharme, R., Vincent, P., Jauvin, C.: A neural probabilistic language model. Journal of machine learning research 3 (Feb), 1137-1155 (2003)
- 4. Bradley, R.A., Terry, M.E.: Rank analysis of incomplete block designs: I. the method of paired comparisons. Biometrika 39 (3/4), 324-345 (1952)
- 5. Chen, S., Joachims, T.: Predicting matchups and preferences in context. In: Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. pp. 775-784. ACM (2016)
- 6. Constantinou, A., Fenton, N.: Determining the level of ability of football teams by dynamic ratings based on the relative discrepancies in scores between adversaries. Journal of Quantitative Analysis in Sports 9 , 37-50 (01 2013)

- 7. Dong, Y., Chawla, N.V., Swami, A.: Metapath2vec: Scalable representation learning for heterogeneous networks. In: Proceedings of the 23rd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. pp. 135-144. KDD '17, ACM, New York, NY, USA (2017)
- 8. Elo, A.E.: The rating of chessplayers, past and present. Arco Pub., New York (1978)
- 9. Grover, A., Leskovec, J.: Node2vec: Scalable feature learning for networks. In: Proceedings of the 22Nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. pp. 855-864. KDD '16, ACM, New York, NY, USA (2016)
- 10. Gupte, M., Shankar, P., Li, J., Muthukrishnan, S., Iftode, L.: Finding hierarchy in directed online social networks. In: Proceedings of the 20th International Conference on World Wide Web. pp. 557-566. WWW '11, ACM, New York, NY, USA (2011)
- 11. Hvattum, L.M., Arntzen, H.: Using elo ratings for match result prediction in association football. International Journal of Forecasting 26 , 460-470 (07 2010)
- 12. Kalidindi, K.V.: Deconstructing word embeddings. CoRR abs/1902.00551 (2019)
- 13. Kingma, D.P., Ba, J.: Adam: A method for stochastic optimization. In: 3rd International Conference on Learning Representations, ICLR 2015, San Diego, CA, USA, May 7-9, 2015, Conference Track Proceedings (2015)
- 14. Le, H.M., Peter, C., Yue, Y.: Data-Driven Ghosting using Deep Imitation Learning. MIT Sloan Sports Analytics Conference pp. 1-15 (2017)
- 15. Leitner, C., Zeileis, A., Hornik, K.: Forecasting sports tournaments by ratings of (prob)abilities: A comparison for the euro 2008. International Journal of Forecasting 26 , 471-481 (07 2010)
- 16. Mikolov, T., Chen, K., Corrado, G., Dean, J.: Efficient estimation of word representations in vector space. In: 1st International Conference on Learning Representations, ICLR 2013, Scottsdale, Arizona, USA, May 2-4, 2013, Workshop Track Proceedings (2013)
- 17. Mikolov, T., Sutskever, I., Chen, K., Corrado, G.S., Dean, J.: Distributed representations of words and phrases and their compositionality. In: Burges, C.J.C., Bottou, L., Welling, M., Ghahramani, Z., Weinberger, K.Q. (eds.) Advances in Neural Information Processing Systems 26, pp. 3111-3119. Curran Associates, Inc. (2013)
- 18. Neumann, S., Ritter, J., Budhathoki, K.: Ranking the teams in european football leagues with agony. In: International Workshop on Machine Learning and Data Mining for Sports Analytics. pp. 55-66. Springer (2018)
- 19. Pedregosa, F., Varoquaux, G., Gramfort, A., Michel, V., Thirion, B., Grisel, O., Blondel, M., Prettenhofer, P., Weiss, R., Dubourg, V., Vanderplas, J., Passos, A., Cournapeau, D., Brucher, M., Perrot, M., Duchesnay, E.: Scikit-learn: Machine learning in Python. Journal of Machine Learning Research 12 , 2825-2830 (2011)
- 20. Pelechrinis, K.: Linnet: Probabilistic lineup evaluation through network embedding. In: Joint European Conference on Machine Learning and Knowledge Discovery in Databases. pp. 20-36. Springer (2018)
- 21. Perozzi, B., Al-Rfou, R., Skiena, S.: Deepwalk: Online learning of social representations. In: Proceedings of the 20th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. pp. 701-710. KDD '14, ACM, New York, NY, USA (2014)
- 22. S. Harris, Z.: Distributional structure. Word 10 , 146-162 (08 1954)
Robert Müller Stefan Langer Fabian Ritz Christoph Roch Steffen Illium Claudia Linnhoff-Popien
Soccer Team Vectors
In this work we present STEVE - Soccer TEam VEctors, a principled approach
for learning real valued vectors for soccer teams where similar teams are close
to each other in the resulting vector space. STEVE only relies on freely
available information about the matches teams played in the past. These vectors
can serve as input to various machine learning tasks. Evaluating on the task of
team market value estimation, STEVE outperforms all its competitors. Moreover,
we use STEVE for similarity search and to rank soccer teams.