Skip to main content

Efficient single-pass hyperdimensional classifier

Project description

onlinehd

Authors: Alejandro Hernández Cano, Mohsen Imani.

Installation

In order to install the package, simply run the following:

pip install onlinehd

Visit the PyPI project page for more information about releases.

Documentation

Read the documentation of this project.

Quick start

The following code generates dummy data and trains a OnlnineHD classification model with it.

>>> import onlinehd
>>> dim = 10000
>>> n_samples = 1000
>>> features = 100
>>> classes = 5
>>> x = torch.randn(n_samples, features) # dummy data
>>> y = torch.randint(0, classes, [n_samples]) # dummy data
>>> model = onlinehd.OnlineHD(classes, features, dim=dim)
>>> if torch.cuda.is_available():
...     print('Training on GPU!')
...     model = model.to('cuda')
...     x = x.to('cuda')
...     y = y.to('cuda')
...
Training on GPU!
>>> model.fit(x, y, epochs=10)
>>> ypred = model(x)
>>> ypred.size()
torch.Size([1000])

For more examples, see the example.py script. Be aware that this script needs pytorch, sklearn and numpy to run.

Citation Request

If you use onlinehd code, please cite the following paper:

  1. Alejandro Hernández-Cano, Namiko Matsumoto, Eric Ping, Mohsen Imani "OnlineHD: Robust, Efficient, and Single-Pass Online Learning Using Hyperdimensional System", IEEE/ACM Design Automation and Test in Europe Conference (DATE), 2021.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

onlinehd-0.1.2.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

onlinehd-0.1.2-py3-none-any.whl (8.7 kB view details)

Uploaded Python 3

File details

Details for the file onlinehd-0.1.2.tar.gz.

File metadata

  • Download URL: onlinehd-0.1.2.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.9.1 Linux/5.10.11-arch1-1

File hashes

Hashes for onlinehd-0.1.2.tar.gz
Algorithm Hash digest
SHA256 97b5721c73092c88a42a4ae12faefff65729dbf8fa659296900bc44de1e954d8
MD5 80bade5620d970757318af92546d87e2
BLAKE2b-256 83d3acf1baa56e88698a93a4abd4cb637d78452cd6ea630f48198a47fb49fbfc

See more details on using hashes here.

File details

Details for the file onlinehd-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: onlinehd-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 8.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.9.1 Linux/5.10.11-arch1-1

File hashes

Hashes for onlinehd-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0096a39b9c6a79c864db370c423c8d8b7b308d9eb98ec7e76e57b8aa99d2fa12
MD5 fb89babf08197c8dfa1e18c35dbd3832
BLAKE2b-256 cb05e170bef130a68f50e11ab0085a03b5955df23998d862faf5ef39eac68271

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page