Skip to main content

A Python package to run WizMap in your computational notebooks.

Project description

WizMap

build license npm pypi colab Binder arxiv badge

Exploring and interpreting large embeddings in your browser!

🚀 Live Demo 📺 Demo Video 📖 Research Paper

What is WizMap?

WizMap is a scalable interactive visualization tool to help you easily explore large machine learning embeddings. With a novel multi-resolution embedding summarization method and a familiar map-like interaction design, WizMap allows you to navigate and interpret embedding spaces with ease.

Scalable to millions of embedding point
Multi-resolution embedding summaries
Fast embedding search
Multimodal data (text and image)
Animated embedding evolution
Support computational notebooks (e.g., Jupyter, Colab, VS Code)
Sharable URLs

WizMap Gallery

DiffusionDB Prompts + Images ACL Paper Abstracts IMDB Review Comments
1.8M text + 1.8M images 63k text 25k text
CLIP Embedding all-MiniLM-L6-v2 Embedding all-MiniLM-L6-v2 Embedding

Submit a PR to add your WizMap here! You can share your WizMap using a unique URL.

Web Demo

For a live web demo, visit: https://poloclub.github.io/wizmap.

Get Started

Clone or download this repository:

git clone git@github.com:poloclub/wizmap.git

Install the dependencies:

npm install

Then run WizMap:

npm run dev

Navigate to localhost:3000. You should see WizMap running in your browser :)

Use My Own Embeddings

To use WizMap with your embeddings, you first need to install the wizmap Python library.

pip install wizmap

Then take a look at this notebook for a detailed guide. Spoiler alert: You'll be up and running with just two function calls from the wizmap library. These two JSON files contain pre-computed embedding summaries, distributions, and the original embedding data.

After generating the JSON files, you have two options to use WizMap.

  1. Browser: You can click the folder icon on the bottom right of the WizMap demo and enter the URLs to the JSON files in the pop-up window.
  2. Notebook: If you are familiar with computational notebooks (e.g., Jupyter Notebook, VSCode Notebook, Colab), you can directly use WizMap in your favorite notebook platform with wizmap.visualize().

Share My WizMap

You can easily share your embedding maps with collaborators by copying the unique URL of WizMap from your browser. For example, the URL below points to an IMDB embedding in WizMap.

https://poloclub.github.io/wizmap/?dataURL=https%3A%2F%2Fhuggingface.co%2Fdatasets%2Fxiaohk%2Fembeddings%2Fresolve%2Fmain%2Fimdb%2Fdata.ndjson&gridURL=https%3A%2F%2Fhuggingface.co%2Fdatasets%2Fxiaohk%2Fembeddings%2Fresolve%2Fmain%2Fimdb%2Fgrid.json

Credits

WizMap is created by Jay Wang, Fred Hohman, and Polo Chau.

Citation

To learn more about WizMap, please read our research paper (published at ACL'23 System Demonstration).

@article{wangWizMapScalableInteractive2023,
  title = {{{WizMap}}: {{Scalable Interactive Visualization}} for {{Exploring Large Machine Learning Embeddings}}},
  shorttitle = {{{WizMap}}},
  author = {Wang, Zijie J. and Hohman, Fred and Chau, Duen Horng},
  year = {2023},
  url = {http://arxiv.org/abs/2306.09328},
  urldate = {2023-06-16},
  archiveprefix = {arxiv},
  journal = {arXiv 2306.09328}
}

License

The software is available under the MIT License.

Contact

If you have any questions, feel free to open an issue or contact Jay Wang.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wizmap-0.1.3.tar.gz (402.4 kB view details)

Uploaded Source

Built Distribution

wizmap-0.1.3-py2.py3-none-any.whl (406.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file wizmap-0.1.3.tar.gz.

File metadata

  • Download URL: wizmap-0.1.3.tar.gz
  • Upload date:
  • Size: 402.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.12

File hashes

Hashes for wizmap-0.1.3.tar.gz
Algorithm Hash digest
SHA256 bfdd3cca6a9c620b5843d4582dec2f8fa95c4a537ab0a3874fbe0654b12f2e63
MD5 cc792cf5de132cd6631751b8829106a0
BLAKE2b-256 4dee673cd92439117cb1c86edec298b28b1dda54cfc29b18ea33ac4f5b770fa0

See more details on using hashes here.

File details

Details for the file wizmap-0.1.3-py2.py3-none-any.whl.

File metadata

  • Download URL: wizmap-0.1.3-py2.py3-none-any.whl
  • Upload date:
  • Size: 406.5 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.12

File hashes

Hashes for wizmap-0.1.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 ea4c5fba7120ec8011fbcfe80c4291b18c54647e5eb423ce4f4747ed173bba2f
MD5 16aff429a8b7ff3d4fa53a3fcee2804e
BLAKE2b-256 44e26beb6a0d1b5be0339eb0a2a7eaa01a3ca2e3e9ca3bb575e2383abff89978

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page