Skip to main content

Basic implementation of clustering algorithms in MeTTa language, including k-means, GMM, spectral clustering, and hierarchical

Project description

metta-ul: Clustering Algorithms in MeTTa

Overview

metta-ul is a basic implementation of clustering algorithms in the MeTTa language. It includes implementations of:

  • K-Means
  • Gaussian Mixture Models (GMM)
  • Spectral Clustering
  • Hierarchical Clustering

This project is packaged as a Python module and includes a Dockerized environment for running tests using pytest.

Authors

Requirements

  • Python 3.7 or later
  • Docker
  • hyperon >= 0.2.2
  • scikit-learn

Installation

Using pip

pip install -e .

Using Docker

Build and run the containerized environment:

docker build . -t metta_ul

Running Tests

Running tests inside Docker

You can run tests using the provided Makefile. This will:

  1. Build the Docker image
  2. Run tests inside a container
  3. Clean up the container after the test run

To execute:

make test

Alternatively, if you want to run pytest directly inside Docker:

docker run -it --rm --mount type=bind,src=$(pwd),dst=/app --name metta_ul_run metta_ul pytest -s

Contributing

  1. Fork the repository
  2. Create a new branch (feature-branch)
  3. Commit changes and push to your branch
  4. Submit a pull request

License

This project is licensed under the MIT License.

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

metta_ul-0.1.0.tar.gz (26.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

metta_ul-0.1.0-py3-none-any.whl (21.2 kB view details)

Uploaded Python 3

File details

Details for the file metta_ul-0.1.0.tar.gz.

File metadata

  • Download URL: metta_ul-0.1.0.tar.gz
  • Upload date:
  • Size: 26.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for metta_ul-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e2ef3de55ae084add02b715cc9fb24c12f5846ab6491ce76ffd18b0127680ded
MD5 90ba0c72e775aeea663ff2adf608ec9a
BLAKE2b-256 97ccc528d0ebcdf1ff2eec6fb9608c390bcda75e6fe5e367ccf2d4411b914aef

See more details on using hashes here.

File details

Details for the file metta_ul-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: metta_ul-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 21.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for metta_ul-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b56dbd2953d7cdb7ee44b287b71a69ed815b99087460af37f7e3101f0d8bcbff
MD5 c9fca335f4d6e53b75b9cdee887dd00f
BLAKE2b-256 8cb3fabca65cd6cd5e4db8e53f4b83601986c79d055f4ed0722f4aecda545c99

See more details on using hashes here.

Supported by

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