1. A neural network, comprising: multiple neurons for generating spike signals representing different event types, wherein each neuron is interconnected with at least one other neuron via an interconnect network comprising a plurality of synapse devices; and multiple noruen sets for updating synaptic weights of the synapse devices based on different learning rules, wherein each noruen set corresponds to a particular event type and applies a particular learning rule to update the synaptic weights in response to spike signals representing the particular event type; wherein each noruen set comprises multiple noruens, wherein each noruen corresponds one-to-one to a neuron, and wherein each noruen comprises a symmetric dual of a corresponding neuron.