Label data at scale. Fun and precision included.
Project description
Explore and label on a map of raw data.
Get enough to feed your model in no time.
hover
speeds up data labeling through embedding + visualization + callbacks
.
- all you need to supply is raw data and a vectorizer function.
:sparkles: Features
-
:telescope: A 2D-embedded view of your dataset for labeling, equipped with
- Tooltip for each point and table view for groups of points.
- Search widgets for ad-hoc highlight of data matching search criteria.
- Toggle buttons that clearly distinguish data subsets ("raw"/"train"/"dev"/"test").
-
:microscope: Supplementary views to provide further labeling precision, such as
- Advanced search view which can filter points by search criteria and provides stronger highlight.
- Active learning view which puts a model in the loop and can filter by confidence score.
- Function-based view which can leverage custom functions for labeling and filtering.
Check out @phurwicz/hover-binder for a list of demo apps.
:rocket: Quickstart
- Example script with walkthrough, ready to run in the browser
- Example hosted on Binder
:package: Install
Python: 3.7+
OS: Linux & Mac & Windows
To get the latest release version: pip install hover
Starting on version 0.6.0, we are also on conda: conda install -c conda-forge hover
For Windows users, we recommend Windows Subsystem for Linux.
- On Windows itself you will need C++ build tools for dependencies like
umap-learn
.
:book: Resources
:flags: Project News
- Feb 12, 2022 version 0.6.0 is now available. Check out the changelog for details :partying_face:. Some tl-dr for the impatient:
- you can now edit selections, like kicking points from current selection or updating cells on the fly.
- you can now make cumulative selections.
SupervisableDataset
no longer maintains lists of dictionaries, but does everything through dataframes.active_learning
now takes aVectorNet
directly.snorkel_crosscheck
allows you to label and filter through functions. You can change those functions dynamically without having to replot!
:bell: Remarks
Shoutouts
- Thanks to
Bokeh
becausehover
would not exist without linked plots and callbacks, or be nearly as good without embeddable server apps. - Thanks to Philip Vollet for sharing
hover
with the community even when it was really green.
Contributing
- All feedbacks are welcome :hugs: Especially what you find frustrating and want fixed!
./requirements-dev.txt
lists required packages for development.- Pull requests are advised to use a superset of the pre-commit hooks listed in .pre-commit-config.yaml.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.