Estimated Delivery Model
Learn how to build Estimate Delivery model for the food delivery app.
We'll cover the following...
3. Model
Feature Category | Feature engineering | Description |
Order features | Subtotal, Cuisine | Basic characteristics of the order itself |
Item features | Price, Type | Information about individual items within the order |
Order type | Group, Catering | Indicates whether the order is a group order, catering request, etc. |
Merchant details | ā | Merchant-specific metadata (e.g., ratings, popularity, etc.) |
Store ID | Store Embedding | Dense representation capturing latent store characteristics |
Realtime feature | Number of orders, Number of dashers, Traffic, Travel estimates | Live system load and conditions |
Time feature | Time of day (lunch/dinner), Day of week, Weekend, Holiday | Temporal context around the delivery |
Historical aggregates | Past X weeks average delivery time for: Store / City / Market / Time of Day | Rolling historical statistics to capture service performance trends |
Similarity | Average parking times, Variance in historical times | Metrics from similar past deliveries to estimate expected behavior |
Latitude / Longitude | Measure estimated driving time between restaurant and consumer | Spatial/geographic context used to estimate delivery time |
Training data
- We can use historical deliveries for the last 6 months as training data. Historical deliveries include delivery data and actual total delivery time, store data, order data, customers data, location, and parking data.
Model
Gradient Boosted Decision Tree
- Gradient Boosted Decision Tree sample
-
How do Gradient Boosted Decision Trees work?
-
Step 1: Given historical delivery, the model first calculates the average delivery time. This value will be used as a baseline.
-
Step 2: The model measures the residual (error) between prediction and actual delivery time.
...
-