A study on Machine Learning Approaches for Player Performance and Match Results Prediction

08/23/2021 ∙ by Harsh Mittal, et al. ∙ National Institute Of Technology Tiruchirappalli 0

Cricket is unarguably one of the most popular sports in the world. Predicting the outcome of a cricket match has become a fundamental problem as we are advancing in the field of machine learning. Multiple researchers have tried to predict the outcome of a cricket match or a tournament, or to predict the performance of players during a match, or to predict the players who should be selected as per their current performance, form, morale, etc. using machine learning and artificial intelligence techniques keeping in mind extensive detailing, features, and parameters. We discuss some of these techniques along with a brief comparison among these techniques.

READ FULL TEXT VIEW PDF
POST COMMENT

Comments

There are no comments yet.

Authors

page 1

page 2

page 3

page 4

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

A game of cricket requires two teams, each with 11 players playing consisting of batsmen, bowlers, and all-rounders. A batsman’s main aim is to score as many runs as possible and a bowler’s main aim is to restrict the other team at as least runs as possible by taking more and more wickets. The team which scores more runs at the end of the match is the winner.

There are many factors which affects the performance of a team and ultimately plays a vital role in deciding whether which team has an upper hand over the other team. These factors include batting first/chasing, time of the match, importance of the match, opposition team, match ground, batting position, current team’s morale, performance statistics, to name a few. Except for the selection of the players for the team, the rest of the factors are generally considered as uncontrollable. So, it is the responsibility of the team’s management, team’s captain, and coach to select the best possible playing XI by considering each player’s current form, performance statistics, fitness, etc.

With the advancement of machine learning techniques and other data analytical tools, researchers have previously tried to predict the outcome of a particular match or even a whole tournament. An “almost accurate” prediction would be mostly usable for the cricket playing teams, their management and board of control; to determine a visionary approach to build a team that will be most suitable for their side during world cup and will have most chances of winning.

2 Techniques

Machine learning is widely used across the applications domains including detection, regression, classification, identification, optimization etc. [19, 20, 17, 18, 15, 16, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]. In this section, a brief discussion on various machine learning approaches is given.

2.1 k-Nearest Neighbour

KNN is a supervised machine learning algorithm used for classification problems. It works on the fact that if most of the ‘k’ nearest neighbors of a sample lies in a particular class, then we can assume that the sample also lies in that class [1].

Madan Gopal Jhawar and Vikram Pudi [2] presented a paper for predicting the outcome of ODI cricket matches using KNN approach. They predicted the performance of each player of both the teams by dividing the players of each team in two groups (batsmen and bowlers), then they used two different algorithms to predict the overall batting and bowling performance and using that result they predict the overall performance of the two teams and used that result to predict the outcome of the match. For batsman’s performance prediction, they used features like matches played, batting innings, and batting average etc. based on these features they calculated the career score and ratio of the number of matches played to the number of matches in which the batsman did batting, this ratio is used to calculate the weight of the performance of that player. After calculating the performance of each batsman, they add them all up to get the batting score of the complete team. The same procedure was followed for bowling to predict the bowler score, then they combined this bowling score with the ratio of the number of matches played to the number of matches in the player bowled to predict the overall performance of a bowler. After getting these batting and bowling performances of two teams they predict the winner.

A. A. Aburas, M Mehtab and Y Mehtab [3] presented a paper to predict the Cricket World Cup using KNN Intelligent Big Data Approach. They fetched the data from ESPN Cricinfo111http://www.espncricinfo.com/ and Kaggle222https://www.kaggle.com/

. After fetching, data was processed by removing the no-entry fields, and non-numeric fields. In data processing, they also used ICC website and expert cricket knowledge to classify the players as either good, bad or elite. They used this data to train their model. After training, they predicted the class of every player in a team. Using the predicted class, they assigned points to each member. Each elite player was given two points and one point was given to each good player. After this assignment, they calculated the sum of all the players for a particular team and associated that sum to the corresponding team. Now the team with the highest score was considered as the strongest and is taken as the predicted winner of the world cup.

2.2 Logistic Regression

