Intro to Machine Learning - Daily Fantasy Sports

PowerPoint

Hey everyone welcome back! Today we are going to be introducing ourselves to some high level machine learning concepts. There's going to be a lot of new vocabulary and concepts that everyone will need to be familiar with in order to understand the coming videos.


Slide2.PNG

MACHINE LEARNING OVERVIEW:

First off, what is machine learning?

A generic definition you will probably find all over the internet is that is simply "the study of computer algorithms that improve automatically through experience."

Okay. Cool. What does that actually mean for normal people like us though?

Well it really is exactly what it says, basically just think of it as a very basic for what the computer(machine) to 'learn' something. Think of any code we have written so far, even if your only experience is with my youtube videos. The computer will do EXACTLY what you tell it to do using python. Nothing more, nothing less (barring an error).

Machine Learning(ML) falls within the broader term of Artificial Intelligence, and then within machine learning we can further classify down into Neural Networks, and then within NN's we can break down further into Deep Learning. We are going to be sitting within that Machine Learning category for a while, so you won't need to have any sort of understanding with the neural networks or deep learning, it just helps to know where these hot topic words fit in to the greater scheme.

There are several different machine learning algorithms out there to use, and you will need to know what kind of data you have, as well as what type of learning you want to perform in order to pick an algorithm and get started.

Slide3.PNG

TYPES OF DATA:

There are 2 types of data when it comes to ML, Continuous and Discrete data. Continuous data is when the value can by ANYTHING within a range, while discrete data is when values come from a select set. For example, Continuous data could be anything within the range [0,3], such as 1, 1.5, 1.234234524364, 0.37581795719375819875891, ... etc. While Discrete data would only be able to be 0, 1, 2, 3 within that same range. Now, an important caveat here is that discrete data does not have to be an integer, and continuous data does not have to be non-integers. This is just an easy example within the same range to see the differences.

Slide4.PNG

TYPES OF MACHINE LEARNING:

In addition to the 2 data types, you also have two types of learning, and the combination of data type and type of learning is what will drive which algorithms you will be using. These two types of learning are Supervised and Unsupervised. Supervised learning is used when you are trying to evaluate a specific outcome, for instance fantasy point predictions. We can provide a large dataset (season(s) of box scores) with the fantasy points included. We have the end result to train the algorithm on to learn how to predict such a measure. Unsupervised learning is more of an exploratory data science endeavor, where you have a large dataset, and are more trying to "discover" what's in there. One way we will utilize unsupervised learning is by passing a plethora of advanced stats, and trying to "discover" player groupings based on their advanced stats to model similar playstyles.

Slide5.PNG

MACHINE LEARNING ALGORITHMS:

Now that we have the two data types and the two learning types, we are ready to look at algorithm types.

  • Supervised Learning

    • Continuous Data

      • (Linear) Regression

    • Discrete Data

      • Classification

      • Categorization

  • Unsupervised Learning

    • Continuous Data

      • Dimensionality Reduction

    • Discrete Data

      • Clustering


Regression - What we will be using to predict FP output. Classification - most commonly used for image classification Dimensionality Reduction - Reducing multidimensional data down to 2 dimension for easier consumption. Clustering - What we will be using to group players by playstyle(Archetype) to model playstyles in specific scenarios.

Previous
Previous

K-Means Clustering Algorithm Introduction