Data Encoders
Data encoders map raw data (a scalar, a feature vector, or a batch) into a
Hypervector. Each wraps an Encoding and reuses its
generate / normalize_fn / backend, so encoder output works with the existing
bundle / bind / similarity / select functions. Everything is dimension-first: a batch
of B inputs encodes to a (D, B) hypervector.
Encoder base class
Codebook encoders
A value indexes into a precomputed (D, L) basis. Constructor signature
(encoding, levels, low=0.0, high=1.0): levels must be at least 1 and high
must exceed low, or the constructor raises ValueError.
Functional encoders
A transform of a feature vector.