/gmcluster

EM Clustering Algorithm

Primary LanguagePythonBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

GMCluster

GMCluster: An Unsupervised Algorithm for Modeling Gaussian Mixtures

This is an EM-based clustering package for python that is based on the following C package: >https://engineering.purdue.edu/~bouman/software/cluster/

The documentation for this package is available here: >https://gmcluster.readthedocs.io/

Installing

  1. Clone or download the repository and get inside:
git clone https://github.com/cabouman/gmcluster.git
cd gmcluster
  1. Install the conda environment and package

    1. Option 1: Clean install from dev_scripts

      *****You can skip all other steps if you do a clean install.****

      To do a clean install, use the command:

      cd dev_scripts
      source clean_install_all.sh
      cd ..
      
    2. Option 2: Manual install

      1. Create conda environment:

        Create a new conda environment named gmcluster using the following commands:

        conda create --name gmcluster python=3.9
        conda activate gmcluster
        pip install -r requirements.txt
        

        Anytime you want to use this package, this gmcluster environment should be activated with the following:

        conda activate gmcluster
        
      2. Install gmcluster package:

        Use the following command to install the package.

        pip install .
        

        To allow editing of the package source while using the package, use

        pip install -e .
        
      3. Build the documentation:

        Use the following command to build the documentation.

        cd docs
        pip install -r requirements.txt
        make clean html
        cd ..
        

Running Demo(s)

You can validate the installation by running demo scripts.

cd demo
python demo_1.py