Skip to content
Nikhil Kumar Reddy
← All work
eval2026

Health Insurance Premium Prediction

Regression on 1,338 records, where one binary feature dominates everything else.

~0.77
Linear regression R², testmeasured in repo
1,337
Records after dedupemeasured in repo
smoker status
Strongest predictormeasured in repo
01

The problem

Predicting insurance charges from demographics looks like a standard regression until you plot it: smoker status splits the data into two nearly separate populations. The modelling question becomes whether ensembles find structure beyond that dominant split, or just relearn it in a more complicated way.

02

Architecture

A progression from linear regression with incrementally added features, through decision tree and random forest regressors tuned with both GridSearchCV and RandomizedSearchCV, to a tuned XGBoost regressor.

03

What broke

The repo reports XGBoost as best performing without recording its final R² or RMSE, which means the headline comparison is not reproducible from the README as written — a documentation gap rather than a modelling one, and exactly the kind of thing that makes results unverifiable later. At 1,337 records the dataset is also small enough that tuning gains sit within the noise of the train/test split.

04

Results

Linear regression establishes the floor at roughly 0.77 test R². Ensembles with tuning outperform linear approaches, with XGBoost best. Smoking status is the dominant predictor, followed by age and BMI.