HDTorch: Accelerating Hyperdimensional Computing with GP-GPUs for Design Space Exploration
This work addresses the need for faster design space exploration to make HDC practical for applications like medical wearable devices, though it is incremental in improving existing HDC frameworks.
The paper tackles the problem of Hyperdimensional Computing (HDC) not being competitive with other machine learning methods in accuracy by introducing HDTorch, a PyTorch-based library with CUDA extensions, which achieves average speedups of up to 111x in training and 87x in inference on benchmark datasets.
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.