pyhd

Hyperdimensional computing for machine learning


License
MIT
Install
pip install pyhd==0.1

Documentation

hd-lib

Description

Hyperdimensionality computing library for machine learning. This package aims to contain everything needed for training HD models with different settings using various datasets; there are some included in the package.

Getting started

Prerequisites

In order to test the code, please make sure you have python 3 installed and the python libraries required:

python3 -m pip install xlsxwriter
python3 -m pip install sklearn
python3 -m pip install numpy
python3 -m pip install tqdm
python3 -m pip install multiprocess

Contributing

If you plan on contribute to the project and you are confused, please read the documentation under ./doc. It describes the code layout and relationships between files and directories. It also contains several examples on how to use the package.

Testing

If you only plan to test the existing code, make sure you have the following directories created in the project source:

mkdir ./encoded/
mkdir ./models/
mkdir ./out/
mkdir ./out/ssl/
mkdir ./out/sup/
mkdir ./out/recovered/

To run, depending what is the script you want to run, just do:

python3 src/hd-lib/supervised.py path/to/dataset/dataset_name
python3 src/hd-lib/semi_supervised.py path/to/dataset/

About

Package started by Alejandro Hernández Cano. If you are interested in expanding the package but are getting stuck trying to figuring out the code, please feel free to email me any question at ale.hdz333@ciencias.unam.mx

Acknowledgments

  • Yesong Kim for initial code containing encoding, training, etc, several other resources and feedback
  • Mohsen Imani for initial code for semi-supervised learning and various resources and feedback
  • Tajana Rosing for various resources and feedback
  • All the people at UCSD and other universities that have been working on the theory behind this project, those that have ran tests previously and written code initially