← all repositories
PAIR-code/facets

Dataset forensics for the impatient ML engineer

Facets surfaces missing values, distribution drift, and training-serving skew through two browser-based visualizations for ML datasets.

7.3k stars Jupyter Notebook Data Tooling
facets
Not currently ranked — collecting fresh signals.
star history

What it does Facets provides two browser-based visualizations for diagnosing machine learning datasets before training begins. Facets Overview generates a feature-by-feature statistical analysis across one or more datasets, automatically flagging unexpected values, missing data, and distribution skew in red. Facets Dive renders each example as an individual point, letting you facet, filter, and zoom through tens of thousands of multidimensional rows to spot patterns and outliers interactively.

The interesting bit Rather than exporting another wall of pandas summaries, the tool embeds directly into Jupyter notebooks or webpages as Polymer web components, turning dataset validation into a visual, interactive step backed by TypeScript.

Key highlights

  • Overview sorts features by severity, surfacing issues like training-serving skew and missing values at a glance.
  • Dive combines smooth animation with faceting and bucketing across multiple dimensions to explore complex datasets.
  • Both tools handle numeric and string features, including multiple instances per feature.
  • The facets-overview Python package generates the statistics needed for the Overview visualization.
  • Each example in Dive is represented as a single manipulable item, allowing granular inspection.

Caveats

  • The visualizations currently work only in Chrome.
  • The facets-overview package requires protobuf 3.20.0 or later.

Verdict Worth a look if you routinely sanity-check training, test, and serving sets for drift and holes before feeding them to a model. Skip it if you need real-time production monitoring or broad browser support.

Frequently asked

What is PAIR-code/facets?
Facets surfaces missing values, distribution drift, and training-serving skew through two browser-based visualizations for ML datasets.
Is facets open source?
Yes — PAIR-code/facets is open source, released under the Apache-2.0 license.
What language is facets written in?
PAIR-code/facets is primarily written in Jupyter Notebook.
How popular is facets?
PAIR-code/facets has 7.3k stars on GitHub.
Where can I find facets?
PAIR-code/facets is on GitHub at https://github.com/PAIR-code/facets.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.