wizmap


Namewizmap JSON
Version 0.1.3 PyPI version JSON
download
home_pagehttps://github.com/poloclub/wizmap
SummaryA Python package to run WizMap in your computational notebooks.
upload_time2024-01-27 18:51:07
maintainer
docs_urlNone
authorJay Wang
requires_python>=3.6
licenseMIT license
keywords jupyter jupyterlab jupyterlab3 machine learning visualization interactive visualization embeddings
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # WizMap <a href="https://poloclub.github.io/wizmap/"><img align="right" src="../src/imgs/icon-wizmap.svg" height="38"></img></a>

[![build](https://github.com/poloclub/wizmap/actions/workflows/build.yml/badge.svg)](https://github.com/poloclub/wizmap/actions/workflows/build.yml)
[![license](https://img.shields.io/badge/License-MIT-success)](https://github.com/poloclub/wizmap/blob/main/LICENSE)
[![npm](https://img.shields.io/npm/v/wizmap?color=red)](https://www.npmjs.com/package/wizmap)
[![pypi](https://img.shields.io/pypi/v/wizmap?color=blue)](https://pypi.python.org/pypi/wizmap)
[![colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/drive/1GNdmBnc5UA7OYBZPtHu244eiAN-0IMZA?usp=sharing)
[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/poloclub/wizmap/master?urlpath=lab/tree/example/imdb.ipynb)
[![arxiv badge](https://img.shields.io/badge/arXiv-2306.09328-red)](https://arxiv.org/abs/2306.09328)

<!-- [![DOI:10.1145/3491101.3519653](https://img.shields.io/badge/DOI-10.1145/3491101.3519653-blue)](https://doi.org/10.1145/3491101.3519653) -->

Exploring and interpreting large embeddings in your browser!

<table>
  <tr>
    <td colspan="3"><video width="100%" src='https://github.com/poloclub/wizmap/assets/15007159/26d26336-e611-4d00-b535-8837da59be82'></td>
  </tr>
  <tr></tr>
  <tr>
    <td><a href="https://poloclub.github.io/wizmap">🚀 Live Demo</a></td>
    <td><a href="https://youtu.be/8fJG87QVceQ">📺 Demo Video</a></td>
    <td><a href="https://arxiv.org/abs/2306.09328">📖 Research Paper</a></td>
  </tr>
</table>

## 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.

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

## WizMap Gallery

<table>
  <tr>
    <td><a href="https://poloclub.github.io/wizmap/?dataset=diffusiondb"><img src="https://i.imgur.com/hTcu3rJ.jpg" width="100%"></a></td>
    <td><a href="https://poloclub.github.io/wizmap/?dataset=diffusiondb"><img src="https://i.imgur.com/AYUEHWz.png" width="100%"></a></td>
    <td><a href="https://poloclub.github.io/wizmap/?dataset=diffusiondb"><img src="https://i.imgur.com/iyBzqHQ.png" width="100%"></a></td>
  </tr>
  <tr></tr>
  <tr>
    <td><a href="https://poloclub.github.io/wizmap/?dataset=diffusiondb">DiffusionDB Prompts + Images</a></td>
    <td><a href="https://poloclub.github.io/wizmap/?dataset=acl-abstracts">ACL Paper Abstracts</a></td>
    <td><a href="https://poloclub.github.io/wizmap/?dataset=imdb">IMDB Review Comments</a></td>
  </tr>
  <tr></tr>
  <tr>
    <td>1.8M text + 1.8M images</a></td>
    <td>63k text</td>
    <td>25k text</td>
  </tr>
  <tr></tr>
  <tr>
    <td><code>CLIP</code> Embedding</td>
    <td><code>all-MiniLM-L6-v2</code> Embedding</td>
    <td><code>all-MiniLM-L6-v2</code> Embedding</td>
  </tr>
  <tr></tr>
</table>

[Submit a PR](https://github.com/poloclub/wizmap/pulls) to add your WizMap here! You can share your WizMap using a [unique URL](#share-my-wizmap).

## Web Demo

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

## Get Started

Clone or download this repository:

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

Install the dependencies:

```bash
npm install
```

Then run WizMap:

```bash
npm run dev
```

Navigate to [localhost:3000](https://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.

```bash
pip install wizmap
```

Then take a look at this [notebook](./example/imdb.ipynb) 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](https://poloclub.github.io/wizmap/) 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](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) 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 <a href='https://zijie.wang/' target='_blank'>Jay Wang</a>, <a href='http://fredhohman.com/' target='_blank'>Fred Hohman</a>, and <a href='https://poloclub.github.io/polochau/' target='_blank'>Polo Chau</a>.

## Citation

To learn more about WizMap, please read our [research paper](https://arxiv.org/abs/2306.09328) (published at [ACL'23 System Demonstration](https://2023.aclweb.org/program/accepted_system_demonstration/)).

```bibtex
@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](https://github.com/poloclub/wizmap/blob/master/LICENSE).

## Contact

If you have any questions, feel free to [open an issue](https://github.com/poloclub/wizmap/issues/new) or contact [Jay Wang](https://zijie.wang).

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/poloclub/wizmap",
    "name": "wizmap",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "",
    "keywords": "Jupyter,JupyterLab,JupyterLab3,Machine Learning,Visualization,Interactive Visualization,Embeddings",
    "author": "Jay Wang",
    "author_email": "jayw@zijie.wang",
    "download_url": "https://files.pythonhosted.org/packages/4d/ee/673cd92439117cb1c86edec298b28b1dda54cfc29b18ea33ac4f5b770fa0/wizmap-0.1.3.tar.gz",
    "platform": "Linux",
    "description": "# WizMap <a href=\"https://poloclub.github.io/wizmap/\"><img align=\"right\" src=\"../src/imgs/icon-wizmap.svg\" height=\"38\"></img></a>\n\n[![build](https://github.com/poloclub/wizmap/actions/workflows/build.yml/badge.svg)](https://github.com/poloclub/wizmap/actions/workflows/build.yml)\n[![license](https://img.shields.io/badge/License-MIT-success)](https://github.com/poloclub/wizmap/blob/main/LICENSE)\n[![npm](https://img.shields.io/npm/v/wizmap?color=red)](https://www.npmjs.com/package/wizmap)\n[![pypi](https://img.shields.io/pypi/v/wizmap?color=blue)](https://pypi.python.org/pypi/wizmap)\n[![colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/drive/1GNdmBnc5UA7OYBZPtHu244eiAN-0IMZA?usp=sharing)\n[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/poloclub/wizmap/master?urlpath=lab/tree/example/imdb.ipynb)\n[![arxiv badge](https://img.shields.io/badge/arXiv-2306.09328-red)](https://arxiv.org/abs/2306.09328)\n\n<!-- [![DOI:10.1145/3491101.3519653](https://img.shields.io/badge/DOI-10.1145/3491101.3519653-blue)](https://doi.org/10.1145/3491101.3519653) -->\n\nExploring and interpreting large embeddings in your browser!\n\n<table>\n  <tr>\n    <td colspan=\"3\"><video width=\"100%\" src='https://github.com/poloclub/wizmap/assets/15007159/26d26336-e611-4d00-b535-8837da59be82'></td>\n  </tr>\n  <tr></tr>\n  <tr>\n    <td><a href=\"https://poloclub.github.io/wizmap\">\ud83d\ude80 Live Demo</a></td>\n    <td><a href=\"https://youtu.be/8fJG87QVceQ\">\ud83d\udcfa Demo Video</a></td>\n    <td><a href=\"https://arxiv.org/abs/2306.09328\">\ud83d\udcd6 Research Paper</a></td>\n  </tr>\n</table>\n\n## What is WizMap?\n\nWizMap 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.\n\n<table>\n  <tr>\n    <td>\u2705</td>\n    <td>Scalable to <strong>millions</strong> of embedding point</td>\n  </tr>\n  <tr></tr>\n  <tr>\n    <td>\u2705</td>\n    <td><strong>Multi-resolution</strong> embedding summaries</td>\n  </tr>\n  <tr></tr>\n  <tr>\n    <td>\u2705</td>\n    <td><strong>Fast</strong> embedding search</td>\n  </tr>\n  <tr></tr>\n    <tr>\n    <td>\u2705</td>\n    <td><strong>Multimodal</strong> data (text and image)</td>\n  </tr>\n  <tr></tr>\n  <tr>\n    <td>\u2705</td>\n    <td>Animated <strong>embedding evolution</strong></td>\n  </tr>\n  <tr></tr>\n  <tr>\n    <td>\u2705</td>\n    <td>Support <strong>computational notebooks</strong> (e.g., Jupyter, Colab, VS Code)</td>\n  </tr>\n  <tr></tr>\n  <tr>\n    <td>\u2705</td>\n    <td><strong>Sharable URLs</strong></td>\n  </tr>\n  <tr></tr>\n</table>\n\n## WizMap Gallery\n\n<table>\n  <tr>\n    <td><a href=\"https://poloclub.github.io/wizmap/?dataset=diffusiondb\"><img src=\"https://i.imgur.com/hTcu3rJ.jpg\" width=\"100%\"></a></td>\n    <td><a href=\"https://poloclub.github.io/wizmap/?dataset=diffusiondb\"><img src=\"https://i.imgur.com/AYUEHWz.png\" width=\"100%\"></a></td>\n    <td><a href=\"https://poloclub.github.io/wizmap/?dataset=diffusiondb\"><img src=\"https://i.imgur.com/iyBzqHQ.png\" width=\"100%\"></a></td>\n  </tr>\n  <tr></tr>\n  <tr>\n    <td><a href=\"https://poloclub.github.io/wizmap/?dataset=diffusiondb\">DiffusionDB Prompts + Images</a></td>\n    <td><a href=\"https://poloclub.github.io/wizmap/?dataset=acl-abstracts\">ACL Paper Abstracts</a></td>\n    <td><a href=\"https://poloclub.github.io/wizmap/?dataset=imdb\">IMDB Review Comments</a></td>\n  </tr>\n  <tr></tr>\n  <tr>\n    <td>1.8M text + 1.8M images</a></td>\n    <td>63k text</td>\n    <td>25k text</td>\n  </tr>\n  <tr></tr>\n  <tr>\n    <td><code>CLIP</code> Embedding</td>\n    <td><code>all-MiniLM-L6-v2</code> Embedding</td>\n    <td><code>all-MiniLM-L6-v2</code> Embedding</td>\n  </tr>\n  <tr></tr>\n</table>\n\n[Submit a PR](https://github.com/poloclub/wizmap/pulls) to add your WizMap here! You can share your WizMap using a [unique URL](#share-my-wizmap).\n\n## Web Demo\n\nFor a live web demo, visit: <https://poloclub.github.io/wizmap>.\n\n## Get Started\n\nClone or download this repository:\n\n```bash\ngit clone git@github.com:poloclub/wizmap.git\n```\n\nInstall the dependencies:\n\n```bash\nnpm install\n```\n\nThen run WizMap:\n\n```bash\nnpm run dev\n```\n\nNavigate to [localhost:3000](https://localhost:3000). You should see WizMap running in your browser :)\n\n## Use My Own Embeddings\n\nTo use WizMap with your embeddings, you first need to install the `wizmap` Python library.\n\n```bash\npip install wizmap\n```\n\nThen take a look at this [notebook](./example/imdb.ipynb) 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.\n\nAfter generating the JSON files, you have two options to use WizMap.\n\n1. **Browser**: You can click the folder icon on the bottom right of the [WizMap demo](https://poloclub.github.io/wizmap/) and enter the URLs to the JSON files in the pop-up window.\n2. **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()`.\n\n## Share My WizMap\n\nYou can easily share your embedding maps with collaborators by copying the unique URL of WizMap from your browser. For example, the [URL below](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) points to an IMDB embedding in WizMap.\n\n```\nhttps://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\n```\n\n## Credits\n\nWizMap is created by <a href='https://zijie.wang/' target='_blank'>Jay Wang</a>, <a href='http://fredhohman.com/' target='_blank'>Fred Hohman</a>, and <a href='https://poloclub.github.io/polochau/' target='_blank'>Polo Chau</a>.\n\n## Citation\n\nTo learn more about WizMap, please read our [research paper](https://arxiv.org/abs/2306.09328) (published at [ACL'23 System Demonstration](https://2023.aclweb.org/program/accepted_system_demonstration/)).\n\n```bibtex\n@article{wangWizMapScalableInteractive2023,\n  title = {{{WizMap}}: {{Scalable Interactive Visualization}} for {{Exploring Large Machine Learning Embeddings}}},\n  shorttitle = {{{WizMap}}},\n  author = {Wang, Zijie J. and Hohman, Fred and Chau, Duen Horng},\n  year = {2023},\n  url = {http://arxiv.org/abs/2306.09328},\n  urldate = {2023-06-16},\n  archiveprefix = {arxiv},\n  journal = {arXiv 2306.09328}\n}\n```\n\n## License\n\nThe software is available under the [MIT License](https://github.com/poloclub/wizmap/blob/master/LICENSE).\n\n## Contact\n\nIf you have any questions, feel free to [open an issue](https://github.com/poloclub/wizmap/issues/new) or contact [Jay Wang](https://zijie.wang).\n",
    "bugtrack_url": null,
    "license": "MIT license",
    "summary": "A Python package to run WizMap in your computational notebooks.",
    "version": "0.1.3",
    "project_urls": {
        "Homepage": "https://github.com/poloclub/wizmap"
    },
    "split_keywords": [
        "jupyter",
        "jupyterlab",
        "jupyterlab3",
        "machine learning",
        "visualization",
        "interactive visualization",
        "embeddings"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "44e26beb6a0d1b5be0339eb0a2a7eaa01a3ca2e3e9ca3bb575e2383abff89978",
                "md5": "16aff429a8b7ff3d4fa53a3fcee2804e",
                "sha256": "ea4c5fba7120ec8011fbcfe80c4291b18c54647e5eb423ce4f4747ed173bba2f"
            },
            "downloads": -1,
            "filename": "wizmap-0.1.3-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "16aff429a8b7ff3d4fa53a3fcee2804e",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": ">=3.6",
            "size": 406542,
            "upload_time": "2024-01-27T18:51:05",
            "upload_time_iso_8601": "2024-01-27T18:51:05.619591Z",
            "url": "https://files.pythonhosted.org/packages/44/e2/6beb6a0d1b5be0339eb0a2a7eaa01a3ca2e3e9ca3bb575e2383abff89978/wizmap-0.1.3-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4dee673cd92439117cb1c86edec298b28b1dda54cfc29b18ea33ac4f5b770fa0",
                "md5": "cc792cf5de132cd6631751b8829106a0",
                "sha256": "bfdd3cca6a9c620b5843d4582dec2f8fa95c4a537ab0a3874fbe0654b12f2e63"
            },
            "downloads": -1,
            "filename": "wizmap-0.1.3.tar.gz",
            "has_sig": false,
            "md5_digest": "cc792cf5de132cd6631751b8829106a0",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 402395,
            "upload_time": "2024-01-27T18:51:07",
            "upload_time_iso_8601": "2024-01-27T18:51:07.889545Z",
            "url": "https://files.pythonhosted.org/packages/4d/ee/673cd92439117cb1c86edec298b28b1dda54cfc29b18ea33ac4f5b770fa0/wizmap-0.1.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-01-27 18:51:07",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "poloclub",
    "github_project": "wizmap",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "wizmap"
}
        
Elapsed time: 0.19896s