Dear connoisseurs, I invite you to take a look inside Careem’s food delivery platform. Specifically, we are going to look at how we use machine learning to improve the customer experience for delivery time tracking.
When planning a meal, timing is crucial. This is why we take a lot of care estimating the delivery time of our orders. However, delivery time depends on several complicated factors — for this reason, machine learning is the right choice to predict what the ETA will be.
Careem’s Food Delivery platform interface for delivery time estimation
From a first glance, it is nothing but a typical regression problem: go get some features, train a reasonable model against historical delivery time to minimize RMSE, estimate expected decrease in average error with suitable cross-validation strategy and share it with leadership, deploy, announce it broadly and gain respect, trust, promotion…
In this post, I’m going to try and explain what is wrong with this approach. I will describe our solution to the problem and the way we measured user impact. I will then show you how we built a custom loss function to better optimize for user order satisfaction.
#machine-learning #gradient-descent #delivery #gradient-boosting #loss-function