Explore and label on a map of your data.
Get enough to feed your model in no time.
hover
is a tool for mass-labeling data points that can be represented by vectors.
- Labeling is as easy as coloring a scatter plot.
- Hover your mouse and lasso-select to inspect any cluster.
- Use a variety of widgets to narrow down further.
- Enter a suitable label and hit "Apply"!
:rocket: Live Demos
- edit & run code in your browser to get a labeling interface, with guides along the way.
- go directly to an example labeling interface hosted on Binder.
:sparkles: Features
It's fast because it labels data in bulk.
:telescope: A semantic scatter plot of your data for labeling, equipped with
Tooltip for each point on mouse hover
Table view for inspecting selected points
Toggle buttons that clearly distinguish data subsets
Search widgets for ad-hoc data highlight
It's accurate because multiple components work together.
:microscope: Supplementary views to use in conjunction with the annotator, including
`Finder`: filter data by search criteria
`SoftLabel`: active learning by in-the-loop model prediction score
`Snorkel`: custom functions for labeling and filtering
It's flexible (and fun!) because the process never gets old.
:toolbox: Additional tools and options that allow you to
Go to higher dimensions (3D? 4D?) and choose your xy-axes
Consecutively select across areas, dimensions, and views
Kick outliers and fix mistakes
:package: Install
Python: 3.8+
OS: Linux & Mac & Windows
PyPI: pip install hover
Conda: conda install -c conda-forge hover
:book: Resources
:flags: Announcements
- Jan 21, 2023 version 0.8.0 is now available. Check out the changelog for details :partying_face:.
:bell: Remarks
Shoutouts
- Thanks to
Bokeh
because hover
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, especially what you find lacking and want it 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.
Citation
If you have found hover
useful to your work, please let us know :hugs:
@misc{hover,
title={{hover}: label data at scale},
url={https://github.com/phurwicz/hover},
note={Open software from https://github.com/phurwicz/hover},
author={
Pavel Hurwicz and
Haochuan Wei},
year={2021},
}