https://github.com/marty1885/tiny-htm
A tiny yet flexable framework for (HTM) Hierarchical Temporal Memory
https://github.com/marty1885/tiny-htm
artificial-intelligence hierarchical-temporal-memory machine-intelligence machine-learning
Last synced: 7 months ago
JSON representation
A tiny yet flexable framework for (HTM) Hierarchical Temporal Memory
- Host: GitHub
- URL: https://github.com/marty1885/tiny-htm
- Owner: marty1885
- License: bsd-3-clause
- Created: 2019-02-10T06:22:19.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2019-04-14T15:37:23.000Z (almost 7 years ago)
- Last Synced: 2025-04-14T15:22:40.644Z (10 months ago)
- Topics: artificial-intelligence, hierarchical-temporal-memory, machine-intelligence, machine-learning
- Language: C++
- Size: 48.8 KB
- Stars: 6
- Watchers: 4
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# tiny-htm
tiny-htm is a flexable HTM framework for research and all other purpose you can think of. In pure C++.
This project is in it's really early ages. Archicture breaking changes will happen.
## Features
* Both major HTM algorithms
* Spatial Pooler
* Temporal Memory
* Easily workable with Pyhon. It's implemented using xtensor!
## Dependency
* [xtensor](https://github.com/QuantStack/xtensor/)
* A C++17 capable compiler
* OpenMP capable compiler (optional)
## Build and install
```shell
mkdir build
cmake ..
make -j8
```
To install
```
make install
```
## The TODO list
### Encoders
* [ ] Grid Cells
* [x] GridCellEncoder2D
* [ ] GridCellEncoder1D
* [ ] Date time
* [ ] RDSE
### Spatial Pooler
* [ ] Boosting
* [ ] Topology
### Temporal Memory
* [ ] Column inhibition (not biologically plossible)
### HTM Research
* [ ] Column Pooler
### Misc
* [ ] Performance optimization
* [x] Overhead reduction.
* [x] benchmark tools
* [x] TM 2.43x faster then NuPIC.cpp on single thread
* [ ] SIMD-ize algorithm if possible
* [x] Add OpenMP support.
* [ ] Saving the models
* [ ] Make hyper parameter changable
* [ ] Build on MSVC
### Documentation
* [ ] add Anything