CS 4641: Unsupervised Learning and Dimensionality Reduction
Author: Bradley Reardon

Code

    Code can be found at https://github.com/bradreardon/cs4641-unsupervised-learning-dimensionality-reduction.

Requirements

    - Only tested with Python 3.7+ (though lower in-support versions of Python 3 may be sufficient)
    - Packages specified in `requirements.txt`:
        - Install with `pip install -r requirements.txt`

    Before running, make sure that the `out` directory exists and has the correct directory structure. This can be done
    by running run.sh.

Running

    `main.py` provides usage instructions. In general, commands follow the format `python main.py <algorithm>`.

    Examples can be found in `run.sh`.

    Running each script will output statistics (and warnings!) for the training of the algorithm, and will export charts
    to subdirectories of the `out` directory.

Attribution

    scikit-learn provided excellent documentation, and some of the charts generated by this program can be found in the
    scikit-learn documentation. Namely, the boosting error chart was modified from the documentation online.