HDTorch: Accelerating Hyperdimensional Computing with GP-GPUs for Design Space Exploration
HyperDimensional Computing (HDC) as a machine learning paradigm is highly
interesting for applications involving continuous, semi-supervised learning for
long-term monitoring. However, its accuracy is not yet on par with other
Machine Learning (ML) approaches. Frameworks enabling fast design space
exploration to find practical algorithms are necessary to make HD computing
competitive with other ML techniques. To this end, we introduce HDTorch, an
open-source, PyTorch-based HDC library with CUDA extensions for hypervector
operations. We demonstrate HDTorch's utility by analyzing four HDC benchmark
datasets in terms of accuracy, runtime, and memory consumption, utilizing both
classical and online HD training methodologies. We demonstrate average
(training)/inference speedups of (111x/68x)/87x for classical/online HD,
respectively. Moreover, we analyze the effects of varying hyperparameters on
runtime and accuracy. Finally, we demonstrate how HDTorch enables exploration
of HDC strategies applied to large, real-world datasets. We perform the
first-ever HD training and inference analysis of the entirety of the CHB-MIT
EEG epilepsy database. Results show that the typical approach of training on a
subset of the data does not necessarily generalize to the entire dataset, an
important factor when developing future HD models for medical wearable devices.