How would you predict a car’s turning intention?
MetaData Scientist · OnsiteLast updated
This question evaluates applied machine learning skills for vehicle intention prediction, covering temporal sequence modeling versus feature engineering, map- and lane-aware representations, multi-agent interaction reasoning, labeling/time-horizon definition, evaluation metrics and calibration, class imbalance and distribution shift handling, and uncertainty estimation for downstream planning. It is commonly asked because intention prediction is safety-critical in autonomous driving and probes a candidate’s ability to make system-level design trade-offs across data labeling, model architecture, training/validation, and risk-aware evaluation. Category/Domain: Machine Learning; Abstraction level: system-level applied ML for data scientist roles (mid-to-senior).
At an intersection, there are n vehicles stopped or approaching.
For each vehicle, you have a short history (e.g., last 3–10 seconds at 10 Hz) of:
- Position (x, y) in a map-aligned coordinate system
- Velocity (vx, vy) and optionally acceleration
- (Optional) lane/map context (lane centerlines, stop lines)
You want to predict each vehicle’s intention over the next few seconds as one of:
- Left turn
- Go straight
- Right turn
Task: Describe how you would build, train, and evaluate an ML model for intention prediction.
In your answer, cover:
- Labeling strategy and time horizon (when is intention defined?).
- Feature engineering vs sequence models; how to incorporate map/lane geometry.
- How to handle multi-agent interactions (other cars influence intent).
- Evaluation metrics (accuracy vs calibration vs early prediction; per-class metrics; cost-sensitive errors).
- Handling class imbalance, distribution shift across intersections/cities, and intent changes at the last second.
- How you would estimate uncertainty and use it in downstream planning.
Solution walkthrough is for members
Get the full walkthrough with reference code and complexity analysis, plus Kitty Coach at 300 messages a day. Hints, the code runner and community answers stay free.