Lead Pipe Prediction Prototype

A synthetic-data prototype for predicting pipe materials and organizing human review.

Why it matters

Incomplete or conflicting records need a review path as well as a prediction. The prototype demonstrates how calibrated estimates and separate review queues can organize uncertainty on synthetic service-line records.

My contribution

I built a local prototype combining document text and structured data to predict pipe materials. Separate calibration groups and geographic, time-based, and cross-utility evaluation splits examine predictions beyond the training groups; uncertain records remain in review queues. All runs use synthetic data.

Result

The prototype produces predictions and review queues, with notes explaining the models, data, and outputs.

Tools

  • Python
  • TF-IDF
  • Logistic regression
  • Gradient boosting
  • Grouped evaluation

This is a local synthetic-data prototype, not a deployed utility model. The historical $1M+ estimated savings came from separate work.

Example

Try a small prediction example

Run a simple model on invented records and compare its predictions with the known answers.

Uses invented data; separate from this project.

View example
Technical details

Independent prototype · Synthetic demonstration data

Document text may be incomplete or conflicting, so predictions must allow for uncertainty.

  • Extract service-side, status, year, and negation details; keep rule-based guesses separate from verified labels.
  • Combine TF-IDF logistic regression with gradient boosting, then calibrate predictions on separate groups.
  • Test geographic, time-based, and cross-utility splits using synthetic data.
  • Leave uncertain cases unresolved and create separate risk, learning, and random-check queues.
  • Match records and prepare data snapshots separately from the training command.

Image viewer

100%