In logistic regression, the bulk of data is fed to the model. Data has many inputs, where each input tells the value of some features and the class which this input belongs to. Based on the data fed model learns how the values of features are related to the class. Logistic regression model returns a continuous function range of which is [0, 1]. This value is then used to predict the class to which the corresponding input values belong to.

Parag Shah and Mitesh Shah [4]

predicted the outcome of a particular cricket match by considering factors like home field advantage, game plan, match time, whether the match is day-night or day only, etc. Some other factors like average score at the venue, ICC points of the teams, etc. were also considered. They went on to find the probability of winning of a team by assigning weightage to these factors. They used the technique of logistic regression to model the outcome of the match.

2.3 Neural Networks

A neural network can be used for classification and pattern recognition problem, all it needs is a large set of data on which it can be trained. The neural “network” contains various layers. Every layer consists of various nodes, these nodes are called neurons. Each neuron multiplies the inputs to weights and then adds all the values and pass it to an activation function, the output of which is transferred to the neurons of the next layer. The following layer does the same task with its parameters. This procedure is known as forward propagation. Once we get all the predicted values for all the training data, we compare those values with the actual output and calculate the loss. The main objective of a neural network is to minimize this loss value. This objective is achieved in back propagation.

S. R. Iyer and R. Sharda [5]

tried to predict the performances of the athletes using Neural Networks. They devised an approach to help teams select the best players for the country. They assigned subjective ratings based on heuristic rules to batsmen and bowlers. They called these ratings as “primary ratings”. Their study showed that neural networks can be used to make a machine learn to classify a bowler or batsman based on his past performances. Muthuswamy and Lam 

[6] studied the performance of main Indian bowlers against the seven nations against which the team plays most matches in a calendar year. They used back propagation network and radial basis network function. They mainly predicted that how many wickets a bowler is likely to take and how many runs a bowler is likely to concede in a given ODI match.

Barath Narayanan [7] presented a model using an ensemble classification approach and a model using a neural network. He only focused on the historical data of 10 teams that have qualified for World Cup 2019. The article included the 65 features which were used by the model. Some of these features were based on the team while some were based on individual’s performance. The classification model used 10 classes, each showing the winning status of one of the teams. In the Neural Network approach, the model used 12 hidden layers. He then trained this model using the data till the 2011 World Cup and then tested it on the data available for the 2015 World Cup. The model predicted that Australia would win by 25.1% which is highest among all other probabilities, and we know that Australia won the World Cup 2015.

2.4 Support Vector Machines

Support Vector Machines, commonly abbreviated as SVM, is a supervised machine learning approach that can be used for both classification and regression purposes. However, they are generally used more for classification problems. In SVM, our main focus is to find a hyperplane that best divides a dataset into two classes. Now to find the best hyperplane, we find the distance between the hyperplane and the nearest data point from either set which is called margin. We choose the hyperplane with the greatest possible margin between the hyperplane and any point within our training set. If we are not able to find a clear segregation, we map our data into higher dimension, say 3D from 2D. Now, instead of a line we will get a plane that divides the data into classes. Similarly, we will keep on mapping data into higher dimensions until we find a hyperplane to segregate it 

[8].

2.5 Naïve Bayes

Naïve Bayes is also used to construct classification and prediction models. Naïve Bayes uses the concept of Bayes’ theorem. It makes a few assumptions about the data. First assumption is that all the features are independent of each other. The second assumption is that all the features have equal importance. Independent features imply that no feature will affect any other feature. There are cases when features are not generally independent, and some features have more value than other features. In those cases, Naïve Bayes should not be used. Naïve Bayes predicts quite well when the two conditions of the assumptions are met, and it is faster and easier than other algorithms.

Neeraj Pathak and Hardik Wadhwa [9]

predicted the outcome of a particular ODI match using three machine learning techniques namely Naïve Bayesian, Support Vector Machines and Random Forest. They took historical data for the ODI matches between 2001 and 2015 for each time with definite result and successful completion, i.e., matches which were tied or washed away because of rain were ignored. They used Kappa statistic which is used as a performance measure - higher value signifies better performance. They achieved the highest accuracy through SVM. However, the rest of the classifiers were not far enough and achieved a slight less accuracy. Also, these classifiers only performed well when there was no class imbalance. In case of class imbalance, these classifiers failed miserably.

