1、DraftKings Inc.,2023 privileged&confidentialDraftKings Inc.,2024 privileged&confidentialDraftKings Inc.,2024 privileged&confidentialAGENDA5.How You Make Money4.How Were Utilising Databricks3.Our NBA Kalman Filters2.The“Rocket Science”1.What We Do6.SummaryDraftKings Inc.,2023 privileged&confidentialD
2、raftKings Inc.,2024 privileged&confidential/4DraftKings Inc.,2024 privileged&confidentialWhat We DoWe are part of the Sports Data Science Team at DraftKings,responsible for setting the prices customers see on our sportsbook.Our complex monte carlo simulation based pricing engines are powered by mult
3、iple ML models and generate probabilities for various sports events,such as:Final game scoresTiming of the next touchdownThe next team to score a 3-pointer/5DraftKings Inc.,2024 privileged&confidentialBusiness ProblemWHATAt the end of 2022 we were asked to produce models that are capable of producin
4、g NBA player props markets(over/under player gets x points/assists etc)HOWProduce player centric NBA models that are able to understand the value of playersProduce several new player based features and models that to help us produce props marketsStep change our MLOps practices by utilizing Databrick
5、s to produce robust feature and model pipelines and monitor our models.WHATAt the end of 2022 we were asked to produce models that are capable of producing NBA player props markets(over/under player gets x points/assists etc)HOWProduce player centric NBA models that are able to understand the value
6、of playersProduce several new player based features and models that to help us produce props marketsStep change our MLOps practices by utilizing Databricks to produce robust feature and model pipelines and monitor our models.DraftKings Inc.,2023 privileged&confidentialDraftKings Inc.,2023 privileged
7、&confidential|8|8KALMAN FILTERSKalman Filters are an algorithm that uses a series of measurements to produce an estimate of an unknown variable.They are designed to work in scenarios where high degrees of uncertainty are present,both in the variable youre attempting to estimate and the the method be
8、ing used to measure.Kalman Filters also account for uncertainty in the estimate which gets updated alongside the estimate after every measurement.Estimate UpdateKalman GainCovariance Update/9DraftKings Inc.,2024 privileged&confidentialApplicationsAuto PilotPortfolio OptimizationFinancial Time Series
9、 PredictionGPSRocket ScienceAnd Many More!/10DraftKings Inc.,2024 privileged&confidentialDoesnt Use Kalman Filters/12DraftKings Inc.,2024 privileged&confidentialA Simple Example-Usain Bolts 100m times/13DraftKings Inc.,2024 privileged&confidentialA Simple Example-Usain Bolts 100m times/14DraftKings
10、Inc.,2024 privileged&confidentialA Simple Example-The ParametersStarting UncertaintyStarting ExpectationDriftMeasurement Noise/15DraftKings Inc.,2024 privileged&confidentialKalman Filters as a Rating SystemKalman Filters can be used for situations where there are multiple players/teams participating
11、,and only a subset of players participate in any given observationsAlternative Ratings Systems cannot handle those situations well,comparisons below:Rating SystemEloGlickoTrueskillKalman FiltersUncertainty ValueNoYesYesYesMeasurement NoiseNoNoYesYesUpdatesOnly involved playersOnly involved playersOn
12、ly involved playersAll entities/playersDraftKings Inc.,2023 privileged&confidentialDraftKings Inc.,2023 privileged&confidential/17DraftKings Inc.,2024 privileged&confidentialSimulation EngineAt DraftKings,our sports engines are built using Monte Carlo Simulation/19DraftKings Inc.,2024 privileged&con
13、fidentialEnrichment Probability ModelsDuring possession simulation,details are enriched sequentially based on probability models.Given a three pointer made,who has shoot the three?Is the three pointer being assisted?If yes,who has passed the ball?/20DraftKings Inc.,2024 privileged&confidentialKalman
14、 Filters as Probability ModelSimpleA rating for every team/playerSimple transformation from ratings to probabilitiesTeam/Player SpecificDo not need additional featuresEasy to updateSimple matrix operations to update the ratings after the game/21DraftKings Inc.,2024 privileged&confidentialThree Point
15、er Ratings vs Assists RatingsDraftKings Inc.,2023 privileged&confidentialDraftKings Inc.,2023 privileged&confidential/24DraftKings Inc.,2024 privileged&confidential“The most valuable commodity I know of is information”A quote from 1987 film Wall Street/25DraftKings Inc.,2024 privileged&confidentialB
16、efore&After DatabricksRatings are trained locally and stored in a csvNeed to do a deployment to update the ratingsBasically only updates every yearNot feasible for fast moving player ratingsDataset and ratings can be reproduced easilyWorkflow are set up in the databricks to update dataset and rating
17、s dailyThe ratings for calculation is sent downstream automaticallyBeforeAfter!Able to backtest the model performance using historical ratings/26DraftKings Inc.,2024 privileged&confidentialArchitecture/27DraftKings Inc.,2024 privileged&confidentialRating Tasks/28DraftKings Inc.,2024 privileged&confi
18、dentialFeature PublisherCDCKAFKAThe change is then sent downstream to kafkaThe updated team/player ratings are mapped to different gamesForm calculation requests by combing ratings with other informationThe Feature Publisher task reads the CDC(change data capture)table Figure out which rows have bee
19、n changed/29DraftKings Inc.,2024 privileged&confidentialModel InjectionThe models are trained on the updated dataset by scheduled workflows.When the engine pod is started up,it will grab the latest version of the model from the model registry./30DraftKings Inc.,2024 privileged&confidentialModel Back
20、testingHistorical KF ratingsHistorical kf team/player ratings right before the game startsAvoid data leakage/31DraftKings Inc.,2024 privileged&confidentialHistorical DashboardDraftKings Inc.,2023 privileged&confidentialDraftKings Inc.,2023 privileged&confidential/33DraftKings Inc.,2024 privileged&co
21、nfidentialBetting StrategyWINNING INGREDIENTSNOW LETS MAKE SOME MONEYBookmaker offers to return 3.75times your stake.Model suggests 30%of the time you will win.Expected return is 30%x 3.75=1.125/34DraftKings Inc.,2024 privileged&confidentialBetting StrategyNOW LETS MAKE SOME MONEYKELLYS CRITERIONMax
22、imize the expected growth rate.Everytime we only bet a proportion of the bankrollb=(pO-1)/(O-1)/35DraftKings Inc.,2024 privileged&confidentialBetting StrategyNOW LETS MAKE SOME MONEYEVALUATION IS KEYAnalyse on the betting performance to optimise the betting strategyYou only need to bet when you are
23、confident with your prices/36DraftKings Inc.,2024 privileged&confidentialSportsbook StrategyWe dont have the luxury of choosing when we bet Need to be confident for ALL of the markets that we offerApply Margin We can control our pricesLearn from customers betIdentify professional customersAdjust the
24、 probability of the model based on their betsDraftKings Inc.,2023 privileged&confidentialDraftKings Inc.,2023 privileged&confidential/38DraftKings Inc.,2024 privileged&confidentialSummaryWe achieved our goal to build a model that is able to produce NBA player propsWe produced 200+separate Kalman FIl
25、ter based models all producing ratings for various different player and team attributes.All of the above models use features engineered through Databricks workflowsAll models are registered on Databricks and retrained and optimized through workflows running on a daily cadenceThe same practices applied here are now being adopted by other sports as they look to do similar.https:/ Inc.,2023 privileged&confidentialDraftKings Inc.,2023 privileged&confidential