IP Library › Granted Patent US 12,518,150
Granted Patent B2
US 12,518,150 · App. 17/809,052 · Granted Jan 6, 2026

Bundling hypervectors

Inventors: Michael Andreas Hersche (Zurich, CH); Abbas Rahimi (Rüschlikon, CH)
Assignee: International Business Machines Corporation
G06N3/063
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,518,150
App. No.
17/809,052
Granted
Jan 6, 2026
Kind
B2
Abstract

Embodiments are disclosed for a method. The method includes bundling a set of M code hypervectors, each of dimension D, where M>1. The bundling includes receiving an M-dimensional vector comprising weights for weighting the set of code hypervectors. The bundling further includes mapping the M-dimensional vector to an S-dimensional vector, s k , such that each element of the S-dimensional vector, s k , indicates one of the set of code hypervectors, where S=D/L and L≥1. Additionally, the bundling includes building a hypervector such that an ith element of the built hypervector is an ith element of the code hypervector indicated in an ith element of the S-dimensional vector, s k .

Claims (127)

1 . A system comprising:

a computer processing circuit; and

a computer-readable storage medium storing instructions, which, when executed by the computer processing circuit, are configured to cause the computer processing circuit to perform a method comprising:

encoding, by an encoder, a data structure so that the data structure is represented by a hypervector, wherein the encoder is a feed-forward neural network that is trained to produce the hypervector as a compound hypervector describing the data structure, and wherein encoding comprises:

bundling a set of M code hypervectors, each of dimension D, where M>1, by:

receiving an M-dimensional vector comprising a plurality of weights for weighting the set of code hypervectors;

mapping the M-dimensional vector to an S-dimensional vector, s k , such that each element of the S-dimensional vector, s k , indicates one of the set of code hypervectors, where S=D/L and L≥1; and

building the hypervector such that an ith element of the built hypervector is an ith element of the code hypervector indicated in an ith element of the S-dimensional vector, s k ; and

decoding, by a resonator network, the hypervector that is encoded in a vector space.

2 . The system of claim 1 , wherein the hypervector comprises binary values {0, 1} D , and wherein the hypervector comprises a sparsity smaller than a sparsity threshold, and wherein the sparsity is equal to S/D, and wherein the hypervector comprises a fraction of non-zero values.

3 . The system of claim 2 , wherein the sparsity threshold is in a range of: 0.3% to 50%.

4 . The system of claim 1 , wherein the S-dimensional vector, s k , is defined as: for every i th element, generating a value v, and determining the i th element with a mapping function:

s

k

(

i

)

=

