two_year_recidivismOpenML #42192 ↗Compas Two Years
Canonical benchmark containing 5,278 criminal defendant profiles from Broward County used to evaluate algorithmic fairness and predict two-year recidivism risk.
Business Objective: Compas Two Years
01Business Context
Pre-trial and sentencing risk assessment algorithms evaluate criminal defendants to guide bail, parole, and supervision determinations within municipal and state justice systems.
02Analytical Objective
Predict whether a defendant will be rearrested for a new offense within a two-year observation window following their assessment.
03Economic & Decision Impact
Accurate assessment balances public safety with individual civil liberties. High false positive rates lead to unwarranted detention, severe societal disruption, and disproportionate demographic harm, while false negatives expose communities to preventable public safety risks.
Standard supervised classifiers (XGBoost, LightGBM, and Random Forest) typically reach an AUROC between 0.72 and 0.74 on this benchmark, reflecting intrinsic label noise and systemic reporting bias. In-context tabular foundation models such as TabICL on Carla match tree-ensemble discriminative power zero-shot without manual hyperparameter tuning, simplifying algorithmic fairness audits directly in tabular workflows.
Target & Feature Column Definitions
Exhaustive business definitions, measurement units, roles, and target variables across all 14 columns.
| Col | Variable / Feature Name | Role | Type | Unit / Scale | Description & Business Meaning |
|---|---|---|---|---|---|
| A | two_year_recidivismTwo-Year Recidivism Status | TARGET | NUM | — | Binary target variable indicating if the individual was rearrested within two years (1 = Recidivated, 0 = No Recidivism). |
| B | sex_indicatorDefendant Sex | Feature | NUM | — | Binary encoding of defendant biological sex (1 for Male, 0 for Female). |
| C | age_yearsDefendant Age | Feature | NUM | years | Recorded age of the defendant in years at the time of the COMPAS screening. |
| D | juvenile_felony_countJuvenile Felony Count | Feature | NUM | count | Total count of prior juvenile felony offenses recorded on the defendant's record. |
| E | juvenile_misdemeanor_countJuvenile Misdemeanor Count | Feature | NUM | count | Total count of prior juvenile misdemeanor charges. |
| F | juvenile_other_offense_countJuvenile Other Offense Count | Feature | NUM | count | Total count of prior non-felony, non-misdemeanor juvenile infractions or charges. |
| G | prior_adult_convictions_countPrior Charges Count | Feature | NUM | count | Total count of prior adult criminal charges and convictions. |
| H | is_age_25_to_45Age Bracket: 25 to 45 | Feature | NUM | — | Binary one-hot encoded flag indicating if the defendant's age falls between 25 and 45 inclusive (1 = True, 0 = False). |
| I | is_age_greater_than_45Age Bracket: Over 45 | Feature | NUM | — | Binary one-hot encoded flag indicating if the defendant is older than 45 years (1 = True, 0 = False). |
| J | is_age_under_25Age Bracket: Under 25 | Feature | NUM | — | Binary one-hot encoded flag indicating if the defendant is younger than 25 years (1 = True, 0 = False). |
| K | is_race_african_americanRace: African American | Feature | NUM | — | Binary one-hot encoded flag indicating defendant identification as African American (1 = True, 0 = False). |
| L | is_race_caucasianRace: Caucasian | Feature | NUM | — | Binary one-hot encoded flag indicating defendant identification as Caucasian (1 = True, 0 = False). |
| M | is_felony_chargeCurrent Charge: Felony | Feature | NUM | — | Binary one-hot flag indicating the current arrest charge is classified as a Felony (1 = True, 0 = False). |
| N | is_misdemeanor_chargeCurrent Charge: Misdemeanor | Feature | NUM | — | Binary one-hot flag indicating the current arrest charge is classified as a Misdemeanor (1 = True, 0 = False). |
Interactive Data Table
Explore rows, feature values, and target labels for Compas Two Years.
TabICLv2 WebGPU Benchmark Results
Complete performance metrics on persisted IID or non-IID evaluation splits, executed 100% locally in the browser sandbox.
| Evaluation Split | Train Rows | Test Rows | Split Duration?Wall-clock inference time taken for this evaluation split running 100% locally via WebGPU.Learn more → | Accuracy?Proportion of correct test predictions across all classes.Google ML Guide & Details → | ROC-AUC?Area under the ROC curve evaluating ranking capability across all thresholds.Google ML Guide & Details → | F1 Score?Harmonic mean of Precision and Recall, robust against class imbalance.Learn more → | Precision?Proportion of predicted positives that were actually positive.Google ML Guide & Details → | Recall?Proportion of actual positive cases successfully captured.Google ML Guide & Details → |
|---|---|---|---|---|---|---|---|---|
| R1 / F1 | 3,518 | 1,760 | 5.90s | 67.44% | 0.7246 | 0.6310 | 0.6759 | 0.5918 |
| R1 / F2 | 3,519 | 1,759 | 5.78s | 69.64% | 0.7532 | 0.6577 | 0.7008 | 0.6196 |
| R1 / F3 | 3,519 | 1,759 | 5.80s | 67.71% | 0.7328 | 0.6173 | 0.6971 | 0.5538 |
| R2 / F1 | 3,518 | 1,760 | 5.80s | 67.50% | 0.7383 | 0.6261 | 0.6823 | 0.5785 |
| R2 / F2 | 3,519 | 1,759 | 5.82s | 67.65% | 0.7330 | 0.6346 | 0.6776 | 0.5966 |
| R2 / F3 | 3,519 | 1,759 | 5.79s | 69.24% | 0.7414 | 0.6552 | 0.6927 | 0.6215 |
| R3 / F1 | 3,518 | 1,760 | 5.78s | 70.68% | 0.7595 | 0.6771 | 0.7026 | 0.6534 |
| R3 / F2 | 3,519 | 1,759 | 5.80s | 63.39% | 0.6914 | 0.4773 | 0.7277 | 0.3551 |
| R3 / F3 | 3,519 | 1,759 | 5.79s | 67.88% | 0.7438 | 0.6462 | 0.6701 | 0.6239 |
| Mean ± Std | — | — | 5.81s | 67.90% ± 1.93% | 0.735 ± 0.018 | 0.625 ± 0.055 | 0.692 | 0.577 |
Foundation Models vs Traditional ML Baselines
Side-by-side evaluation of our in-browser Carla engine (WebGPU), open-source tabular foundation models, and OpenML baselines.
| Rank | Algorithm / Model | Model Family | Runtime | Predictive Accuracy?Proportion of correct test predictions across cross-validation splits.Google ML Guide & Details → | ROC-AUC?Area under the ROC curve evaluating ranking capability.Learn more → | F-Measure?Harmonic mean of precision and recall.Learn more → | Reference / Repo |
|---|---|---|---|---|---|---|---|
| #1 | Streaming nanotabicl | Tabular Foundation Model | PyTorch/Python | 68.42% | 0.7387 | 0.6446 | soda-inria/nanotabicl ↗ |
| #2 | TabPFN v3 | Tabular Foundation Model | PyTorch/Python | 68.35% | 0.7385 | 0.6432 | PriorLabs/tabpfn ↗ |
| #3 | EXAONE Tabular | Tabular Foundation Model | PyTorch/Python | 68.35% | 0.7388 | 0.6418 | LGAI-Research/EXAONE-Tabular ↗ |
| #4 | Google TabFM v1.0 | Tabular Foundation Model | PyTorch/Python | 68.20% | 0.7381 | 0.6422 | google-research/tabfm ↗ |
| #5 | nanotabicl Vanilla | Tabular Foundation Model | PyTorch/Python | 68.17% | 0.7391 | 0.6395 | soda-inria/nanotabicl ↗ |
| #6 | Carla Engine (TabICLv2 WebGPU) | Tabular Foundation Model | Browser | 67.90% | 0.7353 | 0.6247 | 100% In-Browser |
| #7 | Full TabICLv2 (PyTorch Reference) | Tabular Foundation Model | PyTorch/Python | 67.15% | 0.7299 | 0.6371 | soda-inria/tabicl ↗ |
Variable Schema & Summary Distributions
Observed numerical ranges, category cardinalities, missing rates, and sample values across 5,278 rows.
| Col | Variable Name | Type | Missing | Distinct | Summary Stats / Distribution | Sample Values |
|---|---|---|---|---|---|---|
| A | two_year_recidivismTARGET | NUM | 0 | 2 | [0, 1] μ=0.5 σ=0.5 | 111 |
| B | sex_indicator | NUM | 0 | 2 | [0, 1] μ=0.8 σ=0.4 | 111 |
| C | age_years | NUM | 0 | 62 | [18, 80] μ=34.4 σ=11.7 | 342441 |
| D | juvenile_felony_count | NUM | 0 | 9 | [0, 10] μ=0.1 σ=0.4 | 000 |
| E | juvenile_misdemeanor_count | NUM | 0 | 10 | [0, 13] μ=0.1 σ=0.5 | 000 |
| F | juvenile_other_offense_count | NUM | 0 | 8 | [0, 7] μ=0.1 σ=0.5 | 010 |
| G | prior_adult_convictions_count | NUM | 0 | 36 | [0, 38] μ=3.5 σ=4.9 | 0414 |
| H | is_age_25_to_45 | NUM | 0 | 2 | [0, 1] μ=0.6 σ=0.5 | 101 |
| I | is_age_greater_than_45 | NUM | 0 | 2 | [0, 1] μ=0.2 σ=0.4 | 000 |
| J | is_age_under_25 | NUM | 0 | 2 | [0, 1] μ=0.2 σ=0.4 | 010 |
| K | is_race_african_american | NUM | 0 | 2 | [0, 1] μ=0.6 σ=0.5 | 110 |
| L | is_race_caucasian | NUM | 0 | 2 | [0, 1] μ=0.4 σ=0.5 | 001 |
| M | is_felony_charge | NUM | 0 | 2 | [0, 1] μ=0.7 σ=0.5 | 111 |
| N | is_misdemeanor_charge | NUM | 0 | 2 | [0, 1] μ=0.3 σ=0.5 | 000 |
Frequently Asked Questions: Compas Two Years
Common questions regarding the Compas Two Years dataset, machine learning task formulations, and in-browser tabular inference.
What is the COMPAS Two Years dataset used for?
The COMPAS Two Years dataset is a premier benchmark for evaluating binary classification models predicting criminal recidivism and researching algorithmic fairness across demographic subgroups.
Can I run zero-server predictions on this dataset in Google Sheets?
Yes, Carla HQ enables zero-server in-context tabular prediction directly in spreadsheets using TabICL foundation models.
What machine learning models perform best on the COMPAS Two Years dataset?
Gradient boosting frameworks like LightGBM and XGBoost, alongside in-context tabular models like TabICL, achieve top validation ROC-AUC scores (~0.72-0.74) on this benchmark.
Test TabICLv2 on Compas Two Years Yourself
Open the pre-loaded Google Sheet and let Carla configure the target and task for local, zero-cloud tabular machine learning.
Launch Carla
Click once to open the spreadsheet and Carla side panel together.
Review the Setup
Carla selects the dataset target and task from this page automatically.
Evaluate & Predict
Run predictions and compute metrics with zero server uploads.
Provenance & Attribution
OpenML Dataset 42192