2.6 Random Forest

Random Forest is another supervised classification algorithm. It is based on decision tree, which is the basic building block of random forest 

[10].

Sushant Murdeshwar [11] predicted the outcome of an Indian Premier League (IPL) match by considering the teams’ past performance at a high-level extent instead of considering each player’s individual performance. He basically divided the project into five phases where each phase was considered as a project milestone. The five phases were Data Set Generation, Data Cleaning, Attribute Selection, Data Mining and Analysis of Results. He used attribute selection algorithms like Wrapper method and Ranker method to cut down the number of attributes. Kalpdrum Passi and Niravkumar Pandey [12] in their paper tried to predict how many runs a batsman will score and how many wickets a bowler will take in a particular match using four different machine learning techniques. They calculated the attributes for each player and assigned weight to them according to its relative importance over other measures using a tool called Analytic Hierarchy Process (AHP). They then calculated the derived attributes using these attributes. These derived attributes consist of attributes such as consistency, form, venue points, etc. After the cleaning of data, it was fed into the four algorithms and the result was analysed. For both datasets namely batsmen and bowlers, Random Forest turned out to be the most accurate classifier.

Sonu Kumar and Sneha Roy [13]

tried to predict the innings total of a team after 5 overs of the innings in a One-Day International match. They used Linear Regression and MLP Regressor for prediction model and k-Nearest Neighbours, Support Vector Machines, Naïve Bayes and MLP Classifier for classification. They argued that the run prediction system used currently by ICC which is based on current rate is flawed and does not predict the total runs accurately. However due to the lack of data at disposal, the machine could not be trained as much as they expected. Tejinder Singh, Vishal Singla, Parteek Bhatia 

[14] presented a paper in which they predicted the score and winning team in cricket using Data Mining. They used a dataset that consists of cricket matches played (excluding rain-interrupted matches) between 2002 and 2014 among 8 teams.

For the team batting in the first innings, they considered all the matches in which that particular team had played first. Furthermore, each match statistics is divided into the 5-over period. From these matches, they considered the features like fall of wickets, run scored, run rate and etc. at each period to predict the runs scored by the first team. For the second team that played in the second innings, they chose only those matches in which that team had played in the second innings and each match was divided into the 5-over period. They also considered the target to be chased and the winning status of the chasing team in terms of ‘Yes’ or ‘No’.

For the first innings, linear regression has been implemented on the training dataset, with ten-fold cross validation which helps in predicting the score of a team at a particular venue at different situations. For the second innings, Naïve Bayes classifier has been implemented with the same ten-fold cross-validation which gives the probability of winning of the second team at a particular venue at different situations of the match. This probability is used to predict the match outcome.

2.7 Comparative Analysis

The following table shows the comparative analysis between different techniques used for the prediction purposes along with the performance metrics devised.

Table 1: A detailed comparison fraud detection approaches
Reference Technique used Data source Pre-processing Performance metric Result
[2] KNN cricinfo.com Match result accuracy 71% accurate
[3] KNN Cricinfo.com, Kaggle.com Class prediction of Players India and England are top contenders for World Cup, 2019
[4] Logistic Regression cricinfo.com Accuracy 74.9% accurate in predicting the match result
[5] Neural Networks cricinfo.com Players recommendation accuracy 70% of the players that were recommended were selected for the team
[6] Backpropagation network and Radial Basis Function Network (RBFN) cricinfo.com Accuracy of runs scored and wickets taken RBFN performed better with 91.43% of accuracy
[7] Neural Network and Ensemble Classification cricinfo.com Predicted probability of world cup winner Neural network gave better results for 2015 World Cup
[9] Naïve Bayes, Random Forest and SVM cricinfo.com Kappa Statistic (Higher Kappa means higher classifier accuracy) SVM performed better than other classifiers
[11] Random Forest, Naïve Bayes, Decision Trees and KNN cricsheet.org Match result accuracy using Percentage Split and K-Fold Cross Validation K-Fold Cross Validation performed better with 60-70% accuracy
[12] Naïve Bayes, Decision Trees, Random Forest, SVM cricinfo.com Accuracy in predicting runs scored and wicket taken Random Forest performed better with 90% test data
[13] KNN, SVM, Naïve Bayes and MLP Classifier cricinfo.com cricbuzz.com wikipedia.com Prediction of innings total MLP Classifier performed better
[14] Linear Regression, Naïve Bayes cricinfo.com Run rate and Winning percentage prediction For winning prediction, performance of Naïve Bayes improved with increase in overs