{

0

⁢

if

⁢

v

≤

∂

0

…

m

⁢

if

∂

m

-

1

<

v

≤

∂

m

where v comprises a randomly generated value or a deterministic value defined as v=i/S, where ∂=cumsum(a)/sum(a) is a step function, where a is the M-dimensional vector, where cumsum(a) returns a vector containing a cumulative sum of a plurality of elements of vector a, and sum(a) returns a sum of elements of vector a, and ∂ m refers to an m th element of ∂.

5 . The system of claim 1 , the method further comprising repeating the mapping and the building, a p number of times, to generate p built hypervectors, and using the p built hypervectors to determine a hypervector that represents a bundling version of the set of code hypervectors.

6 . The system of claim 1 , wherein the bundling is performed for online hyperdimensional learning, wherein the set of code hypervectors comprises an encoded hypervector and a model hypervector, and wherein the M-dimensional vector comprises weights w and 1−w, and wherein the built hypervector is provided as an update of the model hypervector, and w is a scalar.

7 . The system of claim 1 , wherein the built hypervector is a vectorized representation of a probability mass function (PMF), and wherein the M-dimensional vector comprises a plurality of values in the PMF, and the set of code hypervectors are basis vectors of a codebook for representing the PMF in a vector space.

8 . A method comprising:

encoding, by an encoder, a data structure so that the data structure is represented by a hypervector, wherein the encoder is a feed-forward neural network that is trained to produce the hypervector as a compound hypervector describing the data structure, and wherein encoding comprises:

bundling a set of M code hypervectors, each of dimension D, where M>1, by:

receiving an M-dimensional vector comprising a plurality of weights for weighting the set of code hypervectors;

mapping the M-dimensional vector to an S-dimensional vector, s k , such that each element of the S-dimensional vector, s k , indicates one of the set of code hypervectors, where S=D/L and L≥1; and

building the hypervector such that an ith element of the built hypervector is an ith element of the code hypervector indicated in an ith element of the S-dimensional vector, s k ; and

decoding, by a resonator network, the hypervector that is encoded in a vector space.

9 . The method of claim 8 , wherein the hypervector comprises binary values {0, 1} D , and wherein the hypervector comprises a sparsity smaller than a sparsity threshold, and wherein the sparsity is equal to S/D, and wherein the hypervector comprises a fraction of non-zero values.

10 . The method of claim 9 , wherein the sparsity threshold is in a range of: 0.3% to 50%.

11 . The method of claim 8 , wherein the S-dimensional vector, s k , is defined as: for every i th element, generating a value v, and determining the i th element with a mapping function:

s

k

(

i

)

=

{

0

⁢

if

⁢

v

≤

∂

0

…

m

⁢

if

∂

m

-

1

<

v

≤

∂

m

where v comprises a randomly generated value or a deterministic value defined as v=i/S, where ∂=cumsum(a)/sum(a) is a step function, where a is the M-dimensional vector, where cumsum(a) returns a vector containing a cumulative sum of a plurality of elements of vector a, and sum(a) returns a sum of elements of vector a, and ∂ m refers to an m th element of ∂.

12 . The method of claim 8 , further comprising repeating the mapping and the building a p number of times to generate p built hypervectors, and using the p built hypervectors to determine a hypervector that represents a bundling version of the set of code hypervectors.

13 . The method of claim 8 , wherein the bundling is performed for online hyperdimensional learning, wherein the set of code hypervectors comprises an encoded hypervector and a model hypervector, and wherein the M-dimensional vector comprises weights w and 1−w, and wherein the built hypervector is provided as an update of the model hypervector, and w is a scalar.

14 . The method of claim 8 , wherein the built hypervector is a vectorized representation of a probability mass function (PMF), and wherein the M-dimensional vector comprises a plurality of values in the PMF, and the set of code hypervectors are basis vectors of a codebook for representing the PMF in a vector space.

15 . A computer program product including program instructions stored on a computer readable storage medium, the program instructions executable by a processor to cause the processor to perform a method comprising:

encoding, by an encoder, a data structure so that the data structure is represented by a hypervector, wherein the encoder is a feed-forward neural network that is trained to produce the hypervector as a compound hypervector describing the data structure, and wherein encoding comprises:

bundling a set of M code hypervectors, each of dimension D, where M>1, by:

receiving an M-dimensional vector comprising a plurality of weights for weighting the set of code hypervectors;

mapping the M-dimensional vector to an S-dimensional vector, s k , such that each element of the S-dimensional vector, s k , indicates one of the set of code hypervectors, where S=D/L and L≥1; and

building the hypervector such that an ith element of the built hypervector is an ith element of the code hypervector indicated in an ith element of the S-dimensional vector, s k ; and

decoding, by a resonator network, the hypervector that is encoded in a vector space.

16 . The computer program product of claim 15 , wherein the hypervector comprises binary values {0, 1} D , and wherein the hypervector comprises a sparsity smaller than a sparsity threshold, and wherein the sparsity is equal to S/D, and wherein the hypervector comprises a fraction of non-zero values.

17 . The computer program product of claim 16 , wherein the sparsity threshold is in a range of: 0.3% to 50%.

18 . The computer program product of claim 15 , wherein the S-dimensional vector, s k , is defined as: for every i th element, generating a value v, and determining the i th element with a mapping function:

s

k

(

i

)

=

{

0

⁢

if

⁢

v

≤

∂

0

…

m

⁢

if

∂

m

-

1

<

v

≤

∂

m

where v comprises a randomly generated value or a deterministic value defined as v=i/S, where ∂=cumsum(a)/sum(a) is a step function, where a is the M-dimensional vector, where cumsum(a) returns a vector containing a cumulative sum of a plurality of elements of vector a, and sum(a) returns a sum of elements of vector a, and ∂ m refers to an m th element of ∂.

19 . The computer program product of claim 15 , the method further comprising repeating the mapping and the building a p number of times to generate p built hypervectors, and using the p built hypervectors to determine a hypervector that represents a bundling version of the set of code hypervectors.

20 . The computer program product of claim 15 , wherein the bundling is performed for online hyperdimensional learning, wherein the set of code hypervectors comprises an encoded hypervector and a model hypervector, and wherein the M-dimensional vector comprises weights w and 1−w, and wherein the built hypervector is provided as an update of the model hypervector, and w is a scalar.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 27, 2022
From: HERSCHE, MICHAEL ANDREAS; RAHIMI, ABBAS
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 060317/0585 →
Continuity (1)
Related Publication 20230419088A1 · Dec 28, 2023
References Cited (30)
US 8908978B2 · Oka · 2014 [cited by applicant]
US 10394930B2 · Ben-Dayan Rubin · 2019 [cited by applicant]
US 12293185B2 · Vougioukas · 2025 [cited by examiner]
US 20190171665A1 · Navlakha et al. · 2019 [cited by applicant]
US 20200272895A1 · Cherubini et al. · 2020 [cited by applicant]
US 20200380384A1 · Karunaratne · 2020 [cited by applicant]
US 20220019441A1 · Rosing · 2022 [cited by examiner]
US 20230083502A1 · Imani · 2023 [cited by examiner]
US 20230206056A1 · Hersche et al. · 2023 [cited by applicant]
US 20230409871A1 · Xu · 2023 [cited by examiner]
Hersche et al;, “Blockwise Factorization of Hypervectors”, U.S. Appl. No. 17/809,044, filed Jun. 27, 2022, 41 Pgs. [cited by applicant]
IBM Appendix P., “List of IBM Patents or Patent Applications to be Treated as Related”, Dated Herewith, 2 pages. [cited by applicant]
Anonymous Authors, “Efficient Codebook And Factorization For Second Order Representation Learning”, Under Review as a conference paper at ICLR 2019, 11 Pgs, Accessed May 25, 2022. [cited by applicant]
Frady et al;, “Resonator Networks for Factoring Distributed Representations of Data Structures”, To appear in Neural Computation, 2020, <arXiv:2007.03748v1 [cs.CV] Jul. 7, 2020>, 20 Pgs. [cited by applicant]
Frady et al;, “Variable Binding for Sparse Distributed Representations: Theory and Applications”, ARxIV:2009.06834V1 {cs.NE] 14 Sep. 2020, 16 Pgs. [cited by applicant]
Frady et al;. “Resonator Networks, 1: An Efficient Solution for Factoring High-Dimensional, Distributed Representations of Data Structures”, Neural Computation 32, 2311-2331 (2020) Massachusetts Institute of Technology,… [cited by applicant]
Hersche et al;.“Factorizing Hypervectors”, U.S. Appl. No. 17/564,277, filed Dec. 29, 2021, 41 Pgs. [cited by applicant]
Kent et al:, “Resonator Networks Outperform Optimization Methods at Solving High-Dimensional Vector Factorization”, To appear in Neural Computation, 2020, arXiv:1906.11684v4 [cs.NE] Jul. 14, 2020, 61 Pgs. [cited by applicant]
Kent, Spencer et al;, “Resonator Circuits for Factoring High-Dimensional Vectors”, Redwood Center for Theoretical Neuroscience University of California, Berkeley, Aug. 4, 2021, <https://www.arxiv-vanity.com/papers/1906.… [cited by applicant]
Laiiho et al;, “High-Dimensional Computing with Sparse Vectors”, Technology Research Center, University of Turku Finland, Access May 26, 2022, 4 Pgs. [cited by applicant]
Mell et al., “The NIST Definition of Cloud Computing”, National Institute of Standards and Technology, Special Publication 800-145, Sep. 2011, 7 pages. [cited by applicant]
Paulino;, “Binary Matrix Factorization via Dictionary Learning”, Apr. 2018, IEEE Journal of Selected Topics in Signal Processing, 11 Pgs, DOI:10.1109/JSTSP.2018.2875674, <ARxIV:1804/05482v2 [stat.ML] Jul. 26, 2018>. [cited by applicant]
Poikonen et al;, “High-Dimensional Computing with Sparse Vectors”, Conference Paper—Oct. 2015, DOI:10.1109/BioCAS.2015.7348414, 5 Pgs, <https:www.researchgate.net/publication/299535938>. [cited by applicant]
Rachkovskij et al;, “Binding and Normalization of Binary Sparse Distributed Representations by Context-Dependent Thinning”, Draft of Paper Published in: Neural Computation (2001) v. 13 n. 2, pp. 411-452, 32 Pgs. [cited by applicant]
Rachkovskij, “Representation and Processing of Structures with Binary Sparse Distributed Codes”, IEEE Transactions on Knowledge and Data Engineering, vol. 13, No. 2, Mar./Apr. 2001, 16 Pgs. [cited by applicant]
Reimann;, “A novel HD Computing Algebra: Non-associative Ssuperposition of States Creating Sparse Bundles Representing Order Information”, Institute of Neuroinformatics University of Zurich and ETH Zurich Switzerland, F… [cited by applicant]
Yang et al;, “A Sparse Singular Value Decomposition Method for High-Dimensional Data”, Accepted author version posted on line: Nov. 21, 2013. Published online Oct. 20, 2014, 22 Pgs., <http://www.tandfonline.com/loi/ucgs… [cited by applicant]
Karunaratne, et al., Energy Efficient In-memory Hyperdimensional Encoding for Spatio-temporal Signal Processing, arXiv:2106.11654v1 [cs. ET], Jun. 22, 2021, 5 Pages. [cited by applicant]
Kleyko, et al., A Survey on Hyperdimensional Computing aka Vector Symbolic Architectures, Part I: Models and Data Transformations, arXiv:2111.06077v2 [cs.AI], Jul. 31, 2023, 31 pages. [cited by applicant]
Pouget, A., Resonator Networks with Sparse Codes to Reduce Parameters in Deep Neural Networks, ETH Zurich Bachelor's Project, Jun. 2021, 46 pages. [cited by applicant]