IP Library Granted Patent US 8,732,098
Granted Patent B2
US 8,732,098 · App. 13/415,713 · Granted May 20, 2014

Hierarchical temporal memory (HTM) system deployed as web service

Inventors: Subutai Ahmad (Palo Alto, CA); Dileep George (Menlo Park, CA); Jeffrey L. Edwards (Menlo Park, CA); William C. Saphir (San Francisco, CA); Frank Astier (Mountain View, CA); Ronald Marianetti (Los Gatos, CA)
Assignee: Numenta, Inc.
G06N3/04G06N3/08
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,732,098
App. No.
13/415,713
Granted
May 20, 2014
Kind
B2
Abstract

A web-based hierarchical temporal memory (HTM) system in which one or more client devices communicate with a remote server via a communication network. The remote server includes at least a HTM server for implementing a hierarchical temporal memory (HTM). The client devices generate input data including patterns and sequences, and send the input data to the remote server for processing. The remote server (specifically, the HTM server) performs processing in order to determine the causes of the input data, and sends the results of this processing to the client devices. The client devices need not have processing and/or storage capability for running the HTM but may nevertheless take advantage of the HTM by submitting a request to the HTM server.

Claims (37)

1. A server system comprising a processor and a memory device, the server system comprising:

a gateway server configured to receive, via a communication network, requests to perform inference or classification on associated input data sets from a plurality of client devices, the gateway server further configured to receive the input data sets via the communication network wherein each input data set is associated with a request to perform inference or classification; and

a first hierarchical temporal memory (HTM) server for running a first HTM network, the first HTM network coupled to the gateway server to receive the input data from the gateway server, the HTM network comprising:

a first node for receiving the input data sets and generating a first vector representing information about patterns and sequences in the input data sets corresponding to learned patterns and sequences; and

a second node associated with the first node to generate and output a second vector based on the first vector, the second vector representing information about causes of the input data sets.

2. The server system of claim 1 , wherein the gateway server comprises:

a HTTP server for establishing connections with the plurality of client devices in response to connection requests from the plurality of client devices; and

a scripting module for invoking handler scripts to extract the input data sets associated with the connection requests, the scripting module providing the extracted input data sets to the first HTM server for processing.

3. The server system of claim 1 , further comprising a second HTM server running a second HTM network, the gateway server identifying the plurality of client devices submitting the requests and selecting between the first HTM server and the second HTM server to process the requests based on the identification.

4. The server system of claim 1 , wherein the first hierarchical temporal memory (HTM) server comprises a pre-processor module for pre-processing the input data sets for processing at the HTM network.

5. The server system of claim 1 , wherein the HTM network is trained at least partially by sample input data and supervisory signal received from the plurality of client devices via the gateway server.

6. A client device, comprising:

a sensor for generating input data including patterns and sequences;

a process manager comprising a processor and configured to generate a request to perform inference or classification to a remote server, the process manager coupled to the sensor to format the input data and associate the input data with the request, the processor manager further configured to receive an output from the remote server implementing a hierarchical temporal memory (HTM) network responsive to sending the request and the input data; and

a communication module coupled to the process manager for transmitting the request and the associated input data to the remote server and receiving the output from the remote server via a communication network.

7. The client device of claim 6 , further comprising a pre-processor coupled to the sensor and the processor manager for pre-processing the input data for processing at the HTM network.

8. The client device of claim 6 , further comprising a category mapper coupled to the HTM process manager for storing mapping between indices received from the HTM network and causes to the input data learned by the HTM network, the indices received from the HTM network responsive to submitting the input data.

9. The client device of claim 6 , wherein the communication module transmits the input data and receives the output from the HTM server by TCP/IP and HTTP.

10. The client device of claim 6 , wherein the process manager stores identification identifying the client device, the HTM network for processing the input data from the client device selected based on the identification.

11. The client device of claim 6 , further comprising a display device for displaying the output from the HTM network.

12. The client device of claim 11 , wherein the display device displays a window including a first section for showing causes learned by the HTM network, a second section for showing the input data presented to the HTM network, and a third section showing the output from the HTM network.

13. The client device of claim 11 , wherein the sensor comprises a software component for processing data received at or stored in the client device.

14. A computer-implemented method of determining a cause of input data, comprising:

generating, at a client device located remotely from a web-based hierarchical temporal memory (HTM) network, a request to perform inference or classification on input data including patterns and sequences;

formatting the input data for transmission to the web-based HTM network;

associating the input data with the request;

sending the request and the associated input data to the web-based HTM network via a communication network, the web-based HTM network remote from the client device and configured to perform inference or classification on sets of input data received from a plurality of client devices

receiving information about the cause of the input data from the web-based HTM network via the communication network responsive to sending the request and the input data to the web-based HTM network; and

performing an action responsive to receiving the information about the cause of the input data.

15. The method of claim 14 , further comprising receiving information about causes learned by the HTM network.

16. The method of claim 14 , further comprising sending sample input data and a supervisory signal indicating a correct cause of the sample input data to the HTM network.

17. The method of claim 14 , wherein receiving information about the cause of the input data comprises:

storing mapping information representing mapping between causes learned by the web-based HTM network and indices associated with the causes; and

receiving the indices responsive to sending the input data to the web-based HTM network.

18. The method of claim 14 , further comprising sending identification information to the web-based HTM network, the identification information uniquely identifying a client device sending the input.

19. The method of claim 14 , wherein sending the input data comprises transmitting the input data by TCP/IP and HTTP protocols via the communication network, and receiving information about the cause comprises receiving an output from the web-based HTM network by TCP/IP and HTTP protocols via the communication network.

20. The method of claim 14 , wherein performing the action comprises displaying an output of the web-based HTM network.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 8, 2012
From: AHMAD, SUBUTAI; GEORGE, DILEEP; EDWARDS, JEFFREY L.; SAPHIR, WILLIAM C.; ASTIER, FRANK; MARIANETTI, RONALD
To: NUMENTA, INC.
Reel/Frame 027832/0021 →
Continuity (7)
Continuation In Part 12029434 · Feb 11, 2008
Continuation In Part 12576966 · Oct 9, 2009
Continuation 11622454 · Jan 11, 2007
Continuation 11351437 · Feb 10, 2006
Provisional Application 60904761 · Feb 28, 2007
Provisional Application 60771990 · Feb 10, 2006
Related Publication 20120166364A1 · Jun 28, 2012