Embodiments of the invention relate to canonical spiking neurons for spatiotemporal associative memory. An aspect of the invention provides a spatiotemporal associative memory including a plurality of electronic neurons having a layered neural net relationship with directional synaptic connectivity. The plurality of electronic neurons configured to detect the presence of a spatiotemporal pattern in a real-time data stream, and extract the spatiotemporal pattern. The plurality of electronic neurons are further configured to, based on learning rules, store the spatiotemporal pattern in the plurality of electronic neurons, and upon being presented with a version of the spatiotemporal pattern, retrieve the stored spatiotemporal pattern.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A method comprising: receiving an input data stream comprising one or more spatiotemporal patterns; extracting the one and more spatiotemporal patterns; storing the one or more spatiotemporal patterns in memory; and performing one or more pattern recognition tasks based on the one or more spatiotemporal patterns; wherein performing one or more pattern recognition tasks comprises, in response to receiving a version of the one or more spatiotemporal patterns, retrieving the one or more spatiotemporal patterns from the memory. 2. The method of claim 1, wherein the version of the one or more spatiotemporal patterns comprises one of a fragmentary or noisy version of the one or more spatiotemporal patterns. 3. The method of claim 1, wherein the one or more pattern recognition tasks are performed without any external instructions, the external instructions comprising an explicit description indicative of semantic content of the one or more spatiotemporal patterns. 4. The method of claim 1, further comprising: detecting presence of spatiotemporal patterns in an input data stream; and extracting and storing the spatiotemporal patterns without requiring any information about the spatiotemporal patterns in advance. 5. A system comprising a computer processor, a computer-readable hardware storage device, and program code embodied with the computer-readable hardware storage device for execution by the computer processor to implement a method comprising: receiving an input data stream comprising one or more spatiotemporal patterns; extracting the one and more spatiotemporal patterns; storing the one or more spatiotemporal patterns in memory; and performing one or more pattern recognition tasks based on the one or more spatiotemporal patterns; wherein performing one or more pattern recognition tasks comprises, in response to receiving a version of the one or more spatiotemporal patterns, retrieving the one or more spatiotemporal patterns from the memory. 6. The system of claim 5, wherein the version of the one or more spatiotemporal patterns comprises one of a fragmentary or noisy version of the one or more spatiotemporal patterns. 7. The system of claim 5, wherein the one or more pattern recognition tasks are performed without any external instructions, the external instructions comprising an explicit description indicative of semantic content of the one or more spatiotemporal patterns. 8. The system of claim 5, the method further comprising: detecting presence of spatiotemporal patterns in an input data stream; and extracting and storing the spatiotemporal patterns without requiring any information about the spatiotemporal patterns in advance. 9. A computer program product comprising a computer readable hardware storage device having program code embodied therewith, the program code being executable by a computer to implement a method comprising: receiving an input data stream comprising one or more spatiotemporal patterns; extracting the one and more spatiotemporal patterns; storing the one or more spatiotemporal patterns in memory; and performing one or more pattern recognition tasks based on the one or more spatiotemporal patterns; wherein performing one or more pattern recognition tasks comprises, in response to receiving a version of the one or more spatiotemporal patterns, retrieving the one or more spatiotemporal patterns from the memory. 10. The computer program product of claim 9, wherein the version of the one or more spatiotemporal patterns comprises one of a fragmentary or noisy version of the one or more spatiotemporal patterns. 11. The computer program product of claim 9, wherein the one or more pattern recognition tasks are performed without any external instructions, the external instructions comprising an explicit description indicative of semantic content of the one or more spatiotemporal patterns. 12. The computer program product of claim 9, the method further comprising: detecting presence of spatiotemporal patterns in an input data stream; and extracting and storing the spatiotemporal patterns without requiring any information about the spatiotemporal patterns in advance.