IP Library Granted Patent US 8,112,367
Granted Patent B2
US 8,112,367 · App. 12/039,652 · Granted Feb 7, 2012

Episodic memory with a hierarchical temporal memory based system

Assignee: Numenta, Inc.
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 8,112,367
App. No.
12/039,652
Granted
Feb 7, 2012
Kind
B2
Abstract

A hierarchy of computing modules is configured to (i) learn a cause of input data sensed over space and time, and (ii) determine a cause of novel sensed input data dependent on the learned cause. When determining the cause of the novel sensed input data, the computing modules determine likely sequences based on observed inputs. Information identifying one or more of those likely sequences and indexes of observed elements in those sequences may then be stored in external memory to facilitate data compression and/or granularity-based searches.

Claims (30)

1. A computer-implemented method of compressing a set of data, the method comprising:

receiving, at a hierarchy of processing nodes, a plurality of input patterns included in the set of data;

at each of the plurality of the hierarchy of processing nodes, generating for each of the plurality of input patterns in an inference phase subsequent to a training phase, a set of probability values associated with a set of sequences of input patterns based on sequences of patterns learned by each of the plurality of input patterns in the training phase, wherein each probability value indicates a likelihood that an input pattern of the plurality of input patterns has a same cause as a sequence of patterns learned by each of the plurality of hierarchy of processing nodes in the training phase; and

at each of the hierarchy of processing nodes, assigning an index to each of the plurality of input patterns based on the set of probability values, the index indicating a sequence of input patterns learned by each of the hierarchy of processing nodes that is most likely to have a same cause with each of the plurality of input patterns.

2. The method of claim 1 , further comprising:

at each of the plurality of the hierarchy of processing nodes, concatenating indexes assigned by the plurality of processing nodes to generate a vector representing a compressed version of the set of data.

3. The method of claim 2 , further comprising:

generating searchable index of a plurality sets of data by grouping one or more sets of data producing a same index at a processing node; and

performing a search in the plurality sets of data for one or more sets of data including an index value.

4. The method of claim 3 , further comprising:

generating, for each of the plurality of indices, a frequency value which enumerates a number of sets of data stored in association with the index; and

performing the search based further on frequency values associated with the plurality of indices.

5. The method of claim 1 , further comprising: storing indices associated with a subset of the hierarchy of processing nodes.

6. The method of claim 1 , wherein the set of data comprises image data.

7. The method of claim 1 , wherein the set of data comprises video data.

8. A non-transitory computer-readable storage medium encoded with computer program code for compressing a set of data, the computer program code, when executed by a processor cause the processor to:

receive, at a hierarchy of processing nodes, a plurality of input patterns-included in the set of data;

at each of the plurality of the hierarchy of processing nodes, generate for each of the plurality of input patterns in an inference phase subsequent to a training phase, a set of probability values associated with a set of sequences of input patterns based on sequences of patterns learned by each of the plurality of input patterns in the training phase, wherein each probability value indicates a likelihood that an input pattern of the plurality of input patterns has a same cause as a sequence of patterns learned by each of the plurality of hierarchy of processing nodes in the training phase; and

at each of the hierarchy of processing nodes, assign an index to each of the plurality of input patterns based on the set of probability values, the index indicating a sequence of input patterns learned by each of the hierarchy of processing nodes that is most likely to have a same cause with each of the plurality of input patterns.

9. The medium of claim 8 , further comprising program code for:

at each of the plurality of the hierarchy of processing nodes, concatenating indexes assigned by the plurality of processing nodes to generate a vector representing a compressed version of the set of data.

10. The medium of claim 9 , further comprising program code for:

generating searchable index of a plurality sets of data by grouping one or more sets of data producing a same index at a processing node; and

performing a search in the plurality sets of data for one or more sets of data including an index value.

11. The medium of claim 10 , further comprising program code for:

generating, for each of the plurality of indices, a frequency value which enumerates a number of sets of data stored in association with the index; and

performing the search based further on frequency values associated with the plurality of indices.

12. The medium of claim 8 , further comprising program code for: storing indices associated with a subset of the hierarchy of processing nodes.

13. The medium of claim 8 , wherein the set of data comprises image data.

14. The medium of claim 8 , wherein the set of data comprises video data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 29, 2008
From: GEORGE, DILEEP
To: NUMENTA, INC.
Reel/Frame 020585/0207 →
Continuity (2)
Provisional Application 60892101 · Feb 28, 2007
Related Publication 20080208915A1 · Aug 28, 2008