A lightweight Python package for loading, analyzing, and visualizing word embeddings.
Project description
WordViz is a Python visualization library designed for exploring and visualizing word embeddings. Built on top of popular libraries such as matplotlib, plotly, and gensim, WordViz provides intuitive tools for analyzing embeddings through clustering, similarity exploration, and dimensionality reduction, all wrapped in interactive and customizable plots.
With WordViz, users can gain insights into the structure of their word embeddings, making it a valuable tool for researchers and practitioners in natural language processing.
This project was created as part of my Bachelor's Degree thesis in Statistics and Information Management with title (translated): "Word Embeddings in Practice: Designing a Library for Visualization and Operations"
version 0.2.0
https://pypi.org/project/wordviz/
Last Version Updates
- new class Visualizer3D and parent class BaseVisualizer
- new 'reduced' parameter to Visualizer classes and 'auto' value for red_method in plot functions to automatically use cached reduced embeddings
- private _set_embeddings function to handle embeddings use
- 4 options of 3D plots analogous to 2D versions
- 4 new aesthetic themes: light2, dark2, light3, dark3
- optimized available pretrained json structure
See more about previous changes in CHANGELOG.md
Main Features
- Load and explore pretrained embeddings (e.g., GloVe, FastText)
- Select from a variety of available embeddings
- Visualize embeddings in 2D or 3D with flexible dimensionality reduction options
- Identify and plot the most similar words to a given token
- Visualize clusters of related words
- Interactive plots powered by
plotly - Support for many light and dark themes
Installation
Install the latest version from PyPI:
pip install wordviz
Notes: Python version compatibility
Currently, wordviz is not compatible with Python 3.13, due to limitations of some key dependencies:
gensim, one of the core libraries used by wordviz, does not yet provide official support or precompiled wheels for Python 3.13.
For proper installation installation, we recommend that you create a virtual environment with Python 3.12, or just use uv:
uv init --python 3.12
The package will be updated as soon as the dependencies are compatible with Python 3.13.
Usage
You can load and manage embeddings though the EmbeddingLoader class, and then visualize them with the Visualizer (or Visualizer3D) class.
from wordviz.loading import EmbeddingLoader
from wordviz.plotting import Visualizer
loader = EmbeddingLoader()
loader.load_from_file('path/to/your/embedding/file', 'word2vec')
vis = Visualizer(loader)
vis.plot_embeddings()
You can explore all functionalities through the example notebook provided in the docs/ folder:
Contributing
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
License
This project is licensed under the MIT License.
Contacts
Elena Zen - My Portfolio Website - info.elenazen@gmail.com
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.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file wordviz-0.2.0.tar.gz.
File metadata
- Download URL: wordviz-0.2.0.tar.gz
- Upload date:
- Size: 17.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.2 CPython/3.12.6 Windows/11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
85560bea5303be1b86b552959ca847ef7bdb651de38667359edc3fca8db17776
|
|
| MD5 |
4351e5fe6c7f11d45a198e60441c2c52
|
|
| BLAKE2b-256 |
36aee030bf9715f673846006c4def155f27b4737a7507d48bb3b5cbec44d1bd2
|
File details
Details for the file wordviz-0.2.0-py3-none-any.whl.
File metadata
- Download URL: wordviz-0.2.0-py3-none-any.whl
- Upload date:
- Size: 20.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.2 CPython/3.12.6 Windows/11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8af8927b0c217caa6e0e808a3a4c77cea5b6eb7d4f477b6b7f1116e884148606
|
|
| MD5 |
c4c60d3031a802412d81003adfab4024
|
|
| BLAKE2b-256 |
423eb1ad99d4d4348dcc71160de9488aae6ed1e6a7c73b1ca0342983dbbce1ca
|