interdim


Nameinterdim JSON
Version 1.0.2 PyPI version JSON
download
home_pageNone
SummaryInteractive Dimensionality Reduction, Clustering, and Visualization
upload_time2024-10-16 17:40:06
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseBSD-3-Clause
keywords dimensionality reduction clustering visualization machine learning data analysis
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # InterDim
[![Docs and Tests](https://github.com/MShinkle/interdim/actions/workflows/docs.yml/badge.svg?branch=main&label=tests)](https://github.com/MShinkle/interdim/actions)
![Python Versions](https://img.shields.io/pypi/pyversions/interdim.svg)
[![License](https://img.shields.io/badge/license-BSD--3--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause)
[![Docs](https://img.shields.io/badge/docs-GitHub%20Pages-blue.svg)](https://MShinkle.github.io/interdim)

### Interactive Dimensionality Reduction, Clustering, and Visualization

InterDim is a Python package for interactive exploration of latent data dimensions. It wraps existing tools for dimensionality reduction, clustering, and data visualization in a streamlined interface, allowing for quick and intuitive analysis of high-dimensional data.

## Features

- Easy-to-use pipeline for dimensionality reduction, clustering, and visualization
- Interactive 3D scatter plots for exploring reduced data
- Support for various dimensionality reduction techniques (PCA, t-SNE, UMAP, etc.)
- Multiple clustering algorithms (K-means, DBSCAN, etc.)
- Customizable point visualizations for detailed data exploration

## Installation

You can install from [PyPI](https://pypi.org/project/interdim/) via `pip` (recommended):

```bash
pip install interdim
```

Or from source:

```bash
git clone https://github.com/MShinkle/interdim.git
cd interdim
pip install .
```

## Quick Start

Here's a basic example using the Iris dataset:

```python
from sklearn.datasets import load_iris
from interdim import InterDimAnalysis

iris = load_iris()
analysis = InterDimAnalysis(iris.data, true_labels=iris.target)
analysis.reduce(method='tsne', n_components=3)
analysis.cluster(method='kmeans', n_clusters=3)
analysis.show(n_components=3, point_visualization='bar')
```

![3D Scatter Plot with Interactive Bar Charts](https://raw.githubusercontent.com/MShinkle/interdim/refs/heads/main/docs/images/iris_plot.png)

This will reduce the Iris dataset to 3 dimensions using t-SNE, clusters the data using K-means, and displays an interactive 3D scatter plot with bar charts for each data point as you hover over them.

However, this is just a small example of what you can do with InterDim. You can use it to explore all sorts of data, including high-dimensional data like language model embeddings!

## Demo Notebooks

For more in-depth examples and use cases, check out our demo notebooks:

1. [Iris Species Analysis](https://github.com/MShinkle/interdim/blob/main/notebooks/IRIS_visualization.ipynb): Basic usage with the classic Iris dataset.
![Iris Species Analysis](https://raw.githubusercontent.com/MShinkle/interdim/refs/heads/main/docs/images/iris_plot_pretty.png)

2. [DNN Latent Space Exploration](https://github.com/MShinkle/interdim/blob/main/notebooks/DNN_latents.ipynb): Visualizing deep neural network activations.
![DNN Latent Space Exploration](https://raw.githubusercontent.com/MShinkle/interdim/refs/heads/main/docs/images/fashion_plot.png)

3. [LLM Token Analysis](https://github.com/MShinkle/interdim/blob/main/notebooks/LLM_token_embeddings.ipynb): Exploring language model token embeddings and layer activations.
![LLM Token Analysis](https://raw.githubusercontent.com/MShinkle/interdim/refs/heads/main/docs/images/llm_weevil.png)

## Documentation

For detailed API documentation and advanced usage, visit our [GitHub Pages](https://MShinkle.github.io/interdim).

## Contributing

We welcome discussion and contributions!

## License

InterDim is released under the BSD 3-Clause License. See the [LICENSE](https://github.com/MShinkle/interdim/blob/main/LICENSE) file for details.

## Contact

For questions and feedback, please [open an issue](https://github.com/MShinkle/interdim/issues) on GitHub.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "interdim",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "dimensionality reduction, clustering, visualization, machine learning, data analysis",
    "author": null,
    "author_email": "Matthew Shinkle <matthewshinkle@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/f5/df/ba86d68e63ec0a6dbf04c4bb100c793fb978eab9509d0f04c0f5c59a78a6/interdim-1.0.2.tar.gz",
    "platform": null,
    "description": "# InterDim\n[![Docs and Tests](https://github.com/MShinkle/interdim/actions/workflows/docs.yml/badge.svg?branch=main&label=tests)](https://github.com/MShinkle/interdim/actions)\n![Python Versions](https://img.shields.io/pypi/pyversions/interdim.svg)\n[![License](https://img.shields.io/badge/license-BSD--3--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause)\n[![Docs](https://img.shields.io/badge/docs-GitHub%20Pages-blue.svg)](https://MShinkle.github.io/interdim)\n\n### Interactive Dimensionality Reduction, Clustering, and Visualization\n\nInterDim is a Python package for interactive exploration of latent data dimensions. It wraps existing tools for dimensionality reduction, clustering, and data visualization in a streamlined interface, allowing for quick and intuitive analysis of high-dimensional data.\n\n## Features\n\n- Easy-to-use pipeline for dimensionality reduction, clustering, and visualization\n- Interactive 3D scatter plots for exploring reduced data\n- Support for various dimensionality reduction techniques (PCA, t-SNE, UMAP, etc.)\n- Multiple clustering algorithms (K-means, DBSCAN, etc.)\n- Customizable point visualizations for detailed data exploration\n\n## Installation\n\nYou can install from [PyPI](https://pypi.org/project/interdim/) via `pip` (recommended):\n\n```bash\npip install interdim\n```\n\nOr from source:\n\n```bash\ngit clone https://github.com/MShinkle/interdim.git\ncd interdim\npip install .\n```\n\n## Quick Start\n\nHere's a basic example using the Iris dataset:\n\n```python\nfrom sklearn.datasets import load_iris\nfrom interdim import InterDimAnalysis\n\niris = load_iris()\nanalysis = InterDimAnalysis(iris.data, true_labels=iris.target)\nanalysis.reduce(method='tsne', n_components=3)\nanalysis.cluster(method='kmeans', n_clusters=3)\nanalysis.show(n_components=3, point_visualization='bar')\n```\n\n![3D Scatter Plot with Interactive Bar Charts](https://raw.githubusercontent.com/MShinkle/interdim/refs/heads/main/docs/images/iris_plot.png)\n\nThis will reduce the Iris dataset to 3 dimensions using t-SNE, clusters the data using K-means, and displays an interactive 3D scatter plot with bar charts for each data point as you hover over them.\n\nHowever, this is just a small example of what you can do with InterDim. You can use it to explore all sorts of data, including high-dimensional data like language model embeddings!\n\n## Demo Notebooks\n\nFor more in-depth examples and use cases, check out our demo notebooks:\n\n1. [Iris Species Analysis](https://github.com/MShinkle/interdim/blob/main/notebooks/IRIS_visualization.ipynb): Basic usage with the classic Iris dataset.\n![Iris Species Analysis](https://raw.githubusercontent.com/MShinkle/interdim/refs/heads/main/docs/images/iris_plot_pretty.png)\n\n2. [DNN Latent Space Exploration](https://github.com/MShinkle/interdim/blob/main/notebooks/DNN_latents.ipynb): Visualizing deep neural network activations.\n![DNN Latent Space Exploration](https://raw.githubusercontent.com/MShinkle/interdim/refs/heads/main/docs/images/fashion_plot.png)\n\n3. [LLM Token Analysis](https://github.com/MShinkle/interdim/blob/main/notebooks/LLM_token_embeddings.ipynb): Exploring language model token embeddings and layer activations.\n![LLM Token Analysis](https://raw.githubusercontent.com/MShinkle/interdim/refs/heads/main/docs/images/llm_weevil.png)\n\n## Documentation\n\nFor detailed API documentation and advanced usage, visit our [GitHub Pages](https://MShinkle.github.io/interdim).\n\n## Contributing\n\nWe welcome discussion and contributions!\n\n## License\n\nInterDim is released under the BSD 3-Clause License. See the [LICENSE](https://github.com/MShinkle/interdim/blob/main/LICENSE) file for details.\n\n## Contact\n\nFor questions and feedback, please [open an issue](https://github.com/MShinkle/interdim/issues) on GitHub.\n",
    "bugtrack_url": null,
    "license": "BSD-3-Clause",
    "summary": "Interactive Dimensionality Reduction, Clustering, and Visualization",
    "version": "1.0.2",
    "project_urls": {
        "Bug Tracker": "https://github.com/MShinkle/interdim/issues",
        "Homepage": "https://github.com/MShinkle/interdim"
    },
    "split_keywords": [
        "dimensionality reduction",
        " clustering",
        " visualization",
        " machine learning",
        " data analysis"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "da8fde0fca95559f7a3bf377bdd6fdb580ddeb5e290b5d338e2c2a6f56952a3e",
                "md5": "79dc7dc49e5df542566fdc3014284604",
                "sha256": "b71309b19f34e17508cb40d714bf6326f2166689faa625d00b04a2e4f1456283"
            },
            "downloads": -1,
            "filename": "interdim-1.0.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "79dc7dc49e5df542566fdc3014284604",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 13436,
            "upload_time": "2024-10-16T17:40:05",
            "upload_time_iso_8601": "2024-10-16T17:40:05.510606Z",
            "url": "https://files.pythonhosted.org/packages/da/8f/de0fca95559f7a3bf377bdd6fdb580ddeb5e290b5d338e2c2a6f56952a3e/interdim-1.0.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f5dfba86d68e63ec0a6dbf04c4bb100c793fb978eab9509d0f04c0f5c59a78a6",
                "md5": "2ec49670464be6513844154dff56b47f",
                "sha256": "cfa03001bfcc8dcf6e3cc251f3f471b873d2f41dc1d7cb7063c529605377792f"
            },
            "downloads": -1,
            "filename": "interdim-1.0.2.tar.gz",
            "has_sig": false,
            "md5_digest": "2ec49670464be6513844154dff56b47f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 14379,
            "upload_time": "2024-10-16T17:40:06",
            "upload_time_iso_8601": "2024-10-16T17:40:06.573576Z",
            "url": "https://files.pythonhosted.org/packages/f5/df/ba86d68e63ec0a6dbf04c4bb100c793fb978eab9509d0f04c0f5c59a78a6/interdim-1.0.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-16 17:40:06",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "MShinkle",
    "github_project": "interdim",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "interdim"
}
        
Elapsed time: 0.69981s