Skip to content

Latest commit

 

History

History
57 lines (48 loc) · 2.81 KB

readme.md

File metadata and controls

57 lines (48 loc) · 2.81 KB

Football predictions project

In this project I created an GRU architecture to predict the outcome(Win, Draw, Lose) of the Premier League game. I recommend checking out my medium article about the topic.

1) Data Preparation:

The final dataset contains the combined features listed below from Premier League season 19/20 and 20/21. The format of sequential data is [sample, time step, sequence]. Each sample contains the features of the home team, away team, and odds from last 5 games. To make the form more visible I created the rating column for each team with the initial value taken from Premier League Fantasy dataset. The rating is updated with each game, based on the ELO rating formula.

Rn = Ro + K(W-We)
We = 1/(10**(-dr/400)+1)
Where,
- Rn -> new rating
- Ro -> old rating
- K -> constant weight according to the relevance of the game in my case I used 50, if dr is 1(K = 1.5K), if dr = 2(K = 1.75K), if dr > 3 dr = (1.75K + (dr-    3)/8)
- dr -> goals difference  
- W -> game result( Win = 1, Draw = 0.5, Loss = 0) 
- We -> calculated expected result

2) Extracted Features:

  • Attacking style(AS)  -  taken from FIFA21 dataset
  • Defensive style(DS)  -  taken from FIFA21 dataset
  • Rating home (SOH) - initial ratings is from Premier League Fantasy dataset updated with each game using ELO rating equation
  • Rating away (SOA)  -  same as above but for away games
  • xG - quality of goalscoring chances (attack form)
  • xGa - ability to prevent scoring chances (defense form)
  • Ppda - passes allowed per defensive action
  • Mtime  -  managers time calculated from the day he started to the date of the game
  • Odds - bets on outcome of the game home win, draw, away win

3) Model Architecture:

Hyperparameter Value
Batch 16
Optimizer Adam
Learning rate 0.0001
Dropout rate 0.2
Epochs 70

Architecture

4) Results:

  • Accuracy on testing dataset : 92% Results

5) Improvements:

  • Live line-ups 
  • Live form of the players
  • Game schedule - add Champions League and other Tournaments
  • Weather conditions
  • Referee
  • Relationship between teams
  • Sentiment score

6) Datasets links: