1. A method, comprising: in a training phase: partitioning a plurality of electronic neurons into multiple clusters, each cluster comprising approximately the same number of neurons; and associating one or more spatiotemporal patterns with one or more clusters of the multiple clusters by: presenting the one or more spatiotemporal patterns to the one or more clusters, wherein the one or more spatiotemporal patterns are presented one at a time over fixed time intervals of a first pre-determined length, each presentation of a spatiotemporal pattern followed by a silent period of a second pre-determined length, and each presentation of a spatiotemporal pattern confined primarily to one cluster of the multiple clusters; and based on one or more learning rules, storing the one or more spatiotemporal patterns in the plurality of electronic neurons, wherein the one or more learning rules provide a level of conductance of synaptic interconnections between the plurality of electronic neurons as a function of the one or more spatiotemporal patterns; and upon being presented with a spatiotemporal pattern of the one or more spatiotemporal patterns stored, retrieving the spatiotemporal pattern from the plurality of electronic neurons; wherein pattern recognition data indicative of the spatiotemporal pattern retrieved is provided as output for display on a device; and wherein the plurality of electronic neurons comprise multiple layers of electronic neurons including a first layer and a second layer, wherein a first neuron in the first layer is connected to a second neuron in the second layer that corresponds topographically with a location of the first neuron in the first layer, and wherein the first neuron in the first layer is further connected to one or more other neurons in the second layer within a pre-determined radius of the second neuron in the second layer.