02 · ML PIPELINE

Build carefully.
Evaluate honestly.

A streaming sparse logistic model evaluated against meaningful baselines, with accuracy placed in its proper class-imbalance context.

MODEL APPROACH

Candidate clicked
vs. not clicked.

MODELSGDClassifier logistic model

loss = log_loss · trained in streaming sparse batches · 249 encoded final features

Candidate ContextUser / History ContextContent ContextTime Context

BASELINES → FINAL MODEL

Average Precision comparison

Scale: 0.00 to 0.11 Average Precision. The bars preserve the numerical ordering and relative magnitude of the three results.

No Skill
0.040636
Affinity
0.056839
Final Logistic
0.106537

FINAL EVALUATION

Average Precision0.106537
ROC-AUC0.716304
Log loss0.159305

RANKING

MRR0.316712
nDCG@50.303522
nDCG@100.366813

PLAIN-LANGUAGE EXPLANATION

Better concentration, not a guaranteed click.

The development set contains only about 4.06% positive engagement. A no-skill model therefore begins near 0.0406 Average Precision. The final model reaches 0.1065, meaning positive-engagement candidates are concentrated more effectively toward higher model scores than under chance or the simple affinity baseline.

IMPORTANT CLASS-IMBALANCE LESSON

95.94% accuracy
can still miss nearly everything.

Illustrative 0.50 threshold accuracy95.94%
Recall0.009%
Positive candidates found10 of 111,383

This is why accuracy is not the primary metric.

GOVERNANCE

Dataset / topic approved
Model trained and evaluated
Submitted for reviewer approval
Reviewer approved deployment
Public visual deployment
Decision support, not a decision.

A click is an engagement signal only. It is not evidence of helpfulness, satisfaction, spiritual benefit, causal effect, or Strongr Daily production effectiveness.