TECHNICAL FIELD
[0001] This application relates to the field of information technologies, and in particular, to a signal processing method and apparatus based on a spiking neural network.
BACKGROUND
[0002] A neural network is a computing system simulating a structure of a biological brain to process data. A large quantity of neurons (nerve cells) are complexly intertwined inside the biological brain, and a former neuron (a dendrite) is connected to a latter neuron (an axon) by using a synapse structure to transfer information. Correspondingly, each node in a structure of the neural network may simulate one neuron and execute a specific operation, for example, an activation function. A connection between nodes is used to simulate a neural synapse, and a weight of the synapse represents strength of a connection between two neurons. The neural network has a strong nonlinear, adaptive, and fault-tolerant information processing capability.
[0003] An emerging spiking neural network may desirably resolve a real-time information processing problem. In the spiking neural network, information is transferred by using a spatio-temporal information coding scheme for a spike signal of a neuron. An input behavior of the network is that a neuron receives a spike signal, and an output behavior of the network is that a neuron sends a spike signal. Neurons operate in parallel. Therefore, an operation manner of the spiking neural network is closer to that of a real biological system.
[0004] Spike-timing-dependent plasticity (Spike-timing-dependent plasticity, STDP) is a relatively common learning method in the spiking neural network. The spike-timing-dependent plasticity describes a rule of adjusting a synapse weight between neurons: If information about another neuron is generated before an activity of a current neuron, a connection between the another neuron and the current neuron is enhanced, or if information about another neuron is generated after an activity of a current neuron, a connection between the another neuron and the current neuron is weakened. The learning rule can desirably resolve a time-related information processing problem in the spiking neural network. Therefore, the real-time problem can be desirably processed.
[0005] In addition, the biological brain has a forgetting characteristic during learning. This is mainly because storage space of the brain is limited, and it is impossible for the brain to permanently store all received information. Therefore, some irrelevant information needs to be forgotten to improve information storage and processing efficiency. On the other hand, due to the forgetting characteristic, a learned unimportant feature or a learned interference signal feature may be "discarded", and an important feature of a thing is "stored" for long. Therefore, the forgetting characteristic of the biological brain is of great significance in actual application of the neural network. However, current development of a spiking neural network is still at an early stage, and a spiking neural network having a forgetting characteristic has not been implemented. Consequently, an existing spiking neural network needs relatively large information storage space, and processing efficiency is low; a key feature cannot be extracted, and the actual application is hindered.
SUMMARY
[0006] This application provides a signal processing method and apparatus based on a spiking neural network, to simulate a neural network based on a forgetting characteristic, so that the neural network is more consistent with reality.
[0007] According to a first aspect, a signal processing method based on a spiking neural network is provided. The method includes: determining a first signal
F_{1}(
t) output by a first neuron; processing the first signal
F_{1}(
t) by using q orders of synapse weight parameters
w_{q}(
t),
w_{q-1}(
t),···
w_{1}(
t), to obtain a second signal
F_{2}(
t), where a speed at which an initial function
met by an (x+1)
^{th}-order synapse weight parameter of the q orders of synapse weight parameters attenuates with time
t is higher than a speed at which an initial function
met by an x
^{th}-order synapse weight parameter attenuates with the time
t, q is a positive integer greater than 1, and 1 ≤ x ≤ q-1; and inputting the second signal
F_{2}(
t) to a second neuron, where the second neuron is a next-layer neuron of the first neuron.
[0008] Therefore, in the signal processing method based on a spiking neural network in this embodiment of this application, an input signal is processed by using a plurality of orders of synapse weight parameters, and initial functions of the orders of the synapse weight parameters attenuate with time at different speeds, so that a forgetting characteristic of the neural network is simulated, some unimportant information such as a secondary feature or background noise is forgotten, the neural network is more consistent with reality, feature extraction becomes easier, and a problem of an excessively large information storage amount is further resolved.
[0009] It should be understood that the first signal
F_{1}(
t) is a spike signal.
[0010] It should be understood that an initial function is set for each order of synapse weight parameter of the q orders of synapse weight parameters
w_{q}(
t),
w_{q-1}(
t),···,
w_{1}(
t), and each order of synapse weight parameter meets the corresponding initial function when each order of synapse weight parameter is not stimulated.
[0011] It should be understood that a type of an initial function corresponding to any order of synapse weight parameter of the q orders of synapse weight parameters
w_{q}(
t),
w_{q-1}(
t),···
,w_{1}(
t) may be a nonlinear attenuation function such as an exponential function, a logarithmic function, or a step function, or may be a linear attenuation function, or may be a combination of any two or more of the foregoing function types.
[0012] With reference to the first aspect, in an implementation of the first aspect, an initial function
of a first-order synapse weight parameter of the q orders of synapse weight parameters does not attenuate with time.
[0013] With reference to the first aspect and the foregoing implementation, in another implementation of the first aspect, the first signal
F_{1}(
t) includes a first sub-signal
F_{1}(
t_{1}) output by the first neuron at a moment
t_{1}, and a q
^{th}-order synapse weight parameter
w_{q}(
t_{1}) at the moment
t_{1} meets a condition (1):
where
w_{q}(
t_{1}-1) represents a q
^{th}-order synapse weight parameter at a moment
t_{1}-1, the moment
t_{1}-1 is a previous moment of the moment
t_{1}, and Δ
F_{q}(
t_{1}) is an update quantity determined based on a learning rule and a stimulation effect, at the moment
t_{1}, of the first sub-signal
F_{1}(
t_{1}) on the q
^{th}-order synapse weight parameter
w_{q}(
t_{1}-1) at the moment
t_{1}-1;
and an x
^{th}-order synapse weight parameter
w_{x}(
t_{1}) at the moment
t_{1} meets a condition (2):
where
w_{x}(
t_{1}-1) represents an x
^{th}-order synapse weight parameter at the moment
t_{1}-1; Δ
F_{x}(
t_{1}) is an update quantity determined based on the learning rule and a stimulation effect, at the moment
t_{1}, of the first sub-signal
F_{1}(
t_{1}) on the x
^{th}-order synapse weight parameter
w_{x}(
t_{1}-1) at the moment
t_{1}-1; Δ
w_{x,x+1}(
t_{1}),Δ
w_{x,x+2}(
t_{1}),···,Δ
q_{x,q}(
t_{1}) are respectively quantities of impact of an (x+1)
^{th}-order synapse weight parameter, an (x+2)
^{th}-order synapse weight parameter, ..., and the q
^{th}-order synapse weight parameter that are at the moment
t_{1} on the x
^{th}-order synapse weight parameter
w_{x}(
t_{1}).
[0014] It should be understood that the moment
t_{1} may be any moment in a time period within which the first neuron outputs the first signal
F_{1}(
t), and the first signal
F_{1}(
t) includes the first sub-signal
F_{1}(
t) output at the moment
t_{1}.
[0015] It should be understood that for a moment
t_{2} after the time period within which the first neuron outputs the first signal
F_{1}(
t), assuming that the moment
t_{2} is any moment at which there is no stimulation effect of the first signal
F_{1}(
t), the q
^{th}-order synapse weight parameter meets an initial function
at the moment
t_{2}.
[0016] With reference to the first aspect and the foregoing implementations, in another implementation of the first aspect, when an (x+i)
^{th}-order synapse weight parameter
w_{x+i}(
t_{1}) at the moment
t_{1} is greater than or equal to a threshold of an (x+i)
^{th}-order synapse weight, Δ
w_{x,x+i}(
t_{1}) is not 0; or when an (x+i)
^{th}-order synapse weight parameter
w_{x+i}(
t_{1}) at the moment
t_{1} is less than a threshold of an (x+i)
^{th}-order synapse weight, Δ
w_{x,x+i}(
t_{1}) is equal to 0, and i = 1, 2, ..., or q-x.
[0017] It should be understood that for a moment
t_{2} after a time period within which the first neuron outputs the first signal
F_{1}(
t), assuming that the moment
t_{2} is any moment at which there is no stimulation effect of the first signal
F_{1}(
t), a quantity Δ
F_{x}(
t_{2})of impact of the first signal
F_{1}(
t) on an x
^{th}-order synapse weight parameter at the moment
t_{2} is 0. If quantities Δ
w_{x,x+1}(
t_{2}),Δ
w_{x,x+2}(
t_{2}),···,Δ
w_{x,q}(
t_{2}) of impact of an (x+1)
^{th}-order synapse weight parameter, an (x+2)
^{th}-order synapse weight parameter, ..., and the q
^{th}-order synapse weight parameter on the x
^{th}-order synapse weight parameter are not all 0 in this case, the x
^{th}-order synapse weight parameter still meets the condition (2) at the moment
t_{2}; or if quantities Δ
w_{x,x+1}(
t_{2}),Δ
w_{x,x+2}(
t_{2}),···,Δ
w_{x,q}(
t_{2}) of impact of an (x+1)
^{th}-order synapse weight parameter, an (x+2)
^{th}-order synapse weight parameter, ..., and the q
^{th}-order synapse weight parameter on the x
^{th}-order synapse weight parameter are all equal to 0 in this case, the x
^{th}-order synapse weight parameter meets an initial function
at the moment
t_{2},
[0018] It should be understood that the first sub-signal
F_{1}(
t_{1}) at the moment
t_{1} may be set to affect all or some of the q orders of synapse weight parameters. For example, the first sub-signal
F_{1}(
t_{1}) may be set to affect only the q
^{th}-order synapse weight parameter. In other words, a quantity Δ
F_{q}(
t_{1}) of impact of the first sub-signal
F_{1}(
t_{1}) on the q
^{th}-order synapse weight parameter is not 0, and a quantity Δ
F_{x}(
t_{1}) of impact of the first sub-signal
F_{1}(
t_{1}) on the x
^{th}-order synapse weight parameter other than the q
^{th}-order synapse weight parameter is 0. For another example, the first sub-signal
F_{1}(
t_{1}) may alternatively be set to affect only the q
^{th}-order synapse weight parameter to a (q-x)
^{th}-order synapse weight parameter. In other words, Δ
F_{q}(
t_{1}),Δ
F_{q-1}(
t_{1}),..., and Δ
F_{q-x}(
t_{1}) are not 0, and Δ
F_{q-x-1}(
t_{1}),Δ
F_{q-x-2}(
t_{1}), ..., and Δ
F_{1}(
t_{1}) are 0.
[0019] Optionally, for the condition (2), the x
^{th}-order synapse weight parameter may be set to be related to each higher-order synapse weight parameter. That is, the (x+1)
^{th}-order synapse weight parameter affects each lower-order synapse weight parameter. Alternatively, the (x+1)
^{th}-order synapse weight parameter may be set to affect only some lower-order synapse weight parameters. For example, the (x+1)
^{th}-order synapse weight parameter may be set to affect only the x
^{th}-order synapse weight parameter that is one order lower than the (x+1)
^{th}-order synapse weight parameter. In other words, the x
^{th}-order synapse weight parameter is related to the (x+1)
^{th}-order synapse weight parameter. In other words, Δ
w_{x,x+2}(
t_{2}),Δ
w_{x,x+3}(
t_{2},,···,Δ
w_{x,q}(
t_{2}) are all 0 in the condition (2). For another example, the x
^{th}-order synapse weight parameter may alternatively be set to be related to the (x+1)
^{th}-order synapse weight parameter to the (x+i)
^{th}-order synapse weight parameter. Therefore, Δ
w_{x,x+i+1}(
t_{2}),Δ
w_{x,x+i+2}(
t_{2}),···,Δ
w_{x,q}(
t_{2}) are all 0.
[0020] With reference to the first aspect and the foregoing implementations, in another implementation of the first aspect, the first signal
F_{1}(
t) includes a first sub-signal
F_{1}(
t_{1}) output by the first neuron at a moment
t_{1}, and a q
^{th}-order synapse weight parameter
w_{q}(
t_{1}) at the moment
t_{1} meets a condition (3):
where
w_{q}(
t_{1}-1) represents a q
^{th}-order synapse weight parameter at a moment
t_{1}-1, the moment
t_{1}-1 is a previous moment of the moment
t_{1}, and Δ
F_{q}(
t_{1}) is an update quantity determined based on a learning rule and a stimulation effect, at the moment
t_{1}, of the first sub-signal
F_{1}(
t_{1}) on the q
^{th}-order synapse weight parameter
w_{q}(
t_{1}-1) at the moment
t_{1}-1; and when an (x+1)
^{th}-order synapse weight parameter at the moment
t_{1} is greater than or equal to a threshold of an (x+1)
^{th}-order synapse weight, an x
^{th}-order synapse weight parameter
w_{x}(
t_{1}) at the moment
t_{1} meets a condition (4):
where
w_{x}(
t_{1}-1) represents an x
^{th}-order synapse weight parameter at the moment
t_{1}-1; Δ
w_{x,x+1}(
t_{1}) is a quantity of impact of the (x+1)
^{th}-order synapse weight parameter at the moment
t_{1} on the x
^{th}-order synapse weight parameter
w_{x}(
t_{1}), or when an (x+1)
^{th}-order synapse weight parameter
w_{x+1}(
t_{1}) at the moment
t_{1} is less than a threshold of an (x+1)
^{th}-order synapse weight, an x
^{th}-order synapse weight parameter
w_{x}(
t_{1}) at the moment
t_{1} meets an initial function
[0021] With reference to the first aspect and the foregoing implementations, in another implementation of the first aspect, the learning rule is a learning rule based on a biological feature or a supervised learning rule based on an error back propagation mechanism.
[0022] The learning rule based on a biological feature may be, for example, an STDP learning rule or a Hebb learning rule. The supervised learning algorithm based on the error back propagation mechanism may be, for example, a SpikeProp learning rule, a QucikProp learning rule, a Tempotron learning rule, or an E-Learning learning rule.
[0023] With reference to the first aspect and the foregoing implementations, in another implementation of the first aspect, the processing the first signal
F_{1}(
t) by using q orders of synapse weight parameters
w_{q}(
t)
,w_{q-1}(
t),···
w_{1}(
t), to obtain a second signal
F_{2}(
t) includes: determining a product of the first signal
F_{1}(
t) and the first-order synapse weight parameter
w_{1}(
t) as the second signal
F_{2}(
t).
[0024] According to a second aspect, a signal processing apparatus based on a spiking neural network is provided, configured to perform the method in the first aspect or any possible implementation of the first aspect. Specifically, the apparatus includes units configured to perform the method in the first aspect or any possible implementation of the first aspect.
[0025] According to a third aspect, a signal processing apparatus based on a spiking neural network is provided, including: a memory and a processor. The memory is configured to store an instruction. The processor is configured to execute the instruction stored in the memory, and when the processor executes the instruction stored in the memory, the processor performs the method in the first aspect or any possible implementation of the first aspect.
[0026] According to a fourth aspect, a computer readable medium is provided, configured to store a computer program, where the computer program includes an instruction used to perform the method in the first aspect or any possible implementation of the first aspect.
BRIEF DESCRIPTION OF DRAWINGS
[0027]
FIG. 1 is a schematic diagram of a spiking neural network according to an embodiment of the present invention;
FIG. 2 is a schematic flowchart of a signal processing method based on a spiking neural network according to an embodiment of the present invention;
FIG. 3 is a schematic diagram of a memory effect corresponding to each order of synapse weight parameter according to an embodiment of the present invention;
FIG. 4 is a schematic diagram of a form of a connection between two neurons according to an embodiment of the present invention;
FIG. 5 is a schematic diagram of simulating a synapse weight parameter by a memristor having a two-order effect according to an embodiment of the present invention;
FIG. 6 is a schematic diagram of an application instance of two orders of synapse weight parameters according to an embodiment of the present invention;
FIG. 7 is a schematic diagram of another application instance of two orders of synapse weight parameters according to an embodiment of the present invention;
FIG. 8 is a schematic diagram of still another application instance of two orders of synapse weight parameters according to an embodiment of the present invention;
FIG. 9 is a schematic diagram of a curve of an STDP learning rule according to an embodiment of the present invention;
FIG. 10 is a schematic diagram of an application instance of three orders of synapse weight parameters according to an embodiment of the present invention;
FIG. 11 is a schematic diagram of two orders of synapse weight parameters used for word memorization according to an embodiment of the present invention;
FIG. 12 is a schematic block diagram of a signal processing apparatus based on a spiking neural network according to an embodiment of the present invention; and
FIG. 13 is a schematic block diagram of a signal processing apparatus based on a spiking neural network according to another embodiment of the present invention.
DESCRIPTION OF EMBODIMENTS
[0028] The following describes technical solutions in the embodiments of the present invention with reference to the accompanying drawings.
[0029] FIG. 1 is a schematic diagram of a spiking neural network according to an embodiment of the present invention. As shown in FIG. 1, a k
^{th}-layer neuron is a neuron at any layer in the spiking neural network, the k
^{th}-layer neuron may include m neurons, and m is a positive integer. A (k+1)
^{th}-layer neuron is a next-layer neuron of the k
^{th}-layer neuron, the (k+1)
^{th}-layer neuron may include n neurons, n is a positive integer, and m and n may or may not be equal. There is a synapse weight parameter between the k
^{th}-layer neuron and the (k+1)
^{th}-layer neuron. A signal output by the k
^{th}-layer neuron is processed by using the synapse weight parameter, and is input to the (k+1)
^{th}-layer neuron.
[0030] Optionally, each k
^{th}-layer neuron does not need to have a connection relationship with each (k+1)
^{th}-layer neuron in the spiking neural network. In other words, at least one of the k
^{th}-layer neuron may alternatively have no connection relationship with at least one of the (k+1)
^{th}-layer neuron.
[0031] In this embodiment of the present invention, there may be a plurality of orders of synapse weight parameters between the k
^{th}-layer neuron and the (k+1)
^{th}-layer neuron. In other words, for any neuron
of the k
^{th}-layer neuron and any neuron
of the (k+1)
^{th}-layer neuron that have a connection relationship, there may be q orders of synapse weight parameters between the two neurons, where the q orders of synapse weight parameters may be expressed as
and q is a positive integer greater than 2. In addition, when different values are chosen for i and/or different values are chosen for j, corresponding q may be set to a same value or different values. For example, there may be q orders of synapse weight parameters between a first neuron
of the k
^{th}-layer neuron and a first neuron
of the (k+1)
^{th}-layer neuron, where q may be 5, that is,
For another example, there may be q orders of synapse weight parameters between an m
^{th} neuron
of the k
^{th}-layer neuron and an n
^{th} neuron
of the (k+1)
^{th}-layer neuron, where q may be 3, that is,
[0032] In this embodiment of the present invention, the q orders of synapse weight parameters
between any neuron
of the k
^{th}-layer neuron and any neuron
of the (k+1)
^{th}-layer neuron are used as an example for description. For ease of representation,
w_{1},
w_{2},···,
w_{q} are used in this specification to represent q orders of synapse weight parameters between neurons at any two adjacent layers.
[0033] FIG. 2 is a schematic flowchart of a signal processing method 100 based on a spiking neural network according to an embodiment of the present invention. As shown in FIG. 2, the method 100 includes the following steps:
S110: Determine a first signal F_{1}(t) output by a first neuron.
S120: Process the first signal F_{1}(t) by using q orders of synapse weight parameters w_{q}(t),w_{q-1}(t),···,w_{1}(t), to obtain a second signal F_{2}(t), where a speed at which an initial function
met by an (x+1)^{th}-order synapse weight parameter of the q orders of synapse weight parameters attenuates with time t is higher than a speed at which an initial function
met by an x^{th}-order synapse weight parameter attenuates with the time t, q is a positive integer greater than 1, and 1 ≤ x ≤ q-1.
S130: Input the second signal F_{2}(t) to a second neuron, where the second neuron is a next-layer neuron of the first neuron.
[0034] Therefore, in the signal processing method based on a spiking neural network in this embodiment of the present invention, an input signal is processed by using a plurality of orders of synapse weight parameters, and initial functions of the orders of the synapse weight parameters attenuate with time at different speeds, so that a forgetting characteristic of the neural network is simulated, some unimportant information such as a secondary feature or background noise is forgotten, the neural network is more consistent with reality, feature extraction becomes easier, and a problem of an excessively large information storage amount is further resolved.
[0035] In S110, the first signal
F_{1}(
t) output by the first neuron is determined. The first signal
F_{1}(
t) is a spike signal. Specifically, a signal input from the outside at any moment, that is, a signal needing to be input to a multilayer neural network, may be information such as an image, a word, or a sound that actually needs to be processed. Therefore, the signal may be first converted, by using a spike signal conversion apparatus, into a spike signal that can be identified by the multilayer neural network. For example, the information may be encoded, by using a spike encoding circuit, into a standard spike signal that can be identified by the multilayer neural network, and the spike signal is input to the multilayer neural network at the moment, to be processed.
[0036] Therefore, for a neuron at any layer of the neural network, for example, the first neuron, the spike signal is input to the neuron, and the neuron is activated, so that the neuron outputs the first signal
F_{1}(
t).
F_{1}(
t) is also a spike signal.
[0037] In this embodiment of the present invention, each neuron in the neural network executes a specific operation, and sends the spike signal in a particular manner after specifically processing the received spike signal. Optionally, a neuron may be a physical model. For example, a neuron physical model may be a simple activation model, a leaky integrate and fire (Leaky Integrate and Fire, LIF) model, a Hodgkin-Huxley (Hodgkin-Huxley, HH) model, or the like. These models may all be implemented by using corresponding physical circuits. For example, as shown in FIG. 1, any neuron
of the (k+1)
^{th}-layer neuron may receive an effect of each of neurons
that are connected to
and that are of k
^{th}-layer neurons, in other words, upper-layer neurons.
are neurons that are connected to
and that are of the k
^{th}-layer neurons, and transfer spike signals to the neuron
by using a corresponding synapse weight parameter. These spike signals are processed by the neuron
to obtain
and
is then transferred to the next-layer neuron.
[0038] Therefore, the first signal
F_{1}(
t) output by the first neuron in the neural network is a spike signal that is output after the first neuron processes a signal input by an upper-layer neuron.
[0039] In S120, the first signal
F_{1}(
t) is processed by using the q orders of synapse weight parameters
w_{q}(
t),
w_{q-1}(
t),···,
w_{1}(
t), to obtain the second signal
F_{2}(
t). The speed at which the initial function
met by the (x+1)
^{th}-order synapse weight parameter of the q orders of synapse weight parameters attenuates with time is higher than the speed at which the initial function
met by the x
^{th}-order synapse weight parameter attenuates with time, where q is a positive integer greater than 1, and 1 ≤ x ≤ q-1.
[0040] It should be understood that the first signal
F_{1}(
t) is processed by using the q orders of synapse weight parameters
w_{q}(
t)
,w_{q-1}(
t),···,
w_{1}(
t). When each order of synapse weight parameter of the q orders of synapse weight parameters is subject to no effect of a stimulation signal, all the q orders of synapse weight parameters are set to meet corresponding initial functions
The speed at which the initial function
met by the (x+1)
^{th}-order synapse weight parameter of the q orders of synapse weight parameters attenuates with time is higher than the speed at which the initial function
met by the x
^{th}-order synapse weight parameter attenuates with time. Optionally, an initial function
of a first-order synapse weight parameter of the q orders of synapse weight parameters is set to a function that does not attenuate with time.
[0041] For example, as shown in FIG. 3, the first-order synapse weight parameter corresponds to a long-term memory effect, in other words,
does not attenuate with time. A second-order synapse weight parameter corresponds to a mid-and-long term memory effect, in other words,
slowly attenuates with time. By analogy, a q
^{th}-order synapse weight parameter corresponds to an immediate memory effect, in other words, a speed at which
attenuates with time is the largest.
[0042] Optionally, when initial functions are set for the q orders of synapse weight parameters, a type of an initial function of each order of synapse weight parameter may be a nonlinear attenuation function such as an exponential function, a logarithmic function, or a step function, or may be a linear attenuation function, or may be a combination of any two or more of the foregoing function types. The initial functions of the orders of synapse weight parameters may be set to a same type, for example, an exponential function. Alternatively, the initial functions of the orders of synapse weight parameters may be set to different types. For example, initial functions of some synapse weight parameters are linear attenuation functions, and initial functions of other synapse weight parameters are set to logarithmic functions. This is not limited in this embodiment of the present invention.
[0043] In this embodiment of the present invention, after the first neuron outputs the first signal
F_{1}(
t), all or some of the q orders of synapse weight parameters are activated with a stimulation effect of the first signal. Specifically, any moment, for example, a moment
t_{1}, in a time period within which the first neuron outputs the first signal
F_{1}(
t) is used as an example. That is, the first signal
F_{1}(
t) may include a first sub-signal
F_{1}(
t_{1}) output by the first neuron at the moment
t_{1}, and the first sub-signal
F_{1}(
t_{1}) may activate each order or some of the q orders of synapse weight parameters.
[0044] Specifically, for a highest-order synapse weight parameter, that is, the q
^{th}-order synapse weight parameter
w_{q}(
t_{1}), with a stimulation effect of the first sub-signal
F_{1}(
t_{1})
w_{q}(
t_{1}) meets the following formula (1):
where
w_{q}(
t_{1}-1) represents a q
^{th}-order synapse weight parameter at a moment
t_{1}-1, the moment
t_{1}-1 is a previous moment of the moment
t_{1}, and Δ
F_{q}(
t_{1}) is an update quantity determined based on a learning rule and a stimulation effect, at the moment
t_{1}, of the first sub-signal
F_{1}(
t_{1}) on the q
^{th}-order synapse weight parameter
w_{q}(
t_{1}-1) at the moment
t_{1}-1.
[0045] It should be understood that for a moment
t_{2} after the time period within which the first neuron outputs the first signal
F_{1}(
t), assuming that the moment
t_{2} is any moment at which there is no stimulation effect of the first signal
F_{1}(
t), the q
^{th}-order synapse weight parameter meets an initial function
at the moment
t_{2}.
[0046] In this embodiment of the present invention, for other orders of synapse weight parameters except the highest-order synapse weight parameter, that is, an x
^{th}-order synapse weight parameter
w_{x}(
t_{1}), where 1 ≤ x ≤ q-1, with a stimulation effect of the first sub-signal
F_{1}(
t_{1}),
w_{x}(
t) meets the following formula (2):
where
w_{x}(
t_{1}-1) represents an x
^{th}-order synapse weight parameter at the moment
t_{1}-1; Δ
F_{x}(
t_{1}) is an update quantity determined based on a learning rule and a stimulation effect, at the moment
t_{1}, of the first sub-signal
F_{1}(
t_{1}) on the x
^{th}-order synapse weight parameter
w_{x}(
t_{1}-1) at the moment
t_{1}-1; Δ
w_{x,x+1}(
t_{1}),Δ
w_{x,x+2}(
t_{1}),···,Δ
w_{x,xq}(
t_{1}) are respectively quantities of impact of an (x+1)
^{th}-order synapse weight parameter, an (x+2)
^{th}-order synapse weight parameter, ..., and the q
^{th}-order synapse weight parameter that are at the moment
t_{1} on the x
^{th}-order synapse weight parameter
w_{x}(
t_{1}).
[0047] It should be understood that when an (x+i)
^{th}-order synapse weight parameter
w_{x+i}(
t_{1}) at the moment
t_{1} is greater than or equal to a threshold of an (x+i)
^{th}-order synapse weight, Δ
w_{x,x+i}(
t_{1}) is not 0; or when an (x+i)
^{th}-order synapse weight parameter
w_{x+i}(
t_{1}) at the moment
t_{1} is less than a threshold of an (x+i)
^{th}-order synapse weight, Δ
w_{x,x+i}(
t_{1}) is equal to 0, and i = 1, 2, ..., or q-x.
[0048] Specifically, the q
^{th}-order synapse weight parameter changes due to the stimulation effect of the first sub-signal
F_{1}(
t_{1}) at the moment
t_{1}. When the q
^{th}-order synapse weight parameter
w_{q}(
t_{1}) is greater than or equal to a threshold of a corresponding q
^{th}-order synapse weight, the q
^{th}-order synapse weight parameter may activate other (q-1) orders of synapse weight parameters, in other words, Δ
w_{x,q}(
t_{1}) is not 0. Similarly, for any (x+i)
^{th}-order synapse weight parameter
w_{x+i}(
t_{1}), when
w_{x+i}(
t_{1}) is greater than or equal to a threshold of an (x+i)
^{th}-order synapse weight, Δ
w_{x,x+i}(
t_{1}) is not 0.
[0049] Optionally, if the q
^{th}-order synapse weight parameter changes due to the stimulation effect of the first sub-signal
F_{1}(
t_{1}) at the moment
t_{1}, but is less than a threshold of a corresponding q
^{th}-order synapse weight, the q
^{th}-order synapse weight parameter does not activate other (q-1) orders of synapse weight parameters, in other words, Δ
w_{x,q}(
t_{1}) is equal to 0. Similarly, for any (x+i)
^{th}-order synapse weight parameter
w_{x+i}(
t_{1}) , when
w_{x+i}(
t_{1}) is less than a threshold of an (x+i)
^{th}-order synapse weight, Δ
w_{x,x+i}(
t_{1}) is 0.
[0050] In this embodiment of the present invention, a corresponding threshold is set for each order of synapse weight parameter of the q orders of synapse weight parameters, and the threshold may be set according to an actual situation. No limitation is set thereto in this embodiment of the present invention.
[0051] It should be understood that for a moment
t_{2} after a time period within which the first neuron outputs the first signal
F_{1}(
t), assuming that the moment
t_{2} is any moment at which there is no stimulation effect of the first signal
F_{1}(
t), a quantity Δ
F_{x}(
t_{2}) of impact of the first signal
F_{1}(
t) on the x
^{th}-order synapse weight parameter at the moment
t_{2} is 0. If quantities Δ
w_{x,x+1}(
t_{2}),Δ
w_{x,x+2}(
t_{2}),···,Δ
w_{x,q}(
t_{2}) of impact of an (x+1)
^{th}-order synapse weight parameter, an (x+2)
^{th}-order synapse weight parameter, ..., and the q
^{th}-order synapse weight parameter on the x
^{th}-order synapse weight parameter are not all 0 in this case, the x
^{th}-order synapse weight parameter still meets the formula (2) at the moment
t_{2}; or if quantities Δ
w_{x,x+1}(
t_{2}),Δ
w_{x,x+2}(
t_{2}),···,Δ
w_{x,q}(
t_{2}) of impact of an (x+1)
^{th}-order synapse weight parameter, an (x+2)
^{th}-order synapse weight parameter, ..., and the q
^{th}-order synapse weight parameter on the x
^{th}-order synapse weight parameter are all equal to 0 in this case, the x
^{th}-order synapse weight parameter meets an initial function
at the moment
t_{2}.
[0052] In this embodiment of the present invention, the update quantity Δ
F_{q}(
t_{1}) and the update quantity Δ
F_{x}(
t_{1}) are determined in the formulas (1) and (2) based on the learning rule and the first sub-signal
F_{1}(
t_{1})
. The learning rule herein may be an existing related learning rule. For example, the learning rule may be a learning rule based on a biological feature such as an STDP learning rule or a Hebb learning rule. Alternatively, the learning rule may be a supervised learning algorithm based on an error back propagation mechanism, for example, a SpikeProp learning rule, a QucikProp learning rule, a Tempotron learning rule, or an E-Learning learning rule. No limitation is set thereto in this embodiment of the present invention.
[0053] It should be understood that the first sub-signal
F_{1}(
t_{1}) at the moment
t_{1} may be set to affect all or some of the q orders of synapse weight parameters. For example, the first sub-signal
F_{1}(
t_{1}) may be set to affect only the q
^{th}-order synapse weight parameter. In other words, a quantity Δ
F_{q}(
t_{1}) of impact of the first sub-signal
F_{1}(
t_{1}) on the q
^{th}-order synapse weight parameter is not 0, and a quantity Δ
F_{x}(
t_{1}) of impact of the first sub-signal
F_{1}(
t_{1}) on the x
^{th}-order synapse weight parameter other than the q
^{th}-order synapse weight parameter is 0. For another example, the first sub-signal
F_{1}(
t_{1}) may alternatively be set to affect only the q
^{th}-order synapse weight parameter to a (q-x)
^{th}-order synapse weight parameter. In other words, Δ
F_{q}(
t_{1}), Δ
F_{q-1}(
t_{1}),..., and Δ
F_{q-x}(
t_{1}) are not 0, and Δ
F_{q-x-1}(
t_{1}), Δ
F_{q-x-2}(
t_{1}), ..., and Δ
F_{1}(
t_{1}) are 0.
[0054] Similarly, for the formula (2), the x
^{th}-order synapse weight parameter is set to be related to each higher-order synapse weight parameter. That is, the (x+1)
^{th}-order synapse weight parameter affects each lower-order synapse weight parameter. In other words, the (x+1)
^{th}-order synapse weight parameter affects the x
^{th}-order synapse weight parameter to the first-order synapse weight parameter. Optionally, the (x+1)
^{th}-order synapse weight parameter may alternatively be set to affect only some lower-order synapse weight parameters. For example, the (x+1)
^{th}-order synapse weight parameter may be set to affect only the x
^{th}-order synapse weight parameter that is one order lower than the (x+1)
^{th}-order synapse weight parameter. In other words, the x
^{th}-order synapse weight parameter is related to the (x+1)
^{th}-order synapse weight parameter. In other words, Δ
w_{x,x+2}(
t_{2}),Δ
w_{x,x+3}(
t_{2}),···,Δ
w_{x,q}(
t_{2}) are all 0 in the formula (2). For another example, the x
^{th}-order synapse weight parameter may alternatively be set to be related to the (x+1)
^{th}-order synapse weight parameter to the (x+i)
^{th}-order synapse weight parameter. Therefore, Δ
w_{x,x+i+1}(
t_{2}),Δ
w_{x,x+i+2}(
t_{2})
,···,Δ
w_{x,q}(
t_{2}) are all 0.
[0055] Preferably, in an embodiment, any moment, for example, a moment
t_{1}, in a time period within which the first neuron outputs the first signal
F_{1}(
t) is used as an example. That is, the first signal
F_{1}(
t) includes the first sub-signal
F_{1}(
t) output by the first neuron at the moment
t_{1}. In this case, the first sub-signal
F_{1}(
t_{1}) may be set to be capable of activating only the highest-order synapse weight parameter of the q orders of synapse weight parameters. In other words, the q
^{th}-order synapse weight parameter
w_{q}(
t_{1}) still meets the formula (1) at the moment
t_{1},
w_{q}(
t_{1}-1) represents a q
^{th}-order synapse weight parameter at a moment
t_{1}-1, the moment
t_{1}-1 is a previous moment of the moment
t_{1}, and Δ
F_{q}(
t_{1}) is an update quantity determined based on a learning rule and a stimulation effect, at the moment
t_{1}, of the first sub-signal
F_{1}(
t_{1}) on the q
^{th}-order synapse weight parameter
w_{q}(
t_{1}-1) at the moment
t_{1}-1.
[0056] However, for other orders of synapse weight parameters except the highest-order synapse weight parameter, that is, the x
^{th}-order synapse weight parameter
w_{x}(
t_{1}), where 1 ≤ x ≤ q-1, the x
^{th}-order synapse weight parameter
w_{x}(
t_{1}) may be set to be unrelated to the first sub-signal
F_{1}(
t_{1}), in other words, Δ
F_{x}(
t_{1}) in the formula (2) is set to 0. However, the x
^{th}-order synapse weight parameter
w_{x}(
t_{1}) is related only to a value of the (x+1)
^{th}-order synapse weight parameter, and a higher-order synapse weight parameter is set to affect only a synapse weight parameter that is one order lower than the higher-order synapse weight parameter.
[0057] Specifically, when the (x+1)
^{th}-order synapse weight parameter
w_{x+1}(
t_{1}) at the moment
t_{1} is less than a threshold of an (x+1)
^{th}-order synapse weight, the x
^{th}-order synapse weight parameter
w_{x}(
t_{1}) at the moment
t_{1} meets an initial function
Alternatively, when the (x+1)
^{th}-order synapse weight parameter
w_{x+1}(
t_{1}) at the moment
t_{1} is greater than or equal to a threshold of an (x+1)
^{th}-order synapse weight, the x
^{th}-order synapse weight parameter
w_{x}(
t_{1}) at the moment
t_{1} meets a formula (3):
where
w_{x}(
t_{1}-1) represents an x
^{th}-order synapse weight parameter at the moment
t_{1}-1; Δ
w_{x,x+1}(
t_{1}) is a quantity of impact of the (x+1)
^{th}-order synapse weight parameter at the moment
t_{1} on the x
^{th}-order synapse weight parameter
w_{x}(
t_{1}).
[0058] Specifically, FIG. 3 is used as an example, and when the first neuron outputs the first sub-signal
F_{1}(
t_{1}) at the moment
t_{1}, the first sub-signal directly acts on a q
^{th} synapse connected to the first neuron, that is, activates an immediate memory q
^{th}-order synapse weight parameter
w_{q}(
t_{1}). When the immediate memory
w_{q}(
t_{1}) is greater than or equal to a threshold of a corresponding q
^{th}-order synapse weight, immediate memory that is one order lower than the immediate memory
w_{q}(
t_{1}) is activated, that is, a (q-1)
^{th} synapse weight parameter
w_{q-1}(
t_{1}) meets the formula (3). Another case can be obtained by analogy until long-term memory is activated, in other words, the first synapse weight parameter is activated.
[0059] It should be understood that if the first signal
F_{1}(
t) no longer exists at any moment, for example, the moment
t_{2}, but a higher-order synapse weight parameter
w_{x+1}(
t_{2}) is still greater than or equal to the threshold of the corresponding (x+1)
^{th}-order synapse weight,
W_{x+1}(
t_{2}) may still activate a synapse weight parameter that is one order lower than the higher-order synapse weight parameter
w_{x+1}(
t_{2}). In other words, the x
^{th}-order synapse weight parameter
w_{x}(
t_{2}) still meets the formula (3), and it is set that
t_{1} =
t_{2}.
[0060] In this embodiment of the present invention, q-order synapse weights are determined based on the foregoing process, and the first signal
F_{1}(
t) output by the first neuron is processed by using the q orders of synapse weight parameters
w_{q}(
t),
w_{q-1}(
t),···
w_{1}(
t), to obtain the second signal
F_{2}(
t). Optionally, the first signal
F_{1}(
t) may be multiplied by the first-order synapse weight parameter
w_{1}(
t), to obtain the second signal
F_{2}(
t). However, no limitation is set thereto in this embodiment of the present invention.
[0061] In this embodiment of the present invention, any two neurons are connected by using a multi-order synapse. The multi-order synapse may be physically implemented by using one or more memristor units, or may be physically implemented by using a complex synapse circuit. Specifically, FIG. 4 is used as an example, and FIG. 4 shows an instance in which two neurons are connected by using one memristor unit. To implement a function of the multi-order synapse, the memristor unit also needs to have a multi-order effect. For example, two orders of synapse weight parameters are used as an example. Therefore, the memristor unit is a memristor unit having a two-order effect.
[0062] As shown in FIG. 5, the first signal
F_{1}(
t) output by the first neuron
y_{1} may be a spike signal shown in FIG. 5, and the spike signal acts on a two-order memristor. The spike signal triggers a change in a conductivity value of the memristor. The process is a complex physical process: A direct effect of the spike signal is to trigger a change in local temperature of the memristor. When the spike signal is removed, the local temperature promptly recovers to a balance state, for example, in a heat dissipation manner. This is equivalent to a short-term memory effect of a synapse weight parameter. That is, the change in the temperature of the memristor corresponds to a change in a second-order synapse weight parameter. When accumulated local temperature is excessively high, the conductivity value of the memristor is induced to permanently change. This is equivalent to a long-term memory effect of a synapse weight parameter. That is, a conductivity change in the memristor corresponds to a change in the first-order synapse weight parameter when the second-order synapse weight parameter exceeds a threshold. In this way, the single memristor unit may complete a synapse effect corresponding to the two orders of synapse weight parameters.
[0063] In S130, the second signal
F_{2}(
t) is input to the second neuron, and the second neuron is the next-layer neuron of the first neuron. The first neuron is used as a former neuron, and sends the spike signal, that is, the first signal, to the second neuron by using the q-order synapses. The second neuron is used as a latter neuron.
[0064] It should be understood that if the latter neuron is not in a last-layer network, that is, the latter neuron is not at an output layer, the signal is transferred to a next-layer network. In this case, the latter neuron may be considered as a former neuron of the next-layer network. A signal transfer manner is the same as the foregoing signal transfer manner. In other words, an original second neuron may be considered as the first neuron, and a next neuron of the original second neuron is the second neuron. In addition, a spike signal input by an original latter neuron used as a former neuron not only includes a spike signal input from the outside, but also includes a spike signal output by a previous network. This part may be considered as cyclic network layering training of the spiking neural network. It should be noted that when a signal is transferred between networks, a time difference may exist.
[0065] In this embodiment of the present invention, if the second neuron is a neuron in the last-layer network, after the second signal
F_{2}(
t) is input to the second neuron, the second neuron processes the second signal and outputs a result. Correspondingly, an original signal of the signal before the signal enters the neural network may be information such as an image, a word, or a sound that actually needs to be processed, and may be first converted, by using a spike signal conversion apparatus, into a spike signal that can be identified by the multilayer neural network, and then processed through the neural network. Similarly, after processing the signal, the last-layer neuron may convert the spike signal into actual information by using the spike signal conversion apparatus and output the actual information such as an image, a word, or a sound. Optionally, the spike signal conversion apparatus may be a spike decoding circuit and convert the spike signal into information such as an image, a word, or a sound.
[0066] Therefore, in the signal processing method based on a spiking neural network in this embodiment of the present invention, an input signal is processed by using a plurality of orders of synapse weight parameters, and initial functions of the orders of the synapse weight parameters attenuate with time at different speeds, so that a forgetting characteristic of the neural network is simulated, some unimportant information such as a secondary feature or background noise is forgotten, the neural network is more consistent with reality, feature extraction becomes easier, and a problem of an excessively large information storage amount is further resolved.
[0067] The signal processing method based on a spiking neural network in this embodiment of the present invention is described below in detail by using several actual application scenarios as examples.
Embodiment 1
[0068] For example, as shown in FIG. 1, it is assumed that there are two orders of synapse weight parameters (
w_{1},
w_{2}) between any neuron
of a k
^{th}-layer neuron and any neuron
of a (k+1)
^{th}-layer neuron,
w_{1} is a first-order synapse weight parameter, and represents long-term memory, and an initial function of
w_{1} is set to a function that does not attenuate with time, and an initial value of
w_{1} may be set to
herein, in other words, the initial value remains 0 when
w_{1} is subject to no stimulation effect;
w_{2} is a second-order synapse weight parameter, and represents immediate memory, and an initial function of
w_{2} is set to a function that attenuates with time, and is specifically expressed as the following formula (4):
where
t_{0} represents a moment at which a highest-order synapse weight parameter changes based on a related learning rule when signals of a former neuron and a latter neuron act on a synapse weight parameter together, and the highest-order synapse weight parameter herein is
w_{2}; in addition, for t<
t_{0}, the second-order synapse weight parameter may be set to 0.
[0069] The long-term memory first-order synapse weight parameter
w_{1} changes when and only when the immediate memory second-order synapse weight parameter
w_{2} is greater than or equal to a threshold of a second-order synapse weight. Specifically, the long-term first-order synapse weight parameter
w_{1} may be expressed as the following formula (5):
where 7.5 is the threshold of the second-order synapse weight.
[0070] Specifically, specific calculation values in FIG. 6 may be used as an example. As shown in FIG. 6, when t<0.5, the initial value of the long-term first-order synapse weight parameter
w_{1} and an initial value of the immediate memory second-order synapse weight parameter
w_{2} are both set to 0. When t=0.5, a former neuron outputs a signal to a synapse. With an effect of the signal, the immediate memory second-order synapse weight parameter
w_{2} changes based on an STDP learning rule.
[0071] Because the threshold of the second-order synapse weight is set to 7.5, with a stimulation effect of an input signal, as shown in FIG. 6, the immediate memory second-order synapse weight parameter
w_{2} exceeds the threshold 7.5 when t=0.5. Therefore, when t=0.5, the first-order synapse weight parameter
w_{1} is activated, and a change in the first-order synapse weight parameter
w_{1} meets the formula (5).
[0072] When t=t+1, a next moment is entered, and the input signal is removed. Therefore, the immediate memory second-order synapse weight parameter
w_{2} continuously attenuates based on a forgetting rule, in other words, continuously attenuates based on the specified initial function formula (4) with time, until the immediate memory second-order synapse weight parameter
w_{2} decreases to the initial value 0. At an initial stage of removing the stimulation signal, because the second-order synapse weight parameter
w_{2} is still greater than the threshold 7.5 set for the second-order synapse weight parameter
w_{2}, the long-term memory first-order synapse weight parameter
w_{1} is continuously activated in this case. Therefore, the first-order synapse weight parameter
w_{1} continuously increases within a time period, until the immediate memory second-order synapse weight parameter is less than the threshold of the immediate memory second-order synapse weight parameter. Therefore, the first-order synapse weight parameter
w_{1} no longer increases, meets the specified initial function, and remains unchanged and no longer attenuates with time.
[0073] In this embodiment of the present invention, when stimulation signals output by the first neuron are different, effects on a synapse are different. In other words, changes corresponding to the orders of synapse weight parameters are different. For example, as shown in FIG. 7, a period of a stimulation signal acting on a synapse is 2s, and a period of a stimulation signal in FIG. 8 is Is. Therefore, a corresponding immediate memory second-order synapse weight parameter
w_{2} increases during each time of stimulation, but quickly attenuates after the stimulation. When a next time of stimulation occurs, the second-order synapse weight parameter
w_{2} has not recovered to an initial value 0. Therefore, the second-order synapse weight parameter
w_{2} increases again based on a current status value at a current moment. In this way, an accumulative effect is formed. Both the stimulation in FIG. 7 and the stimulation in FIG. 8 are relatively weak, and a single time of stimulation does not trigger a change in a long-term memory first-order synapse weight parameter
w_{1}. However, in FIG. 7, because stimulation frequency is relatively low, continuous stimulation still does not cause a second-order synapse weight parameter
w_{2} to exceed a threshold. Therefore, the change in the long-term memory first-order synapse weight parameter
w_{1} is not triggered. In other words, the first-order synapse weight parameter
w_{1} remains 0. However, when the stimulation frequency increases, as shown in FIG. 8, continuous stimulation may cause the second-order synapse weight parameter
w_{2} to exceed the threshold. Therefore, the change in the long-term memory first-order synapse weight parameter
w_{1} is triggered. This explains that frequent weak stimulation and infrequent strong stimulation have a same function, and the foregoing process conforms to biological cognitive habits. In other words, the multi-order neural network is closer to biological cognitive habits.
Embodiment 2
[0074] For example, as shown in FIG. 1, it is assumed that there are three orders of synapse weight parameters (
w_{1},
w_{2},
w_{3}) between any neuron
of a k
^{th}-layer neuron and any neuron
of a (k+1)
^{th}-layer neuron,
w_{1} is a first-order synapse weight parameter, and represents long-term memory, and an initial function of
w_{1} is set not to attenuate with time;
w_{2} is a second-order synapse weight parameter, and represents short-term memory, and an initial function of
w_{2} is set to relatively slowly attenuate with time;
w_{3} is a third-order synapse weight parameter, and represents immediate memory, and an initial function of
w_{3} is set to quickly attenuate with time.
[0075] Specifically, the initial functions of the three orders of synapse weight parameters (
w_{1},
w_{2},
w_{3}) may be set to the following functions. For a highest-order synapse weight parameter, that is, the third-order synapse weight parameter
w_{3}, it is assumed that the third-order synapse weight parameter
w_{3} is subject to an effect of a stimulation signal at a moment
t_{3}. For example, the stimulation signal may be a stimulation signal output by a former neuron. The third-order synapse weight parameter
w_{3} changes based on a learning rule. The third-order synapse weight parameter is no longer subject to new stimulation after the moment
t_{3}. Therefore, the third-order synapse weight parameter
w_{3} quickly attenuates with time based on the specified initial function. It is assumed that the initial function herein is set to the following formula (6):
where
d_{3} is an immediate memory attenuation factor, and
d_{3} > 0.
[0076] Similarly, for the second-order synapse weight parameter
w_{2}, it is assumed that the second-order synapse weight parameter
w_{2} is not affected by a stimulation signal output by a neuron, and is related only to the third-order synapse weight parameter
w_{3} that is one order higher than the second-order synapse weight parameter
w_{2}. Moreover, it is assumed that the third-order synapse weight parameter
w_{3} exceeds a threshold of a corresponding third-order synapse weight at a moment
t_{2}, so that the second-order synapse weight parameter
w_{2} can be activated and change. After the moment
t_{2}, the third-order synapse weight parameter
w_{3} is less than the threshold of the corresponding third-order synapse weight, and the second-order synapse weight parameter
w_{2} is no longer activated, so that the second-order synapse weight parameter
w_{2} meets the initial function after the moment
t_{2}, and relatively slowly attenuates with time, and a speed at which the initial function attenuates is less than a speed at which the third-order synapse weight parameter
w_{3} attenuates. Optionally, the initial function may be set to the following formula (7):
where
d_{2} is an immediate memory attenuation factor, and
d_{3} > d_{2} > 0.
[0077] Similarly, for a lowest-order synapse weight parameter, that is, the first-order synapse weight parameter
w_{1}, it is assumed that the first-order synapse weight parameter
w_{1} is unrelated to both a stimulation signal output by a neuron and a value of the third-order synapse weight parameter
w_{3}, and is related only to the second-order synapse weight parameter
w_{2} that is one order higher than the first-order synapse weight parameter
w_{1}. Moreover, at a moment
t_{1}, the second-order synapse weight parameter
w_{2} exceeds a threshold of a corresponding second-order synapse weight, so that the second-order synapse weight parameter
w_{2} can be activated and change. After the moment
t_{1}, the second-order synapse weight parameter
w_{2} is less than the threshold of the corresponding second-order synapse weight, and the first-order synapse weight parameter
w_{1} is no longer activated, so that the first-order synapse weight parameter
w_{1} meets the initial function after the moment
t_{1}, and does not change with time. Therefore, the initial function of the first-order synapse weight parameter
w_{1} may be set to the following formula (8):
[0078] In this embodiment of the present invention, the three orders of synapse weight parameters (
w_{1},
w_{2},
w_{3}) may be updated based on the following rules. An update rule of the third-order synapse weight parameter
w_{3} may be set to: The third-order synapse weight parameter
w_{3} changes when and only when an external stimulation signal exists; otherwise, meets the formula (6). Specifically, if the third-order synapse weight parameter
w_{3} is stimulated by a signal at a moment t, the update rule of the third-order synapse weight parameter
w_{3} may be expressed as the following formula (9):
where
w_{3}(
t-1) represents a value of the third-order synapse weight parameter at a previous moment; Δ
F_{3}(
t) represents an update quantity generated due to a stimulation effect of the stimulation signal on the third-order synapse weight parameter. Optionally, the update quantity Δ
F_{3}(
t) may be determined based on the learning rule and the stimulation signal. For example, the learning rule may be an STDP learning rule. As shown in FIG. 9, if information about a former neuron is generated before an activity of a latter neuron, a connection between the neurons is enhanced. Alternatively, if information about a former neuron is generated after an activity of a latter neuron, a connection between the neurons is weakened. ΔT represents a time difference of activities of the former neuron and the latter neuron. A value of Δ
F_{3}(
t) is related to an absolute value of the time difference ΔT. A smaller absolute value indicates larger Δ
F_{3}(
t).
[0079] An update rule of the second-order synapse weight parameter
w_{2} may be set to: The second-order synapse weight parameter
w_{2} changes when and only when the third-order synapse weight parameter
w_{3} exceeds the threshold of the corresponding third-order synapse weight; otherwise, meets the formula (7). Specifically, the update rule of the second-order synapse weight parameter
w_{2} may be expressed as the following formula (10):
where
w_{2}(
t-1) represents a value of the second-order synapse weight parameter at a previous moment; Δ
w_{23}(
t) is a quantity of impact of the third-order synapse weight parameter
w_{3} on the second-order synapse weight parameter
w_{2}, and
Δw_{23}(
t) is related to the threshold of the third-order synapse weight, for example, Δ
w_{23}(
t) may be set to meet the following formula (11):
where
T_{3} represents the threshold of the third-order synapse weight corresponding to the third-order synapse weight parameter
w_{3}.
[0080] An update rule of the first-order synapse weight parameter
w_{1} may be set to: The first-order synapse weight parameter
w_{2} changes when and only when the second-order synapse weight parameter
w_{1} exceeds the threshold of the corresponding second-order synapse weight; otherwise, meets the formula (8). Specifically, the update rule of the first-order synapse weight parameter
w_{1} may be expressed as the following formula (12):
where
w_{1}(
t-1) represents a value of the first-order synapse weight parameter at a previous moment; Δ
w_{12}(
t) is a quantity of impact of the second-order synapse weight parameter
w_{2} on the first-order synapse weight parameter
w_{1}, and Δ
w_{12}(
t) is related to the threshold of the second-order synapse weight, for example, Δ
w_{12}(
t) may be set to meet the following formula (13):
where
T_{2} represents the threshold of the second-order synapse weight corresponding to the second-order synapse weight parameter
w_{2}.
[0081] Therefore, with a stimulation effect of a spike signal shown in FIG. 10, changes in the three orders of synapse weight parameters (
w_{1},
w_{2},
w_{3}) may be shown in FIG. 10.
[0082] In this embodiment of the present invention, in addition to the foregoing embodiment, the method may be further applied to another application scenario. No limitation is set thereto in this embodiment of the present invention.
[0083] Optionally, in an embodiment, a function of the spiking neural network having a forgetting characteristic in this embodiment of the present invention is described below by using a specific application instance of word memorization. For ease of description, a neural network having two orders of synapse weight parameters is used herein as an example for description. Specifically, each word recitation may be considered as an input of a spike signal. It is assumed that one person recites a same word once on each of a first day, a second day, a fourth day, a fifth day, and a sixth day, in other words, a spike signal is input to the two-order spiking neural network on each of the first day, the second day, the fourth day, the fifth day, and the sixth day, theoretically, after reciting a new word, the person will quickly forget the word and can commit the word to memory after repeated recitations. The process can be implemented through simulation by using the two-order spiking neural network in this embodiment of the present invention.
[0084] Specifically, as shown in FIG. 11, recitation of a new word by a person may be considered as inputting a stimulation signal. Therefore, an immediate memory higher-order synapse weight parameter
w_{2} may be activated based on a learning rule. However,
w_{2} does not exceed a threshold
T_{2} corresponding to
w_{2}. Therefore, a change in a long-term memory first-order synapse weight parameter
w_{1} is not triggered. In addition, the immediate memory second-order synapse weight parameter
w_{2} attenuates with time. However, the word is recited on the second day, the fourth day, the fifth day, and the sixth day again. In other words, new stimulation signals are input. As shown in FIG. 11, on the sixth day, the second-order synapse weight parameter
w_{2} exceeds the threshold
T_{2} corresponding to
w_{2}, and long-term memory of the person is triggered. In other words, the first-order synapse weight parameter
w_{1} is activated. Therefore, the word can be permanently memorized.
[0085] Similarly, an application scenario such as hot news screening or key information obtaining may also be implemented through simulation by using the neural network having a plurality of orders of synapse weight parameters and having a forgetting characteristic in this embodiment of the present invention.
[0086] Therefore, in the signal processing method based on a spiking neural network in this embodiment of the present invention, an input signal is processed by using a plurality of orders of synapse weight parameters, and initial functions of the orders of the synapse weight parameters attenuate with time at different speeds, so that a forgetting characteristic of the neural network is simulated, some unimportant information such as a secondary feature or background noise is forgotten, the neural network is more consistent with reality, feature extraction becomes easier, and a problem of an excessively large information storage amount is further resolved. In addition, various real-time and complex problems such as mode identification, natural language processing, and control and optimization may be completed by using the neural network in this embodiment of the present invention, and the present invention has a wide application prospect. The spiking neural network having a forgetting characteristic gradually forgets learned information such as a secondary feature or background noise, and an eventually stored feature is a most important feature of a thing, and is more consistent with reality.
[0087] It should be understood that sequence numbers of the foregoing processes do not mean execution sequences in the embodiments of the present invention. The execution sequences of the processes should be determined based on functions and internal logic of the processes, and should not be construed as any limitation on the implementation processes of the embodiments of the present invention.
[0088] The signal processing method based on a spiking neural network in the embodiments of the present invention is described above in detail with reference to FIG. 1 to FIG. 11. Signal processing apparatuses based on a spiking neural network in the embodiments of the present invention are described below with reference to FIG. 12 and FIG. 13.
[0089] As shown in FIG. 12, a signal processing apparatus 200 based on a spiking neural network in an embodiment of the present invention includes:
a determining module 210, configured to determine a first signal F_{1}(t) output by a first neuron;
a processing module 220, configured to process the first signal F_{1}(t) by using q orders of synapse weight parameters w_{q}(t),w_{q-1}(t),···,w_{1}(t), to obtain a second signal F_{2}(t), where a speed at which an initial function
met by an (x+1)^{th}-order synapse weight parameter of the q orders of synapse weight parameters attenuates with time t is higher than a speed at which an initial function
met by an x^{th}-order synapse weight parameter attenuates with the time t, q is a positive integer greater than 1, and 1 ≤ x ≤ q-1; and
an input module 230, configured to input the second signal F_{2}(t) to a second neuron, where the second neuron is a next-layer neuron of the first neuron.
[0090] Therefore, the signal processing apparatus based on a spiking neural network in this embodiment of the present invention processes an input signal by using a plurality of orders of synapse weight parameters, and initial functions of the orders of the synapse weight parameters attenuate with time at different speeds, so that a forgetting characteristic of the neural network is simulated, some unimportant information such as a secondary feature or background noise is forgotten, the neural network is more consistent with reality, feature extraction becomes easier, and a problem of an excessively large information storage amount is further resolved.
[0091] Optionally, in an embodiment, an initial function
of a first-order synapse weight parameter of the q orders of synapse weight parameters does not attenuate with time.
[0092] Optionally, in an embodiment, the first signal
F_{1}(
t) includes a first sub-signal
F_{1}(
t_{1}) output by the first neuron at a moment
t_{1}, and a q
^{th}-order synapse weight parameter
w_{q}(
t_{1}) at the moment
t_{1} meets a formula (1):
where w_{q}(t_{1}-1) represents a q^{th}-order synapse weight parameter at a moment t_{1}-1, the moment t_{1}-1 is a previous moment of the moment t_{1}, and ΔF_{q}(t_{1}) is an update quantity determined based on a learning rule and a stimulation effect, at the moment t_{1}, of the first sub-signal F_{1}(t_{1}) on the q^{th}-order synapse weight parameter w_{q}(t_{1}-1) at the moment t_{1}-1; and
an x^{th}-order synapse weight parameter w_{x}(t_{1}) at the moment t_{1} meets a formula (2):
where w_{x}(t_{1}-1) represents an x^{th}-order synapse weight parameter at the moment t_{1}-1; ΔF_{x}(t_{1}) is an update quantity determined based on the learning rule and a stimulation effect, at the moment t_{1}, of the first sub-signal F_{1}(t_{1}) on the x^{th}-order synapse weight parameter w_{x}(t_{1}-1) at the moment t_{1}-1; Δw_{x,x+1}(t_{1}),Δw_{x,x+2}(t_{1}),···,Δw_{x,q}(t_{1}) are respectively quantities of impact of an (x+1)^{th}-order synapse weight parameter, an (x+2)^{th}-order synapse weight parameter, ..., and the q^{th}-order synapse weight parameter that are at the moment t_{1} on the x^{th}-order synapse weight parameter w_{x}(t_{1}).
[0093] Optionally, in an embodiment, when an (x+i)
^{th}-order synapse weight parameter
w_{x+i}(
t_{1}) at the moment
t_{1} is greater than or equal to a threshold of an (x+i)
^{th}-order synapse weight, Δ
w_{x,x+i}(
t_{1}) is not 0; or when an (x+i)
^{th}-order synapse weight parameter
w_{x+i}(
t_{1}) at the moment
t_{1} is less than a threshold of an (x+i)
^{th} synapse weight, Δ
w_{x,x+i}(
t_{1}) is equal to 0, and i = 1, 2, ..., or q-x.
[0094] Optionally, in an embodiment, the first signal
F_{1}(
t) includes a first sub-signal
F_{1}(
t_{1}) output by the first neuron at a moment
t_{1}, and a q
^{th}-order synapse weight parameter
w_{q}(
t_{1}) at the moment
t_{1} meets a formula (3):
where w_{q}(t_{1}-1) represents a q^{th}-order synapse weight parameter at a moment t_{1}-1, the moment t_{1}-1 is a previous moment of the moment t_{1}, and ΔF_{q}(t_{1}) is an update quantity determined based on a learning rule and a stimulation effect, at the moment t_{1}, of the first sub-signal F_{1}(t_{1}) on the q^{th}-order synapse weight parameter w_{q}(t_{1}-1) at the moment t_{1}-1; and
when an (x+1)^{th}-order synapse weight parameter w_{x+1}(t_{1}) at the moment t_{1} is greater than or equal to a threshold of an (x+1)^{th}-order synapse weight, an x^{th}-order synapse weight parameter w_{x}(t_{1}) at the moment t_{1} meets a formula (4):
where w_{x}(t_{1}-1) represents an x^{th}-order synapse weight parameter at the moment t_{1}-1; Δw_{x,x+1}(t_{1}) is a quantity of impact of the (x+1)^{th}-order synapse weight parameter at the moment t_{1} on the x^{th}-order synapse weight parameter w_{x}(t_{1}); or
when an (x+1)^{th}-order synapse weight parameter w_{x+1}(t_{1}) at the moment t_{1} is less than a threshold of an (x+1)^{th}-order synapse weight, an x^{th}-order synapse weight parameter w_{x}(t_{1}) at the moment t_{1} meets an initial function
[0095] Optionally, in some embodiments, the learning rule is a learning rule based on a biological feature or a supervised learning rule based on an error back propagation mechanism.
[0096] Optionally, in an embodiment, the processing module 220 is specifically configured to determine a product of the first signal
F_{1}(
t) and the first-order synapse weight parameter
w_{1}(
t) as the second signal
F_{2}(
t).
[0097] It should be understood that the foregoing operations and/or functions of modules in the signal processing apparatus 200 in this embodiment of the present invention are intended for implementing corresponding procedures of the methods in FIG. 1 to FIG. 11. For brevity, details are not described herein again.
[0098] It should be further understood that the determining module 210 and the processing module 220 in this embodiment of the present invention may be implemented by using a processor or a processor-related circuit component, and the input module 230 may be implemented by using a transceiver or a transceiver-related circuit component.
[0099] As shown in FIG. 13, an embodiment of the present invention further provides a signal processing apparatus 300 based on a spiking neural network. The signal processing apparatus 300 includes a processor 310, a memory 320, a bus system 330, and a transceiver 340. The processor 310, the memory 320, and the transceiver 340 are connected by using the bus system 330. The memory 320 is configured to store an instruction. The processor 310 is configured to execute the instruction stored in the memory 320, to control the transceiver 340 to receive and send a signal. When the processor 310 executes the instruction stored in the memory 320, the processor 310 is configured to: determine a first signal
F_{1}(
t) output by a first neuron; and process the first signal
F_{1}(
t) by using q orders of synapse weight parameters
w_{q}(
t),
w_{q-1}(
t),···,
w_{1}(
t), to obtain a second signal
F_{2}(
t). A speed at which an initial function
met by an (x+1)
^{th}-order synapse weight parameter of the q orders of synapse weight parameters attenuates with time
t is higher than a speed at which an initial function
met by an x
^{th}-order synapse weight parameter attenuates with the time
t, q is a positive integer greater than 1, and 1 ≤ x ≤ q-1. The transceiver 340 is configured to input the second signal
F_{2}(
t) to a second neuron, where the second neuron is a next-layer neuron of the first neuron.
[0100] Therefore, the signal processing apparatus based on a spiking neural network in this embodiment of the present invention processes an input signal by using a plurality of orders of synapse weight parameters, and initial functions of the orders of the synapse weight parameters attenuate with time at different speeds, so that a forgetting characteristic of the neural network is simulated, some unimportant information such as a secondary feature or background noise is forgotten, the neural network is more consistent with reality, feature extraction becomes easier, and a problem of an excessively large information storage amount is further resolved.
[0101] Optionally, in an embodiment, an initial function
of a first-order synapse weight parameter of the q orders of synapse weight parameters does not attenuate with time.
[0102] Optionally, in an embodiment, the first signal
F_{1}(
t) includes a first sub-signal
F_{1}(
t_{1}) output by the first neuron at a moment
t_{1}, and a q
^{th}-order synapse weight parameter
w_{q}(
t_{1}) at the moment
t_{1} meets a formula (1):
where w_{q}(t_{1}-1) represents a q^{th}-order synapse weight parameter at a moment t_{1}-1, the moment t_{1}-1 is a previous moment of the moment t_{1}, and ΔF_{q}(t_{1}) is an update quantity determined based on a learning rule and a stimulation effect, at the moment t_{1}, of the first sub-signal F_{1}(t_{1}) on the q^{th}-order synapse weight parameter w_{q}(t_{1}-1) at the moment t_{1}-1; and
an x^{th}-order synapse weight parameter w_{x}(t_{1}) at the moment t_{1} meets a formula (2):
where w_{x}(t_{1}-1) represents an x^{th}-order synapse weight parameter at the moment t_{1}-1; ΔF_{x}(t_{1}) is an update quantity determined based on the learning rule and a stimulation effect, at the moment t_{1}, of the first sub-signal F_{1}(t_{1}) on the x^{th}-order synapse weight parameter w_{x}(t_{1}-1) at the moment t_{1}-1; Δw_{x,x+1}(t_{1}),Δw_{x,x+2}(t_{1}),···,Δw_{x,q}(t_{1}) are respectively quantities of impact of an (x+1)^{th}-order synapse weight parameter, an (x+2)^{th}-order synapse weight parameter, ..., and the q^{th}-order synapse weight parameter that are at the moment t_{1} on the x^{th}-order synapse weight parameter w_{x}(t_{1}).
[0103] Optionally, in an embodiment, when an (x+i)
^{th}-order synapse weight parameter
w_{x+i}(
t_{1}) at the moment
t_{1} is greater than or equal to a threshold of an (x+i)
^{th}-order synapse weight, Δ
w_{x,x+i}(
t_{1}) is not 0; or
when an (x+i)
^{th}-order synapse weight parameter
w_{x+i}(
t_{1}) at the moment
t_{1} is less than a threshold of an (x+i)
^{th} synapse weight, Δ
w_{x,x+i}(
t_{1}) is equal to 0, and i = 1, 2, ..., or q-x.
[0104] Optionally, in an embodiment, the first signal
F_{1}(
t) includes a first sub-signal
F_{1}(
t_{1}) output by the first neuron at a moment
t_{1}, and a q
^{th}-order synapse weight parameter
w_{q}(
t_{1}) at the moment
t_{1} meets a formula (3):
where w_{q}(t_{1}-1) represents a q^{th}-order synapse weight parameter at a moment t_{1}-1, the moment t_{1}-1 is a previous moment of the moment t_{1}, and ΔF_{q}(t_{1}) is an update quantity determined based on a learning rule and a stimulation effect, at the moment t_{1}, of the first sub-signal F_{1}(t_{1}) on the q^{th}-order synapse weight parameter w_{q}(t_{1}-1) at the moment t_{1}-1; and
when an (x+1)^{th}-order synapse weight parameter w_{x+1}(t_{1}) at the moment t_{1} is greater than or equal to a threshold of an (x+1)^{th}-order synapse weight, an x^{th}-order synapse weight parameter w_{x}(t_{1}) at the moment t_{1} meets a formula (4):
where w_{x}(t_{1}-1) represents an x^{th}-order synapse weight parameter at the moment t_{1}-1; Δw_{x,x+1}(t_{1}) is a quantity of impact of the (x+1)^{th}-order synapse weight parameter at the moment t_{1} on the x^{th}-order synapse weight parameter w_{x}(t_{1}); or
when an (x+1)^{th}-order synapse weight parameter w_{x+1}(t_{1}) at the moment t_{1} is less than a threshold of an (x+1)^{th}-order synapse weight, an x^{th}-order synapse weight parameter w_{x}(t_{1}) at the moment t_{1} meets an initial function
[0105] Optionally, in an embodiment, the learning rule is a learning rule based on a biological feature or a supervised learning rule based on an error back propagation mechanism.
[0106] Optionally, in an embodiment, the processor 310 is specifically configured to determine a product of the first signal
F_{1}(
t) and the first-order synapse weight parameter
w_{1}(
t) as the second signal
F_{2}(
t).
[0107] It should be understood that the signal processing apparatus 300 based on a spiking neural network in this embodiment of the present invention can correspond to the signal processing apparatus 200 based on a spiking neural network in the embodiment of the present invention, and the foregoing operations and/or functions of the modules in the signal processing apparatus 300 are intended for implementing corresponding procedures of the methods in FIG. 1 to FIG. 11. For brevity, details are not described herein again.
[0108] It should be further understood that in this embodiment of the present invention, the processor may be a central processing unit (Central Processing Unit, CPU), or may be another general purpose processor, a digital signal processor (Digital Signal Processor, DSP), an application-specific integrated circuit (Application-Specific Integrated Circuit, ASIC), a field programmable gate array (Field Programmable Gate Array, FPGA) or another programmable logic device, a discrete gate or a transistor logic device, a discrete hardware component, or the like. The general purpose processor may be a microprocessor, or the processor may be any conventional processor or the like.
[0109] It should be further understood that the memory in this embodiment of the present invention may be a volatile memory or a non-volatile memory, or may include a volatile memory and a non-volatile memory. The non-volatile memory may be a read-only memory (Read-Only Memory, ROM), a programmable read-only memory (Programmable ROM, PROM), an erasable programmable read-only memory (Erasable PROM, EPROM), an electrically erasable programmable read-only memory (Electrically EPROM, EEPROM), or a flash memory. The volatile memory may be a random access memory (Random Access Memory, RAM), and is used as an external cache. By way of example but not limitation, a plurality of forms of RAMs can be used, for example, a static random access memory (Static RAM, SRAM), a dynamic random access memory (Dynamic RAM, DRAM), a synchronous dynamic random access memory (Synchronous DRAM, SDRAM), a double data rate synchronous dynamic random access memory (Double Data Rate SDRAM, DDR SDRAM), an enhanced synchronous dynamic random access memory (Enhanced SDRAM, ESDRAM), a synchlink dynamic random access memory (Synchlink DRAM, SLDRAM), and a direct Rambus random access memory (Direct Rambus RAM, DR RAM).
[0110] It should be noted that, when the processor is a general purpose processor, a DSP, an ASIC, an FPGA or another programmable logic device, a discrete gate or a transistor logic device, or a discrete hardware component, the memory (or a storage module) is integrated to the processor.
[0111] It should be noted that the memory of the system and the method that are described in the specification is to include, but is not limited to, these and any other appropriate types of memories.
[0112] It should be further understood that in this embodiment of the present invention, the bus system may include a power bus, a control bus, a status signal bus, and the like, in addition to a data bus. However, for clear description, various types of buses in FIG. 13 are marked as the bus system.
[0113] In an implementation process, steps in the foregoing methods can be implemented by using a hardware integrated logical circuit in the processor, or by using instructions in a form of software. The steps of the method disclosed with reference to the embodiments of the present invention may be directly performed by a hardware processor, or may be performed by using a combination of hardware in the processor and a software module. A software module may be located in a mature storage medium in the art such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, an electrically erasable programmable memory, a register, or the like. The storage medium is located in the memory, and a processor reads information in the memory and completes the steps in the foregoing methods in combination with hardware of the processor. To avoid repetition, details are not described herein again.
[0114] It should be further understood that the numbers in the specification are used for differentiation for ease of description, and are not used for limiting the scope of the embodiments of the present invention.
[0115] It should be understood that sequence numbers of the foregoing processes do not mean execution sequences in some embodiments. The execution sequences of the processes should be determined based on functions and internal logic of the processes, and should not be construed as any limitation on the implementation processes of the embodiments of the present invention.
[0116] A person of ordinary skill in the art may be aware that, modules in examples described in combination with the embodiments disclosed in this specification may be implemented by electronic hardware or a combination of computer software and electronic hardware. Whether the functions are performed by hardware or software depends on particular applications and design constraint conditions of the technical solutions. A person skilled in the art may use different methods to implement the described functions for each particular application, but it should not be considered that the implementation goes beyond the scope of the present invention.
[0117] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and method may be implemented in other manners. For example, the described apparatus embodiment is merely an example. For example, the module division is merely logical function division and there may be another division manner in actual implementation. For example, a plurality of modules may be combined or integrated to another module, or some features may be ignored or not performed.
[0118] In addition, functional modules in the apparatus embodiments may be integrated to one processing unit, or the functional modules may physically exist in respective processing units, or two or more functional modules are integrated to one processing unit.
[0119] The foregoing descriptions are merely specific implementations of this application, but are not intended to limit the protection scope of this application. Any variation or replacement readily figured out by a person skilled in the art within the technical scope disclosed in the embodiments of the present invention shall fall within the protection scope of this application. Therefore, the protection scope of this application shall be subject to the protection scope of the claims.