Minimal library to construct Hierarchical Associative Memories
Project description
Barebones-HAMUX
HAMUX built using equinox, minimal implementation. A temporary solution as HAMUX is being rebuilt.
Build any hopfield network using energy fundamentals. See the original HAMUX documentation for explanation.
Install: File copy
All logic is in one file: hamux.py
. Please copy this file into whatever project you are working on, and modify as needed. You will need to manually install dependencies:
pip install equinox jax
pip install pytest # for tests
Install correct version of jaxlib
for your hardware (e.g., to run on GPUs).
Run demo.ipynb
for an example training on MNIST. Works best with GPU
Install: Pip
Tests
All basic tests for this package are in test.py
.
pytest test.py
Citation
If this repository is useful for this work, please cite the following:
@inproceedings{
hoover2022universal,
title={A Universal Abstraction for Hierarchical Hopfield Networks},
author={Benjamin Hoover and Duen Horng Chau and Hendrik Strobelt and Dmitry Krotov},
booktitle={The Symbiosis of Deep Learning and Differential Equations II},
year={2022},
url={https://openreview.net/forum?id=SAv3nhzNWhw}
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.