This post covers the foundations of e-sports betting with machine learning: financial decision-making, expected profits of a bet, multiple bets with the Kelly criterion, probability calibration, and the winner’s curse.
In this blog post, I explore the problem of name classification with ChatGPT and 3 ML models of increasing complexity (logistic regression, FastAI LSTM, and HuggingFace DistilBERT).
ChatGPT delivers the best accuracy of them all with no model training, just prompt engineering. It classifies 100k names in 18 minutes for under $5.
We see a lot of ChatGPT chat examples, but here I show how to use its API to solve an actual text classification problem (albeit a simple one).
GPT is transforming tasks that required deep machine learning knowledge into software + prompt engineering problems. As a data scientist, I’m not worried about it taking over my job, as predictive modelling is only a small aspect of what a data scientist does.
In the beginning I also considered Atlas, but that seemed way too much trouble and expenses for two businesses that may or may not be viable.
In the end, I decided to go with Paddle (https://paddle.com/). The integration was really easy, it is just a button that links to my subscription plans (with webhooks that alert my server when subscriptions are created and paid).
I have lived most of my life in Brazil, and even though I am very privileged, the following has happened to me:
1) Watch stolen by drug addict with a syringe when I was 12 years old
2) Cellphone stolen by a thug with a glass shard when I was 16
3) Also when I was 16, three thugs tried to steal my cellphone, they said they would blow my brains if I didn't comply and faked having a gun (I didn't).
4) Two thugs invaded my frat house, held us hostages with handguns, and stole all we had (I will never forget the cold metal of the gun touching my head, while I was threatened).
5) My car was jacked right in front of my house.
6) Another cellphone stealing incident that I'd rather not share in details.
7) My spare tire was stolen while I was in a bar for a couple of hours.
This is just what has happened to me in less than 30 years. Stories like those abound. My girlfriend also went through (4) and (7), independently of me. Pretty much everyone I know has had a cellhphone stolen at some point in their lives.
If you want to actually experience the dread that is living in Brazil, search for "brazil" in reddit's /r/watchpeopledie.
This is insane, this judge must be on a power trip. WhatsApp is now part of Brazilian social life and economy. Everyone here is part of many groups of friends, family or workmates, that is where most instant communication happens.
In my company, our deployment engineers, who usually are on very remote places with bad and unreliable internet, rely on WhatsApp. I'm not saying this is the best practice, but this is simply the way Brazil works right now. Even the mobile phone companies offer plans with free WhatsApp connection, because that is what most people here care about. Another example: In Brazil, 9 in 10 doctors use WhatsApp to talk to patients (http://www.cityam.com/230372/digital-health-wearables-and-ap...).
To disregard all the people and businesses that rely on WhatsApp for whatever reason is unbelievable. But this is not without precedent, once another Brazilian judge blocked YouTube for a whole day because it refused to take down a celebrity video.
This says a lot about the over-sized, inefficient, and stupid state we have, always meddling and intervening.
Causality is a bit harder to integrate with current machine learning models as it's hard even with standard probabilistic graphical models. On the other hand, there has been a lot of work integrating deep neural networks with probabilistic models.
For example, the variational auto-encoders are a graphical model with Gaussian latent variables whose mean and variance are determined by (deep) neural networks [1]. There has been work exploring the neural network weights as latent variables themselves [2]. Finally, some new developments such as dropout can be interpreted as some form of deep Gaussian processes [3].
I believe there will be a lot further developments on this area in the near-future.
Torch7 has amazing GPU support. If you wanna send a tensor (array) to the GPU, you just type array:cuda(). All operations you do from now on will be on the GPU.