Liking cljdoc? Tell your friends :D

helins.htm.encoder

Encoders mapping arbitrary values to SDRs.

This is the entry point of any HTM system, inputs in various formats have to be translated into SDRs. It is a (fn encode [sdr input] sdr'). This namespace offers functions for creating encoders and modifying them.

By default, encoder do not clear the SDR they work with so that they are more flexible. However, clearing is often needed in HTM systems so the user can refer to the always-clear.

Based on :

[1] Purdy, S. (2016). Encoding data for HTM systems. arXiv preprint arXiv:1602.05925.

Encoders mapping arbitrary values to SDRs.


This is the entry point of any HTM system, inputs in various formats have to be translated into SDRs.
It is a (fn encode [sdr input] sdr'). This namespace offers functions for creating encoders and modifying
them.

By default, encoder do not clear the SDR they work with so that they are more flexible. However, clearing
is often needed in HTM systems so the user can refer to the `always-clear`.


Based on :

  [1] Purdy, S. (2016). Encoding data for HTM systems. arXiv preprint arXiv:1602.05925.
raw docstring

always-clearclj

(always-clear encoder)

Transforms an encoder so that the given SDR will always be cleared.

Transforms an encoder so that the given SDR will always be cleared.
sourceraw docstring

categorical-encoderclj

(categorical-encoder capacity category-count)

Representations of categories do not have overlapping active bits.

A category is actually just an integer between 0 (inclusive) and category-count (exclusive).

The cardinality is the result of the natural division of the capacity of the SDR and category-count.

Based on [1] Section 4.

Representations of categories do not have overlapping active bits.

A category is actually just an integer between 0 (inclusive) and `category-count` (exclusive).

The cardinality is the result of the natural division of the capacity of the SDR and `category-count`.


Based on [1] Section 4.
sourceraw docstring

cyclic-linear-encoderclj

(cyclic-linear-encoder capacity cardinality min-bound max-bound)

Like linear-encoder but min-bound and max-bound are linked circularly (ie. the representation for the highest input overlaps with the lowest one).

Inspired by [1] Section 4.1

Like `linear-encoder` but `min-bound` and `max-bound` are linked circularly (ie. the representation
for the highest input overlaps with the lowest one).


Inspired by [1] Section 4.1
sourceraw docstring

linear-encoderclj

(linear-encoder capacity cardinality min-bound max-bound)

Produces a linear encoder for scalar inputs.

Inputs are normalized within min-bound and max-bound and out-of-range inputs are treated as extreme values.

Generalization of [1] Section 3.1.

Produces a linear encoder for scalar inputs.

Inputs are normalized within `min-bound` and `max-bound` and out-of-range inputs are treated as
extreme values.


Generalization of [1] Section 3.1.
sourceraw docstring

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close