• Stars
    star
    1,024
  • Rank 44,806 (Top 0.9 %)
  • Language
    TypeScript
  • License
    MIT License
  • Created over 1 year ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Interactively explore unstructured datasets from your dataframe.

Gray shape shifter

Renumics Spotlight

Data curation tool for your modular ML stack.

Documentation β€’ Playbook β€’ Blog β€’ API Reference

Spotlight helps you to identify critical data segments and model failure modes. It enables you to build and maintain reliable machine learning models by curating high-quality datasets.

πŸš€ Introduction

Spotlight is built on the idea that you can only truly understand unstructured datasets if you can interactively explore them. Its core principle is to identify and fix critical data segments by leveraging data enrichments (e.g. features, embeddings, uncertainties). Pre-defined templates for typical data curation workflows get you started quickly and connect your stack to the data-centric AI ecosystem.

We at Renumics are building Spotlight for cross-functional teams who want to be in control of their data and data curation processes. Currently, Spotlight supports many use cases based on image, audio, video and time series data.

⏱️ Quickstart

Get started by installing Spotlight and loading your first dataset.

What you'll need

Install Spotlight via pip

pip install renumics-spotlight

We recommend installing Spotlight and everything you need to work on your data in a separate virtual environment.

Load a dataset and start exploring

import pandas as pd
from renumics import spotlight

df = pd.read_csv("https://renumics.com/data/mnist/mnist-tiny.csv")
spotlight.show(df, dtype={"image": spotlight.Image, "embedding": spotlight.Embedding})

pd.read_csv loads a sample csv file as a pandas DataFrame.

spotlight.show opens up spotlight in the browser with the pandas dataframe ready for you to explore. The dtype argument specifies custom column types for the browser viewer.

Load a Hugging Face image dataset

import datasets
from renumics import spotlight

dataset = datasets.load_dataset("olivierdehaene/xkcd", split="train")
df = dataset.to_pandas()
spotlight.show(df, dtype={"image_url": spotlight.Image})

The datasets package can be installed via pip.

Load a Hugging Face audio dataset with embeddings and a pre-defined layout

import datasets
from renumics import spotlight

dataset = datasets.load_dataset("renumics/dcase23-task2-enriched", "dev", split="all", streaming=False)
df = dataset.to_pandas()
simple_layout = datasets.load_dataset_builder("renumics/dcase23-task2-enriched", "dev").config.get_layout(config="simple")
spotlight.show(df, dtype={'path': spotlight.Audio, "embeddings_ast-finetuned-audioset-10-10-0.4593": spotlight.Embedding}, layout=simple_layout)

The datasets[audio] package can be installed via pip.

🧭 Start with example workflows

You can adapt Spotlight to your data curation tasks. To get you started quickly, we are continuously developing pre-defined plays for common workflows.

Rookie plays

Veteran plays

Tell us which data curation task is important for your work: