htm-rs

Hierarchical Temporal Memory (HTM) implementation in Rust.

https://github.com/j-schoepplenberg/htm-rs

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.3%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Hierarchical Temporal Memory (HTM) implementation in Rust.

Basic Info
  • Host: GitHub
  • Owner: J-Schoepplenberg
  • Language: Rust
  • Default Branch: main
  • Homepage:
  • Size: 11.1 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created 12 months ago · Last pushed 9 months ago
Metadata Files
Readme Citation

README.md

htm-rs

Implements Hierarchical Temporal Memory (HTM) efficiently in Rust, including the Spatial Pooler (SP), Temporal Memory (TM), and SDR Classifier.

Table of Contents

Getting Started

Install Rust

Link: https://www.rust-lang.org/tools/install

Clone or download the repository bash git clone https://github.com/J-Schoepplenberg/htm-rs.git cd htm-rs

Build the project bash cargo build --release

Run the examples bash cargo run --release --example mnist_baseline bash cargo run --release --example mnist_saccades

What is HTM?

HTM is a biologically inspired machine learning framework that models how the neocortex processes information. It is designed to recognize patterns, learn sequences, and make predictions. Unlike other machine learning methods, it learns these patterns with unlabeled data.

Key Concepts

1. Sparse Distributed Representations (SDRs)

HTM uses SDRs to encode information efficiently. SDRs are binary vectors with a small percentage of active bits, making them robust to noise and interference.

2. Spatial Pooler (SP)

The Spatial Pooler converts input data into stable SDRs. It ensures that similar inputs produce similar representations while maintaining sparsity.

3. Temporal Memory (TM)

The Temporal Memory learns sequences of patterns over time. It predicts future states by detecting temporal dependencies in the input.

4. SDR Classifier

The SDR Classifier maps SDRs to known categories (classes), enabling classification tasks such as pattern recognition.

MNIST

This implementation scores ~95% on the classic MNIST data set.

The accuracy score heavily depends on the pipeline that is being used and on the selection of the hyperparameters.

Owner

  • Login: J-Schoepplenberg
  • Kind: user

Computer Science, Cybersecurity, Infosec, Rust, JavaScript, TypeScript

Citation (CITATION.cff)

@software{Schoepplenberg2025,
  author = {Schoepplenberg, J.},
  title = {{Hierarchical Temporal Memory (HTM) implementation in Rust}},
  url = {https://github.com/J-Schoepplenberg/htm-rs},
  version = {1.0},
  year = {2025}
}

GitHub Events

Total
  • Push event: 16
  • Create event: 4
Last Year
  • Push event: 16
  • Create event: 4