Course Description
The purpose of this course is to teach about how to use Python and machine learning in order to predict sports outcomes. It takes you through through all the steps, from collecting data using a web crawler to making profitable bets based on your predicted results.
The course is built around predicting tennis games, but the things taught can be extended to any sport, including team sports.
The course includes:
1) Intro to Python and Pandas.
2) Instructions on how to build a crawler in Python for the purpose of getting stats.
3) Data wrangling.
4) Using machine learning for sports predictions.
5) Discussion on advanced topics, like extension to team sports and using social media, such as Twitter, for additional information.
This course is geared towards people that have some interest in data science and some experience in Python. It does not require extensive coding experience, since all the scripts are provided. No prior experience in data science is required, even though it could be helpful. All the basic concepts are explained within the course.
Skills learned: Machine learning, web crawling, data wrangling and manipulation
Tools used: Python, Pandas, Scikit learn
Course Curriculum
1. Introduction to the course
2. Python and Pandas primer
3. Data crawling
4. Model testing and metrics
5. Data analysis
6. Advanced topics
7. Summary
What am I going to get from this course?
1) Design and code a machine learning pipeline in Python for predicting sports outcomes.
2) Build and use a web crawler in Python to extract the data from online sources.
3) Understand all the concepts and pitfalls behind prediction in sports.
Prerequisites and Target Audience
What will students need to know or do before starting this course?
The course assumes that students do not know Python or machine learning, but that they do have some familiarity with basic programming concepts or languages. Therefore, experience in Python or Machine Learning is not required, but will help.
Who should take this course? Who should not?
Who should take this course? Who should not?
This course is for the following audiences:
1) Anyone who is interested in learning how machine learning can be used in sports betting.
2) Anyone who is looking for a beginner's course in machine learning, in an applied setting.
3) Anyone who is interested in sports analytics.
Who shouldn't take this course:
Even though the course teaches you how to use machine learning to make profit in a betting setting, it is not a get rich quick scheme. Building a successful model that can systematically beats the odds requires many hours of work and experimentation. This course will teach you some of the fundamentals to do that.
Curriculum
Module 1: Introduction
08:20
Lecture 1
Introduction to the course
03:59
Lecture 2
Predicting tennis: introduction
04:21
Module 2: Python and Pandas primer
16:13
Lecture 4
Introduction to Pandas
05:13
Module 3: Data Crawling
27:27
Lecture 5
Data crawling: code
11:53
Lecture 6
Data crawling
04:15
Lecture 7
Data merging
06:50
Lecture 8
Data merging: code
04:29
Module 4: Model testing and metrics
31:54
Lecture 9
Statistical models
06:02
Lecture 10
Machine learning model validation
06:34
Lecture 11
Machine learning tips
03:45
Lecture 12
Metrics for classification
08:19
Lecture 13
Metrics for regression
07:14
Module 5: Data analysis
27:54
Lecture 14
Data analysis: Part 1
15:23
Lecture 15
Data analysis: Part 2
12:31
Module 6: Advanced topics
13:00
Lecture 16
Using human input and social media
07:07
Lecture 17
Team sports
05:53