3 Conclusions

Even after in-depth study of features and keeping in mind all the conditions and factors for a particular match, we cannot say anything about the result of a match for sure as we do not have much data yet for the machine to be trained (as only a few thousand matches are played in total yet). Some nations are relatively newer to start playing international level cricket so there is very less data available for them. But we will try to maximize the accuracy of our prediction using suitable approaches even with limited amount of data.

Also, a single algorithm can produce different result for different features and different datasets. Each algorithm has its own merits and demerits. We saw that neural network has the highest accuracy rate in most of the cases, but it needs a huge dataset to train the neural network model, so it is considered as an expensive technique. Selection of features and dataset directly affects the performance of the model.

References

  • [1] B. B. Cui, “Design and Implementation of Movie Recommendation System Based on Knn Collaborative Filtering Algorithm,” ITM Web of Conferences. 12. 04008. 10.1051/itmconf/20171204008, 2017.
  • [2] M. G. Jhawar, and Vikram Pudi, “Predicting the Outcome of a Cricket Match: A Team Composition Based Approach,” European Conference on Machine Learning and Principles of Knowledge Discovery in Database (ECML-PKDD), 2016.
  • [3] A. A. Abdurazzag, M. Mehtab, and Y. Mehtab, “Cricket World Cup Predictions Using KNN Intelligent Bigdata Approach,” 18-22. 10.1145/3277104.3277117, 2018.
  • [4] Parag Shah, and Mitesh Shah. “Predicting ODI Cricket Result,” Journal of Tourism, Hospitality and Sports, Vol 5, 2015.
  • [5] S. R. Iyer, and Ramesh Sharda, “Prediction of athletes’ performance using neural networks: An application in cricket team selection,” Expert Systems with Applications, Volume 36, Issue 3, Part 1, April 2009.
  • [6] S. Muthuswamy, and S. S. Lam, “Bowler Performance Prediction for One-day International Cricket Using Neural Networks,” Industrial Engineering Research Conference 2008.
  • [7] Barath Narayan, “Using artificial intelligence to predict 2019 Cricket World Cup.” sportskeeda.com article, https://www.sportskeeda.com/cricket/ai-prediction-for-2019-cricket-world-cup
  • [8] Support Vector Machines for Dummies, http://blog.aylien.com/support-vector-machines-for-dummies-a-simple/
  • [9] Neeraj Pathak, and Hardik Wadhwa, “Applications of modern classification techniques to predict the outcome of ODI cricket,” International Conference on Computational Science, Procedia Computer Science 87, 55-60 2016.
  • [10] Random Forest Simple Explanation, https://medium.com/@williamkoehrsen/random-forest-simple-explanation-377895a60d2d
  • [11] S. Murdeshwar, “Data Mining on Cricket Data Set for predicting the results”, report in December 2016.
  • [12] Kalpdrum Passi, and Niravkumar Pandey, “Increased prediction in the game of cricket using Machine Learning.” in International Journal of Data Mining and Knowledge Management Process (IJDKP), Vol.8, No.2, March 2018.
  • [13] Sonu Kumar, and Sneha Roy, “Score Prediction and Player Classification Model in the Game of Cricket using Machine Learning,” International Journal of Scientific and Engineering Research, Volume 9, Issue 8, August 2018.
  • [14] T. Singh, V. Singla and P. Bhatia, “Score and winning prediction in cricket through data mining,” 2015 International Conference on Soft Computing Techniques and Implementations (ICSCTI), Faridabad, 2015, pp. 60-66.
  • [15] J. Kumar, A. K. Singh, A. Mohan, “Resource-efficient load-balancing framework for cloud data center networks,” ETRI Journal, 43 (1), pp. 53-63, 2021.
  • [16] D. Saxena, I. Gupta, J. Kumar, A. K. Singh, X. Wen, “A Secure and Multiobjective Virtual Machine Placement Framework for Cloud Data Center,” IEEE Systems Journal, 2021. (Article in Press) DOI: 10.1109/JSYST.2021.3092521
  • [17] A. K. Singh, J. Kumar, “Secure and energy aware load balancing framework for cloud data centre networks,” Electronics Letters, 55 (9), pp. 540-541, 2019.
  • [18] J. Kumar and A. K. Singh, “Cloud Resource Demand Prediction using Differential Evolution based Learning,” 2019 7th International Conference on Smart Computing & Communications (ICSCC), 2019, pp. 1-5.
  • [19] J. Kumar, A. K. Singh, “Dynamic resource scaling in cloud using neural network and black hole algorithm,” Proceedings on 5th International Conference on Eco-Friendly Computing and Communication Systems, ICECCS 2016, pp. 63-67.
  • [20]

    J. Kumar, R. Goomer, A. K. Singh, “Long Short Term Memory Recurrent Neural Network (LSTM-RNN) Based Workload Forecasting Model for Cloud Datacenters,” Procedia Computer Science, 125, pp. 676-682, 2018.

  • [21] A. K. Singh, D. Saxena, J. Kumar, V. Gupta, “A Quantum Approach towards the Adaptive Prediction of Cloud Workloads,” IEEE Transactions on Parallel and Distributed Systems, 32 (12), pp. 2893-2905, 2021.
  • [22] J. Kumar, A. K. Singh, “Performance Assessment of Time Series Forecasting Models for Cloud Datacenter Networks’ Workload Prediction,” Wireless Personal Communications, 116 (3), pp. 1949-1969, 2021.
  • [23] J. Kumar, A. K. Singh, R. Buyya, “Self directed learning based workload forecasting model for cloud resource management,” Information Sciences, 543, pp. 345-366, 2021.
  • [24] J. Kumar, A. K. Singh, “Decomposition Based Cloud Resource Demand Prediction Using Extreme Learning Machines,” Journal of Network and Systems Management, 28 (4), pp. 1775-1793, 2020.
  • [25] J. Kumar, D. Saxena, A. K. Singh, A. Mohan, “BiPhase adaptive learning-based neural network model for cloud datacenter workload forecasting,” Soft Computing, 24 (19), pp. 14593-14610, 2020.
  • [26] J. Kumar, A. K. Singh, “Adaptive learning based prediction framework for cloud datacenter networks’ workload anticipation,” Journal of Information Science and Engineering, 36 (5), pp. 981-992, 2020.
  • [27] J. Kumar, A. K. Singh, R. Buyya, “Ensemble learning based predictive framework for virtual machine resource request prediction,” Neurocomputing, 397, pp. 20-30, 2020.
  • [28]

    J. Kumar, A. K. Singh, “Cloud datacenter workload estimation using error preventive time series forecasting models,” Cluster Computing, 23 (2), pp. 1363-1379, 2020.

  • [29] J. Kumar, A. K. Singh, “Workload prediction in cloud using artificial neural network and adaptive differential evolution,” Future Generation Computer Systems, 81, pp. 41-52, 2018.
  • [30] J. Kumar, “Machine Learning Models for Cloud Resource Management,” PhD dissertation, National Institute of Technology Kurukshetra, 2019.
  • [31] S. Singh, T.K. Madan, J. Kumar, A. K. Singh, “Stock Market Forecasting using Machine Learning: Today and Tomorrow,” 2019 2nd International Conference on Intelligent Computing, Instrumentation and Control Technologies, ICICICT 2019, pp. 738-745.
  • [32] V. Sharma, S. Kaur, J. Kumar, A. K. Singh, “A fast parkinson’s disease prediction technique using PCA and artificial neural network,” 2019 International Conference on Intelligent Computing and Control Systems, ICCS 2019, pp. 1491-1496.