CN117195974A - Training method and device for reserve pool calculation model based on pulse signals - Google Patents
Training method and device for reserve pool calculation model based on pulse signals Download PDFInfo
- Publication number
- CN117195974A CN117195974A CN202310971923.0A CN202310971923A CN117195974A CN 117195974 A CN117195974 A CN 117195974A CN 202310971923 A CN202310971923 A CN 202310971923A CN 117195974 A CN117195974 A CN 117195974A
- Authority
- CN
- China
- Prior art keywords
- neurons
- neuron
- determining
- input
- calculation model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004364 calculation method Methods 0.000 title claims abstract description 135
- 238000012549 training Methods 0.000 title claims abstract description 129
- 238000000034 method Methods 0.000 title claims abstract description 64
- 210000002569 neuron Anatomy 0.000 claims abstract description 607
- 239000012528 membrane Substances 0.000 claims abstract description 160
- 239000013598 vector Substances 0.000 claims abstract description 80
- 230000007613 environmental effect Effects 0.000 claims abstract description 34
- 238000011084 recovery Methods 0.000 claims description 43
- 238000004590 computer program Methods 0.000 claims description 15
- 238000001514 detection method Methods 0.000 claims description 15
- 238000004422 calculation algorithm Methods 0.000 claims description 14
- 238000012417 linear regression Methods 0.000 claims description 14
- 230000009467 reduction Effects 0.000 claims description 10
- 239000013585 weight reducing agent Substances 0.000 claims description 3
- 230000003631 expected effect Effects 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 14
- 239000011159 matrix material Substances 0.000 description 14
- 230000006870 function Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 9
- 230000006872 improvement Effects 0.000 description 8
- 230000008859 change Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000007423 decrease Effects 0.000 description 4
- 230000003247 decreasing effect Effects 0.000 description 4
- 230000000946 synaptic effect Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000012512 characterization method Methods 0.000 description 3
- 230000010354 integration Effects 0.000 description 3
- 230000007514 neuronal growth Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000002858 neurotransmitter agent Substances 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010304 firing Methods 0.000 description 1
- 210000002364 input neuron Anatomy 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 229920001296 polysiloxane Polymers 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 229910001750 ruby Inorganic materials 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000036962 time dependent Effects 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Neurology (AREA)
- Image Analysis (AREA)
- Feedback Control In General (AREA)
Abstract
The specification discloses a training method and device of a reserve pool calculation model based on pulse signals, comprising the following steps: the historical environmental images are input as training samples into neurons of hidden layers of a pulse signal based reservoir calculation model to be trained. And determining the target vector according to the labels of the training samples. For each neuron, according to the pulse signals issued by other neurons at the previous moment and the initial connection weights, the current connection weights of the other neurons to the neurons are determined, and other input potentials of the other neurons to the neurons are determined. The decay potential is determined from the time scale of the decay of the membrane potential of the neuron. From the decay potential, other input potentials, and training samples, a state vector consisting of the membrane potential of each neuron is determined. According to the state vector and the target vector, the reading weight of the reading layer is calculated, so that the robustness of the trained model is good, the accuracy of the output result is high, and the expected effect can be achieved.
Description
The application claims priority to the application of the application patent filed by 2022, 10-19, with application number 202211276694.2 and the application name of "a method and device for constructing a calculation model of a pulse neural network reservoir", which is incorporated herein by reference in its entirety.
Technical Field
The present disclosure relates to the field of computer technologies, and in particular, to a method and an apparatus for training a pool calculation model based on pulse signals.
Background
With the continuous development of technology, pool computing has gained widespread attention. Reservoir computation is a computational framework of a neural network, consisting of an input layer, a hidden layer and a readout layer. Wherein the hidden layer is a recurrent neural network, called a reservoir.
Currently, a pool computing model can map low-dimensional input data into high-dimensional space for characterization, wherein the pool computing model based on pulse signals is based on communication between neurons inside the pool computing model through pulses. When training a pulse signal-based reservoir calculation model, the input weights of the model and the connection weights among the neurons of the hidden layer are randomly initialized and fixed, and only the readout weights of the model need to be trained according to the states of the neurons in the hidden layer. For example, in the target detection of an obstacle in the surrounding environment of the unmanned device, a pool calculation model based on pulse signals may be trained, and the acquired environmental image is subjected to image classification to determine whether the obstacle exists in the environmental image. When the model is trained, a plurality of images can be input into a storage pool calculation model based on pulse signals to be trained, states of neurons of a hidden layer corresponding to each image are determined, and training is carried out on the storage pool calculation model based on the pulse signals to be trained according to category labels corresponding to each image and the determined states of the neurons corresponding to each image.
In addition, the connection weights of the hidden layers of the model can affect the performance of the model. However, the connection weights of the hidden layers of the model are generally initialized randomly and fixed, so if the connection weights of the hidden layers of the model are set unreasonably, the performance of the model is affected, for example, the robustness of the model is poor, the accuracy of the output result of the model is reduced, and the expected effect is not achieved. Therefore, how to train a pool calculation model based on pulse signals is an important issue.
Based on this, the present specification provides a training method of a pool calculation model based on pulse signals.
Disclosure of Invention
The present disclosure provides a training method and apparatus for a pool calculation model based on pulse signals, so as to partially solve the above-mentioned problems in the prior art.
The technical scheme adopted in the specification is as follows:
the specification provides a training method of a pool calculation model based on pulse signals, comprising the following steps:
acquiring an environmental image acquired by historical image acquisition equipment and taking the environmental image as a training sample; taking the image category corresponding to the training sample as the label of the training sample, and determining a target vector according to the label;
Inputting the training sample into each neuron of a hidden layer of a storage pool calculation model based on pulse signals to be trained;
for each neuron, determining the connection weight of the other neurons to the neuron according to the pulse signals issued by the other neurons at the previous moment and the preset initial connection weight, taking the connection weight as the current connection weight, and determining other input potentials of the other neurons input into the neuron according to the determined current connection weight;
determining a time scale of decay of the membrane potential of the neuron and determining the decay potential of the neuron based on the time scale of decay;
determining a membrane potential of the neuron based on the decay potential, the other input potentials, and the training sample;
determining a state vector consisting of membrane potential of each neuron;
and taking the state vector as the input of a readout layer of the pulse signal-based storage pool calculation model to be trained, taking the target vector as the target output of the readout layer of the pulse signal-based storage pool calculation model to be trained, and calculating the readout weight of the readout layer of the pulse signal-based storage pool calculation model to be trained by adopting a linear regression algorithm, wherein the trained pulse signal-based storage pool calculation model is used for determining the category result of the image to be detected according to the image to be detected acquired by the image acquisition equipment.
Optionally, the reservoir calculation model based on pulse signals to be trained further comprises an input layer, wherein the input weight of the input layer is randomly generated in a specified range;
inputting the training sample into each neuron of a hidden layer of a storage pool calculation model to be trained based on pulse signals, wherein the method specifically comprises the following steps:
inputting the training sample into an input layer of a storage pool calculation model to be trained based on pulse signals to obtain an input current value;
inputting the input current value into each neuron of the hidden layer of the reservoir calculation model based on the pulse signals to be trained.
Optionally, determining the membrane potential of the neuron according to the attenuation potential, the other input potential and the training sample specifically includes:
and determining the membrane potential of the neuron according to the attenuation potential, the other input potentials and the input current value, wherein the larger the input current value is, the larger the membrane potential of the neuron is.
Optionally, according to the pulse signals issued by other neurons at the previous moment and the preset initial connection weights, determining the connection weights of the other neurons to the neurons respectively as the current connection weights specifically includes:
Determining the weight reduction of other neurons to the neurons respectively according to pulse signals issued by the other neurons at the previous moment;
determining the recovery weights of the other neurons to the neurons respectively;
and determining the connection weights of the other neurons to the neurons respectively according to the preset initial connection weights, the recovery weights and the reduction weights, and taking the connection weights as current connection weights.
Optionally, determining the recovery weights of the other neurons to the neurons respectively specifically includes:
determining the membrane potential of the other neuron as the other membrane potential;
determining a time scale for recovering the connection weights of the other neurons to the neurons respectively according to the other membrane potentials, wherein the larger the other membrane potentials are, the smaller the time scale is;
and determining the recovery weights of the other neurons to the neurons respectively according to the determined time scale, wherein the smaller the time scale is, the larger the recovery weights are.
Optionally, the method further comprises:
when the membrane potential of the neuron is not less than a preset threshold value, issuing pulse signals from the neuron to the other neurons, recording the issuing condition of issuing the pulse signals, and updating the membrane potential of the neuron according to a specified rule;
Determining the weight of the neuron to be reduced to the other neurons according to the issuing condition;
and determining the restoration weights of the neurons to other neurons respectively, and updating the connection weights of the neurons to the other neurons respectively according to the restoration weights and the reduction weights.
Optionally, the pulse signal based reservoir calculation model to be trained further comprises an input layer;
the method further comprises the steps of:
responding to a target detection instruction sent by a user, and determining an image to be detected;
inputting the image to be detected into an input layer of a training storage pool calculation model based on pulse signals, and obtaining an input current value;
inputting the input current value into each neuron of a hidden layer of a reservoir calculation model based on a pulse signal;
for each neuron, determining the connection weight of other neurons to the neuron respectively according to pulse signals issued by the other neurons at the previous moment and preset initial connection weights, and taking the connection weights as current connection weights;
determining other input potentials of the other neurons input into the neurons according to the determined current connection weight;
determining a time scale of decay of the membrane potential of the neuron and determining the decay potential of the neuron based on the time scale of decay;
Determining a membrane potential of the neuron based on the decay potential, the other input potentials, and the input current value;
determining a state vector consisting of membrane potential of each neuron;
and inputting the state vector into a readout layer of the storage pool calculation model based on the pulse signals, and determining a detection result of the image to be detected.
The specification provides a training device of a reserve pool calculation model based on pulse signals, comprising:
the acquisition module is used for acquiring the environmental image acquired by the historical image acquisition equipment and taking the environmental image as a training sample; taking the image category corresponding to the training sample as the label of the training sample, and determining a target vector according to the label;
the input module is used for inputting the training sample into each neuron of the hidden layer of the storage pool calculation model based on the pulse signals to be trained;
the weight module is used for determining the connection weight of other neurons to each neuron according to the pulse signals issued by the other neurons at the previous moment and the preset initial connection weight, taking the connection weight of the other neurons to the neurons as the current connection weight, and determining other input potentials of the other neurons input to the neurons according to the determined current connection weight;
A membrane potential module for determining a time scale of decay of a membrane potential of the neuron and determining a decay potential of the neuron according to the time scale of decay; determining a membrane potential of the neuron based on the decay potential, the other input potentials, and the training sample;
a state vector module for determining a state vector composed of membrane potentials of the neurons;
the training module is used for taking the state vector as the input of the readout layer of the pulse signal-based storage pool calculation model to be trained, taking the target vector as the target output of the readout layer of the pulse signal-based storage pool calculation model to be trained, calculating the readout weight of the readout layer of the pulse signal-based storage pool calculation model to be trained by adopting a linear regression algorithm, wherein the trained pulse signal-based storage pool calculation model is used for determining the category result of the image to be detected according to the image to be detected acquired by the image acquisition equipment.
Optionally, the reservoir calculation model based on pulse signals to be trained further comprises an input layer, wherein the input weight of the input layer is randomly generated in a specified range;
The input module is specifically used for inputting the training sample into an input layer of a storage pool calculation model based on pulse signals to be trained to obtain an input current value; inputting the input current value into each neuron of the hidden layer of the reservoir calculation model based on the pulse signals to be trained.
Optionally, the membrane potential module is specifically configured to determine a membrane potential of the neuron according to the attenuation potential, the other input potentials, and the input current value, where the greater the input current value is, the greater the membrane potential of the neuron is.
Optionally, the weight module is specifically configured to determine, according to pulse signals issued by other neurons at a previous time, a decreasing weight of the other neurons to the neurons respectively; determining the recovery weights of the other neurons to the neurons respectively; and determining the connection weights of the other neurons to the neurons respectively according to the preset initial connection weights, the recovery weights and the reduction weights, and taking the connection weights as current connection weights.
Optionally, the weighting module is specifically configured to determine, as the other membrane potential, the membrane potential of the other neuron; determining a time scale for recovering the connection weights of the other neurons to the neurons respectively according to the other membrane potentials, wherein the larger the other membrane potentials are, the smaller the time scale is; and determining the recovery weights of the other neurons to the neurons respectively according to the determined time scale, wherein the smaller the time scale is, the larger the recovery weights are.
Optionally, the membrane potential module is further configured to issue a pulse signal from the neuron to the other neuron when it is determined that the membrane potential of the neuron is not less than a preset threshold, record an issue condition of issuing the pulse signal, and update the membrane potential of the neuron according to a specified rule; determining the weight of the neuron to be reduced to the other neurons according to the issuing condition; and determining the restoration weights of the neurons to other neurons respectively, and updating the connection weights of the neurons to the other neurons respectively according to the restoration weights and the reduction weights.
Optionally, the pulse signal based reservoir calculation model to be trained further comprises an input layer;
the apparatus further comprises:
the application module is used for responding to a target detection instruction sent by a user and determining an image to be detected; inputting the image to be detected into an input layer of a training storage pool calculation model based on pulse signals, and obtaining an input current value; inputting the input current value into each neuron of a hidden layer of a reservoir calculation model based on a pulse signal; for each neuron, determining the connection weight of other neurons to the neuron respectively according to pulse signals issued by the other neurons at the previous moment and preset initial connection weights, and taking the connection weights as current connection weights; determining other input potentials of the other neurons input into the neurons according to the determined current connection weight; determining a time scale of decay of the membrane potential of the neuron and determining the decay potential of the neuron based on the time scale of decay; determining a membrane potential of the neuron based on the decay potential, the other input potentials, and the input current value; determining a state vector consisting of membrane potential of each neuron; and inputting the state vector into a readout layer of the storage pool calculation model based on the pulse signals, and determining a detection result of the image to be detected.
The present specification provides a computer readable storage medium storing a computer program which when executed by a processor implements the above-described method of training a pool calculation model based on pulse signals.
The present specification provides an electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, the processor implementing the above-described method of training a pool calculation model based on pulse signals when executing the program.
The above-mentioned at least one technical scheme that this specification adopted can reach following beneficial effect:
according to the training method of the storage pool calculation model based on the pulse signals, which is provided by the specification, environmental images acquired by the image acquisition equipment in history are acquired and are used as training samples. And taking the image category corresponding to the training sample as the label of the training sample, and determining the target vector according to the label. Then, inputting a training sample into each neuron of a hidden layer of a storage pool calculation model based on pulse signals to be trained, determining the connection weight of other neurons to the neuron according to the pulse signals issued by the other neurons at the previous moment and the preset initial connection weight for each neuron, taking the connection weight as the current connection weight, and determining other input potentials of the other neurons to be input into the neuron according to the determined current connection weight. At the same time, the time scale of the decay of the membrane potential of the neuron is determined, and the decay potential of the neuron is determined according to the time scale of the decay. Then, the membrane potential of the neuron is determined based on the decay potential, other input potentials, and training samples, and a state vector composed of the membrane potential of each neuron is determined. And then taking the state vector as the input of a readout layer of the storage pool calculation model based on the pulse signals to be trained, taking the target vector as the target output of the readout layer of the storage pool calculation model based on the pulse signals to be trained, and calculating the readout weight of the readout layer of the storage pool calculation model based on the pulse signals to be trained by adopting a linear regression algorithm.
According to the method, when the storage pool calculation model based on the pulse signals is trained, the environment image acquired by the image acquisition device historically can be acquired and used as a training sample. And taking the image category corresponding to the training sample as the label of the training sample, and determining the target vector according to the label. Then, inputting a training sample into each neuron of a hidden layer of a storage pool calculation model based on pulse signals to be trained, determining the connection weight of other neurons to the neuron according to the pulse signals issued by the other neurons at the previous moment and the preset initial connection weight for each neuron, taking the connection weight as the current connection weight, and determining other input potentials of the other neurons to be input into the neuron according to the determined current connection weight. At the same time, the time scale of the decay of the membrane potential of the neuron is determined, and the decay potential of the neuron is determined according to the time scale of the decay. Then, the membrane potential of the neuron is determined based on the decay potential, other input potentials, and training samples, and a state vector composed of the membrane potential of each neuron is determined. And then taking the state vector as the input of a readout layer of the storage pool calculation model based on the pulse signals to be trained, taking the target vector as the target output of the readout layer of the storage pool calculation model based on the pulse signals to be trained, and calculating the readout weight of the readout layer of the storage pool calculation model based on the pulse signals to be trained by adopting a linear regression algorithm, so that the storage pool calculation model based on the pulse signals after training is subsequently used for determining the type result of the image to be detected according to the image to be detected acquired by the image acquisition equipment, the storage pool calculation model based on the pulse signals has good robustness and high accuracy of the output result, and can achieve the expected effect.
Drawings
The accompanying drawings, which are included to provide a further understanding of the specification, illustrate and explain the exemplary embodiments of the present specification and their description, are not intended to limit the specification unduly. In the drawings:
FIG. 1 is a schematic flow chart of a training method of a pool calculation model based on pulse signals provided in the present specification;
FIG. 2 is a schematic diagram of a pool calculation model structure based on pulse signals provided in the present specification;
FIG. 3 is a schematic diagram of an application process of a pool calculation model based on pulse signals provided in the present specification;
FIG. 4 is a schematic diagram of a training device structure of a reservoir calculation model based on pulse signals provided in the present specification;
fig. 5 is a schematic structural diagram of an electronic device corresponding to fig. 1 provided in the present specification.
Detailed Description
For the purposes of making the objects, technical solutions and advantages of the present specification more apparent, the technical solutions of the present specification will be clearly and completely described below with reference to specific embodiments of the present specification and corresponding drawings. It will be apparent that the described embodiments are only some, but not all, of the embodiments of the present specification. All other embodiments, which can be made by one of ordinary skill in the art without undue burden from the present disclosure, are intended to be within the scope of the present disclosure.
The following describes in detail the technical solutions provided by the embodiments of the present specification with reference to the accompanying drawings.
Fig. 1 is a schematic flow chart of a training method of a pool calculation model based on pulse signals provided in the present specification, which includes the following steps:
s100: acquiring an environmental image acquired by historical image acquisition equipment and taking the environmental image as a training sample; and taking the image category corresponding to the training sample as the label of the training sample, and determining a target vector according to the label.
In the present specification, the device for training the pool computing model based on the pulse signal may acquire the environmental image acquired by the image acquisition device historically and use the environmental image as a training sample, and use the image class corresponding to the training sample as a label of the training sample, and determine the target vector according to the label. The device for training the pool computing model based on the pulse signals can be a server or an electronic device such as a desktop computer, a notebook computer and the like. For convenience of description, a training method of the pulse signal-based pool calculation model provided in the present specification will be described below with only a server as an execution subject. The image pickup device may be a video camera, a still camera, a laser radar, or the like, and the present specification is not particularly limited.
In this specification, a pulse signal based pool calculation model trained by a server may be used for target detection of obstacles in the surrounding environment of an unmanned device. Specifically, an image classification may be performed on an environmental image of the surroundings of the unmanned device to determine whether an obstacle can exist in the environmental image. When the obstacle exists in the environment image, the obstacle exists around the unmanned equipment, the area where the obstacle is located can be determined according to the environment image, and the movement track of the unmanned equipment is planned again according to the area so as to avoid collision with the obstacle.
Based on the method, the server can acquire environmental images acquired by the historical image acquisition equipment, the environmental images are used as training samples, and a storage pool calculation model based on pulse signals to be trained is trained by the environmental images used as training samples, so that the object detection is carried out on the obstacles in the surrounding environment of the unmanned equipment.
Meanwhile, the server takes the image category corresponding to the training sample (namely the environment image) as the label of the training sample, and determines the target vector according to the label. The storage pool calculation model based on the pulse signals and trained by the server is a model for detecting an obstacle in the surrounding environment of the unmanned equipment, the training sample is an environment image collected by the image collection equipment in history, and the training sample is marked as whether the environment image contains the obstacle or not. The image categories are two image categories in which an obstacle is present and no obstacle is present. The target vector is a labeled vector representing the training sample, and may be represented by 0 and 1, 1 indicating the presence of an obstacle, and 0 indicating the absence of an obstacle. Of course, it may be represented by other characters, for example, a indicates that there is an obstacle, b indicates that there is no obstacle, and the present specification is not limited specifically.
S102: the training samples are input into neurons of hidden layers of a pulse signal based reservoir calculation model to be trained.
The server may input training samples into neurons of hidden layers of the pulse signal based reservoir calculation model to be trained. The reservoir calculation model based on the pulse signals to be trained comprises a hidden layer and a readout layer, wherein the hidden layer comprises a plurality of neurons, the number of the neurons contained in the hidden layer can be preset, for example, the hidden layer of the reservoir calculation model based on the pulse signals comprises N neurons.
In particular, for each neuron of the hidden layer of the pulse signal based reservoir computation model to be trained, the server may input the training samples into that neuron. That is, for each neuron of the hidden layer of the pulse signal based reservoir computation model to be trained, the server may input an environmental image into the neuron.
In addition, the reservoir calculation model based on pulse signals to be trained further includes an input layer, as shown in fig. 2, fig. 2 is a schematic diagram of a reservoir calculation model based on pulse signals provided in the present specification, the reservoir calculation model based on pulse signals in fig. 2 includes an input layer, a hidden layer and a readout layer, the input layer includes at least one neuron, and fig. 2 only illustrates the input layer including one neuron. The hidden layer includes N neurons, and fig. 2 shows only a hidden layer including four neurons. The readout layer comprises at least one neuron, fig. 2 only shows a readout layer comprising one neuron. The server can input training samples into the input layer of the storage pool calculation model based on the pulse signals to be trained to obtain an input current value, namely the server can input environment images into the input layer of the storage pool calculation model based on the pulse signals to be trained to obtain the input current value. The input current values are then input to the neurons of the hidden layer of the pulse signal based reservoir calculation model to be trained. The input weights of the input layers are randomly generated in a specified range, and the specified range may be a preset range, for example, the specified range may be [0,1]. In addition, the probability that each value within the specified range is selected is equal. The input weight is a connection weight between the input layer and the hidden layer, and the input current value is obtained from the environment image as the training sample and the input weight.
S104: for each neuron, determining the connection weight of the other neurons to the neuron according to the pulse signals issued by the other neurons at the previous moment and the preset initial connection weight, taking the connection weight as the current connection weight, and determining other input potentials of the other neurons input to the neuron according to the determined current connection weight.
For each neuron, the server may determine the connection weights of the other neurons to the neuron according to the pulse signals issued by the other neurons at the previous time and the preset initial connection weights, and use the connection weights as the current connection weights. Wherein the connection weight of the other neurons to the neuron decreases when the other neurons issue pulse signals to the neuron. Therefore, the connection weight of other neurons to the neuron is inversely related to the number of times (i.e., the issuing frequency) of the pulse signal issued by other neurons to the neuron, that is, the connection weight of other neurons to the neuron is reduced once when the other neurons issue pulse signals to the neuron, the more the number of times of issuing pulses, the more the connection weight is reduced, the connection weight becomes smaller and smaller, and the connection weight is reduced by U times when each time is reduced, that is, the U times of the connection weight itself is reduced, and U is neurotransmitter released when the neuron issues pulse signals. In addition, the current connection weights of the other neurons to the neurons are the connection weights of the other neurons to the neurons at the time immediately before the current time. The server can determine the weight of the other neurons to be reduced respectively to the neurons according to the pulse signals issued by the other neurons at the previous moment. Then, according to the initial connection weight and the reduced weight, the connection weight of other neurons to the neurons respectively is determined as the current connection weight.
In addition, no matter whether other neurons send pulse signals to the neurons or not, the connection weights of the other neurons to the neurons can be recovered automatically along with time, but the connection weights of the other neurons to the neurons cannot exceed the preset maximum weights, namely the connection weights of the other neurons to the neurons after the recovery cannot exceed the preset maximum weights. The server may determine the recovery weights of the other neurons to the neurons, respectively. Meanwhile, according to pulse signals issued by other neurons at the previous moment, the weight reduction of the other neurons to the neurons is determined. Then, according to the preset initial connection weight, recovery weight and reduction weight, determining the connection weight of other neurons to the neuron, and taking the connection weight as the current connection weight, specifically, calculating by adopting the following formula:
wherein the differential equation represents J ij (t) time-dependent course, t representing time, J ij (t) represents the connection weight of the neuron j to the neuron i at the time t, that is, the connection weight obtained at the time immediately before the time t of the other neurons j to the neuron i, that is, the current connection weight.Is a time constant, and represents J ij The time scale for recovery of (t) may be preset. J (J) max For maximum connection weight, U is neurotransmitter released when neurons emit pulse signals, +.>The initial connection weight is indicated and may be preset. J on the right side of the equation ij (t) represents the self-recovery of the connection weights of the other neurons j to the neuron i at the time t, i.e., the recovery weights described above. />Indicating whether the neuron j is firing a pulse signal at time t. />The time at which neuron j fires a pulse signal is represented, and δ (x) represents the pulse function. When x=0 (i.e.)>) When δ (x) =1 (i.e., +.>) It is explained that neuron j emits a pulse signal at time t, but when x+.0 (i.e., +.>) When δ (x) =0 (i.e., +.>) It is explained that the neuron j does not emit a pulse signal at time t. When->When the connection weight of the other neuron j to the neuron i is reduced by U times of the self-connection weight, the weight is +.>Representing the U times the connection weights of the other neurons j to i, i.e. the above-mentioned reduction weights.
After the differential equation is integrated by using the Euler integration method, the formula is as follows:
the self-recovery of the connection weights of the other neurons to the neuron, i.e., the recovery weights, is based on the time scale of the recovery of the connection weights (i.e) Is a function of (a) and (b). Since the time scale of the restoration of the connection weight may be a fixed value set in advance, when determining the restoration weights of the other neurons to the neurons, respectively, the server may determine the restoration weights of the other neurons to the neurons according to the time scale of the restoration of the connection weights of the other neurons to the neurons, respectively, which is set in advance.
The server may then determine other input potentials for other neurons to input to the neuron based on the determined current connection weights. The other input potential is an input potential caused by other neurons sending pulse signals to the neurons.
The above-mentioned other neurons send a pulse signal to the neuron, the connection weight of the other neurons to the neuron reduces U times of the connection weight of the other neurons to the neuron, but the connection weight of the other neurons to the neuron can be self-recovered with time, and the connection weight of the other neurons to the neuron cannot exceed the preset maximum weight, the process accords with a Short-term synaptic depression (STD) rule, and the STD rule is a plastic form of the synaptic connection between the neurons, and can influence the signal transmission between the neurons. Under the action of the STD rule, after a neuron sends a pulse signal to its downstream neurons, the strength of the synaptic connection of that neuron to the downstream neurons decreases. In addition, the strength of the synaptic connection of the neuron to downstream neurons will self-recover over time.
S106: determining a time scale of decay of the membrane potential of the neuron and determining the decay potential of the neuron based on the time scale of decay.
S108: determining the membrane potential of the neuron based on the decay potential, the other input potentials, and the training sample.
The server may first determine a time scale of decay of the membrane potential of the neuron and determine the decay potential of the neuron based on the time scale of decay. Then, according to the attenuation potential, other input potentials and training samples, determining the membrane potential of the neuron, specifically, the membrane potential can be calculated by adopting the following formula:
wherein the differential equation represents h i (t) time course, h i (t) represents the membrane potential of neuron i at time t,time scale representing decay of membrane potential of neuron i, -h i (t) represents the self-decay of the membrane potential of neuron i, i.e., the decay potential described above. N is the number of neurons of the hidden layer of the pulse signal based reservoir calculation model to be trained, J ij Representing the current connection weight of neuron j to neuron i, i.e., the connection weight of the other neurons j to neuron i at the previous time, τ D For delay time when the pulse signal is issued. />Indicating whether neuron i receives the pulse signal issued by other neuron j at time t, when +.>At time t, it is explained that the neuron i receives the pulse signal issued by the other neuron j. Therefore(s) >Representing other input potentials of other neurons input neuron i. />Indicating that the neuron i received a training sample at time t.
After the differential equation is integrated by using the Euler integration method, the formula is as follows:
in the present specification, the time scale of decay of the membrane potential of the neurons described above, i.eIs mainly affected by the membrane potential of neurons and can change with time. When the membrane potential of a neuron is large, the time scale of decay of the membrane potential of the neuron tends to be small. Conversely, when the membrane potential of a neuron is small, the time scale of decay of the membrane potential of the neuron tends to be a larger value. The time scale of the decay of the membrane potential of a neuron can be expressed using the following formula:
wherein the differential equation representsTime course, τ r 、τ 0 And gamma is a preset parameter, h i (t) represents the membrane potential of neuron i at time t, ">A time scale self-decay representing the decay of the membrane potential of neuron i.
After the differential equation is integrated by using the Euler integration method, the formula is as follows:
since the time scale of decay of the membrane potential of a neuron affects the rate of self-decay of the neuron, the longer the time scale of decay of the membrane potential of a neuron, the slower the rate of self-decay of the membrane potential of that neuron. Conversely, the shorter the time scale of decay of the membrane potential of a neuron, the faster the self-decay of the membrane potential of that neuron. Based on this, when determining the time scale of the decay of the neuron and determining the decay potential of the neuron from the time scale of the decay, the server may determine the decay rate of the neuron from the time scale of the decay of the membrane potential of the neuron. And determining the decay potential of the neuron based on the decay rate.
In the present specification, the membrane potential of a neuron is mainly affected by the time scale of decay of the membrane potential of the neuron, whether a pulse signal issued by other neurons is received, and data input into the neuron. Wherein the time scale of the decay of the membrane potential of the neuron affects the rate of self-decay of the neuron, thereby affecting the membrane potential of the neuron. The greater the time scale of decay of the membrane potential of the neuron, the slower the self-decay rate of the neuron, the smaller the decay potential of the neuron decay, and thus the greater the membrane potential of the neuron growth. Conversely, the smaller the time scale of decay of the membrane potential of the neuron, the faster the self-decay rate of the neuron, the greater the decay potential of the neuron decay, and thus the smaller the membrane potential of the neuron growth. The membrane potential of the neuron growth is determined according to the time scale of the decay of the membrane potential of the neuron, whether pulse signals emitted by other neurons are received or not, and data input into the neuron.
In addition, whether a neuron receives a pulse signal issued by another neuron also affects the membrane potential of the neuron, i.e., whether another neuron issues a pulse signal also affects the membrane potential of the neuron. When the other neurons issue pulse signals to the neurons and the neurons receive the pulse signals, the other neurons input potentials to the neurons, namely, the other input potentials in the above description. Since the other neuron is a plurality of neurons, the other input potential is the potential of the neuron input by the plurality of other neurons, and the other input potential affects the membrane potential of the neuron. Thus, the greater the pulse signal received by the neuron, i.e., the greater the number of times the pulse signal received by the neuron and issued by the neuron, the greater the other input potential, the greater the membrane potential of the neuron. Conversely, the fewer the number of times the neuron receives a pulse signal from another neuron, the smaller the other input potential, and the smaller the membrane potential of the neuron.
In addition, the data input into the neurons are training samples, i.e., environmental images. Environmental images as training samples affect the membrane potential of neurons. The larger the data, the greater the membrane potential of the neuron. Conversely, the smaller the data, the smaller the membrane potential of the neuron. Of course, since the server may input the training sample to the input layer of the pulse signal-based pool calculation model to be trained in step S102 described above, an input current value is obtained, and then input the input current value to each neuron of the hidden layer of the pulse signal-based pool calculation model to be trained. Therefore, when determining the membrane potential of the neuron according to the attenuation potential, other input potentials and training samples, the server may determine the membrane potential of the neuron according to the attenuation potential, other input potentials and input current values. The data input into the neurons may also be input current values, which are obtained based on the environmental images as training samples. Therefore, the membrane potential of a neuron is affected by an environmental image, and the larger the input current value corresponding to the environmental image input to the neuron is, the larger the membrane potential of the neuron is. Conversely, the smaller the input current value corresponding to the environmental image input into the neuron, the smaller the membrane potential of the neuron.
Of course, in addition to the above-mentioned factors affecting the membrane potential of neurons, the connection weights between neurons also affect the membrane potential of neurons. When determining that other neurons input other input potentials of the neurons, determining whether other neurons send pulse signals to the neurons or not, determining the connection weights of the other neurons to the neurons, and determining that other neurons input other input potentials of the neurons according to the pulse signals and the determined connection weights, wherein the membrane potential of the neurons is also influenced by the connection weights of the other neurons to the neurons. When other neurons send pulse signals to the neurons, namely when the neurons receive the pulse signals sent by the other neurons, the connection weights of the other neurons to the neurons are larger, the other input potentials of the other neurons input to the neurons are larger, and the membrane potentials of the neurons are larger. Conversely, the smaller the connection weight of other neurons to the neuron, the smaller the other input potential of other neurons to the neuron, and the smaller the membrane potential of the neuron.
S110: a state vector consisting of membrane potential of each neuron is determined.
Since the server inputs the training samples into each neuron of the hidden layer of the pulse signal based pool computing model to be trained in the above step S102, the membrane potential of each neuron may or may not change, and the server may determine a state vector composed of the membrane potentials of the neurons, which characterizes the states of the neurons after inputting the training samples into the hidden layer of the pulse signal based pool computing model to be trained, which is a re-characterization of the training samples of low dimensions (i.e., the environmental image).
S112: and taking the state vector as the input of a readout layer of the pulse signal-based storage pool calculation model to be trained, taking the target vector as the target output of the readout layer of the pulse signal-based storage pool calculation model to be trained, and calculating the readout weight of the readout layer of the pulse signal-based storage pool calculation model to be trained by adopting a linear regression algorithm, wherein the trained pulse signal-based storage pool calculation model is used for determining the category result of the image to be detected according to the image to be detected acquired by the image acquisition equipment.
The server takes the state vector as the input of the readout layer of the pulse signal-based storage pool calculation model to be trained, takes the target vector as the target output of the readout layer of the pulse signal-based storage pool calculation model to be trained, and calculates the readout weight of the readout layer of the pulse signal-based storage pool calculation model to be trained by adopting a linear regression algorithm. The linear regression algorithm may be a least mean square linear regression algorithm. The readout weight is the weight of the readout layer of the pulse signal based reservoir calculation model to be trained, which is a fixed value after training is completed. The training-completed reserve pool calculation model based on the pulse signals is used for determining a category result of the image to be detected according to the image to be detected acquired by the image acquisition equipment.
In this specification, since the pulse signal based pool calculation model separates the characterization of the training samples (i.e., state vectors) from the parameter training process at the time of training, only the readout layer is trained. Therefore, the server can calculate the readout weight of the readout layer of the storage pool calculation model based on the pulse signals to be trained by adopting a least mean square linear regression algorithm according to the state vector and the target vector of the training samples.
In addition, in the step S100, there may be a plurality of training samples obtained by the server, and each training sample corresponds to one target vector. The server may execute each training sample according to the above procedure of steps S102 to S110 to obtain a state vector corresponding to each training sample.
Based on the above, the server may splice the state vectors corresponding to each training sample to obtain a state vector matrix composed of the state vectors. And simultaneously, splicing the target vectors corresponding to each training sample to obtain a target vector matrix composed of the target vectors. Then, according to the state vector matrix and the target vector matrix, a least mean square linear regression algorithm is adopted to calculate the readout weight of the readout layer of the storage pool calculation model based on the pulse signals to be trained, and the readout weight can be specifically calculated by adopting the following formula:
W out =((S T ) + T T ) T
wherein W is out Calculating the readout weight of a readout layer of a model for a pulse signal-based reservoir to be trained, S being a state vector matrix composed of state vectors of the training samples, S T Representing a matrix transpose operation on a state vector matrix (i.e., S), (S) T ) + Representing the result (i.e., S) of the matrix transpose operation on the state vector matrix (i.e., S) T ) Performing matrix pseudo-inverse operation, wherein T is a target vector matrix composed of target vectors of training samples T Representing a matrix transpose operation on the matrix of target vectors (i.e., T). ((S) T ) + T T ) T Representation pair (S) T ) + T T And performing matrix transposition operation on the whole.
According to the method, when the storage pool calculation model based on the pulse signals is trained, the server can acquire environmental images acquired by the image acquisition equipment historically and serve as training samples. And taking the image category corresponding to the training sample as the label of the training sample, and determining the target vector according to the label. Then, inputting a training sample into each neuron of a hidden layer of a storage pool calculation model based on pulse signals to be trained, and determining the connection weight of other neurons to the neuron according to the pulse signals issued by other neurons at the previous moment and preset initial connection weights for each neuron as the current connection weight, so that the connection weights of the other neurons to the neuron can be adaptively adjusted according to the pulse signals issued by the other neurons and the preset initial connection weights, and the performance of the storage pool calculation model based on the pulse signals is ensured. And then, according to the determined current connection weight, determining other input potentials input into the neuron by other neurons. At the same time, the time scale of the decay of the membrane potential of the neuron is determined, and the decay potential of the neuron is determined according to the time scale of the decay. Then, the membrane potential of the neuron is determined based on the decay potential, other input potentials, and training samples, and a state vector composed of the membrane potential of each neuron is determined. And then taking the state vector as the input of a readout layer of the storage pool calculation model based on the pulse signals to be trained, taking the target vector as the target output of the readout layer of the storage pool calculation model based on the pulse signals to be trained, and calculating the readout weight of the readout layer of the storage pool calculation model based on the pulse signals to be trained by adopting a linear regression algorithm, so that the storage pool calculation model based on the pulse signals after training is subsequently used for determining the type result of the image to be detected according to the image to be detected acquired by the image acquisition equipment, the storage pool calculation model based on the pulse signals has good robustness and high accuracy of the output result, and can achieve the expected effect.
The time scale of the restoration of the connection weight of the other neurons to the neuron in the above step S104 may be to adaptively change its value according to the membrane potential of the other neurons to which the pulse signal is issued. The longer the time scale of the restoration of the connection weights of the other neurons to the neuron, the slower the speed of the restoration of the connection weights of the other neurons to the neuron, and the smaller the restoration weights of the other neurons to the neuron. Conversely, the shorter the time scale of the recovery of the connection weights of the other neurons to the neuron, the faster the connection weights of the other neurons to the neuron recover, and the greater the recovery weights of the other neurons to the neuron.
Thus, in determining the recovery weights of the other neurons to the neurons, respectively, the server may determine the membrane potential of the other neurons as the other membrane potential, and determine the time scale of recovery of the connection weights of the other neurons to the neurons, respectively, based on the other membrane potential. And then, according to the determined time scale, determining the recovery weights of other neurons to the neurons, wherein the larger the other membrane potential is, the smaller the time scale is, the larger the recovery weights are, and specifically, the recovery weights can be calculated by adopting the following formula:
Wherein the differential equation representsTime course of change,/->Time scale representing restoration of neuron j to neuron i connection weights at time t, +.>Self-decay of time scale representing restoration of connection weights of neurons j to i, h j (t) shows the membrane potential of the neuron j at time t.
The higher the membrane potential of the other neuron, that is, the higher the other membrane potential, the shorter the time scale for recovering the connection weight of the other neuron to the neuron, and the faster the recovery of the connection weight of the other neuron to the neuron, that is, the faster the recovery of the connection weight of the other neuron to the neuron, and the higher the recovery weight of the other neuron to the neuron. Conversely, the smaller the membrane potential of the other neuron, i.e., the smaller the other membrane potential, the longer the time scale for the recovery of the connection weight of the other neuron to the neuron, the slower the change in the connection weight of the other neuron to the neuron, i.e., the slower the speed of the recovery of the connection weight of the other neuron to the neuron, the smaller the recovery weight of the other neuron to the neuron.
In this specification, the membrane potential of a neuron is mainly affected by the time scale of decay of the membrane potential of the neuron, whether a pulse signal issued by another neuron is received, and data input into the neuron, and the other neuron issues a pulse signal to a neuron downstream of the other neuron (i.e., the neuron) only when the membrane potential reaches or exceeds a threshold value, thereby affecting the membrane potential of the neuron downstream of the other neuron (i.e., the neuron). In addition, the membrane potential of other neurons is obtained based on the environmental image as a training sample.
Similarly, the membrane potential of the neuron is obtained based on the environmental image as a training sample, and when the membrane potential of the neuron reaches or exceeds a threshold value, the neuron emits a pulse signal to all other neurons connected to itself. At the same time, the membrane potential of the neuron is reset, and the membrane potential of other neurons receiving the pulse signal emitted by the neuron is changed due to the pulse signal. At the same time, the connection weights of the neurons to other neurons are updated.
Based on this, when it is determined that the membrane potential of the neuron is not less than the preset threshold value, a pulse signal is issued from the neuron to other neurons, the issuance of the pulse signal is recorded, and the membrane potential of the neuron is updated according to a specified rule. Then, according to the issuing condition, determining the decreasing weights of the neurons to other neurons respectively, determining the restoring weights of the neurons to other neurons respectively, and updating the connecting weights of the neurons to other neurons respectively according to the restoring weights and the decreasing weights. The preset threshold may be set to 1, and the specified rule may be to re-use the difference value of the membrane potential of the neuron minus the threshold as the membrane potential of the neuron, that is, the membrane potential after the neuron is updated. The issuing case is whether to issue a pulse signal, that is, the issuing case is one of issuing a pulse signal and not issuing a pulse signal.
Since the connection weight of the neuron to other neurons decreases after the neuron issues the pulse signal, the connection weight between the neuron and other neurons is inversely related to the issuing frequency (i.e. the number of times) of the pulse signal issued by the neuron to other neurons, and the connection weight between the neuron and other neurons is self-recovered over time regardless of whether the neuron issues the pulse signal to other neurons or not, and the self-recovery of the connection weight is influenced by the time scale of the recovery of the connection weight, the server can determine the decrease weights of the neuron to other neurons respectively according to the issuing situation and determine the recovery weights of the neuron to other neurons. Then, the connection weight of the neuron to other neurons is updated according to the reduced weight and the restoration weight. The updated connection weight of the neuron to other neurons can be used as the current connection weight of the neuron to other neurons at the next moment.
In this specification, after training the pool calculation model based on the pulse signal, the server may apply according to the steps shown in fig. 3, and fig. 3 is a schematic diagram of an application process of the pool calculation model based on the pulse signal provided in this specification, which specifically includes the following steps:
S200: and determining an image to be detected in response to a target detection instruction sent by the user.
S202: and inputting the image to be detected into an input layer of the training-completed storage pool calculation model based on the pulse signals, and obtaining an input current value.
S204: input current values are input to neurons of the hidden layer of the pulse signal based reservoir computation model.
S206: for each neuron, determining the connection weight of other neurons to the neuron according to the pulse signals issued by other neurons at the previous moment and the preset initial connection weight, and taking the connection weight of other neurons to the neuron as the current connection weight.
S208: and determining other input potentials input by other neurons into the neuron according to the determined current connection weight.
S210: a time scale of decay of the membrane potential of the neuron is determined, and from the time scale of decay, the decay potential of the neuron is determined.
S212: the membrane potential of the neuron is determined based on the decay potential, other input potentials, and input current values.
S214: a state vector consisting of the membrane potential of each neuron is determined.
S216: and inputting the state vector into a readout layer of a storage pool calculation model based on the pulse signals, and determining the detection result of the image to be detected.
In the present specification, after determining the detection result of the image to be detected, the server may determine the position of the obstacle in the surrounding environment of the unmanned device according to the detection result of the image to be detected, and reprogram the movement track of the unmanned device according to the determined position, so as to avoid the collision between the unmanned device and the obstacle.
The above is a method implemented by one or more of the present specification, and based on the same thought, the present specification further provides a training device of a corresponding reservoir calculation model based on pulse signals, as shown in fig. 4.
Fig. 4 is a schematic diagram of a training device for a pulse signal-based pool calculation model provided in the present specification, including:
the acquisition module 300 is used for acquiring environmental images acquired by the image acquisition equipment in history and taking the environmental images as training samples;
an input module 302 for inputting the training samples into neurons of a hidden layer of a pulse signal based reservoir calculation model to be trained; taking the image category corresponding to the training sample as the label of the training sample, and determining a target vector according to the label;
the weight module 304 is configured to, for each neuron, determine, according to a pulse signal issued by another neuron at a previous time and a preset initial connection weight, a connection weight of the other neuron to the neuron, as a current connection weight, and determine, according to the determined current connection weight, other input potentials of the other neuron input to the neuron;
A membrane potential module 306 for determining a time scale of decay of the membrane potential of the neuron and determining the decay potential of the neuron based on the time scale of decay; determining a membrane potential of the neuron based on the decay potential, the other input potentials, and the training sample;
a state vector module 308 for determining a state vector consisting of membrane potentials of the neurons;
the training module 310 is configured to use the state vector as an input of a readout layer of the pulse signal based storage pool calculation model to be trained, use the target vector as a target output of the readout layer of the pulse signal based storage pool calculation model to be trained, and calculate a readout weight of the readout layer of the pulse signal based storage pool calculation model to be trained by using a linear regression algorithm, where the trained pulse signal based storage pool calculation model is used for determining a category result of the image to be detected according to the image to be detected acquired by the image acquisition device.
Optionally, the reservoir calculation model based on pulse signals to be trained further comprises an input layer, wherein the input weight of the input layer is randomly generated in a specified range;
The input module 302 is specifically configured to input the training sample into an input layer of a storage pool calculation model to be trained based on a pulse signal, so as to obtain an input current value; inputting the input current value into each neuron of the hidden layer of the reservoir calculation model based on the pulse signals to be trained.
Optionally, the membrane potential module 306 is specifically configured to determine the membrane potential of the neuron according to the attenuation potential, the other input potentials, and the input current value, where the greater the input current value is, the greater the membrane potential of the neuron is.
Optionally, the weight module 304 is specifically configured to determine, according to the pulse signals issued by other neurons at the previous time, the decreasing weights of the other neurons to the neurons respectively; determining the recovery weights of the other neurons to the neurons respectively; and determining the connection weights of the other neurons to the neurons respectively according to the preset initial connection weights, the recovery weights and the reduction weights, and taking the connection weights as current connection weights.
Optionally, the weighting module 304 is specifically configured to determine the membrane potential of the other neuron as the other membrane potential; determining a time scale for recovering the connection weights of the other neurons to the neurons respectively according to the other membrane potentials, wherein the larger the other membrane potentials are, the smaller the time scale is; and determining the recovery weights of the other neurons to the neurons respectively according to the determined time scale, wherein the smaller the time scale is, the larger the recovery weights are.
Optionally, the membrane potential module 306 is further configured to issue a pulse signal from the neuron to the other neuron when it is determined that the membrane potential of the neuron is not less than the preset threshold, record an issue condition of issuing the pulse signal, and update the membrane potential of the neuron according to a specified rule; determining the weight of the neuron to be reduced to the other neurons according to the issuing condition; and determining the restoration weights of the neurons to other neurons respectively, and updating the connection weights of the neurons to the other neurons respectively according to the restoration weights and the reduction weights.
Optionally, the pulse signal based reservoir calculation model to be trained further comprises an input layer;
the apparatus further comprises:
an application module 312, configured to determine an image to be detected in response to a target detection instruction sent by a user; inputting the image to be detected into an input layer of a training storage pool calculation model based on pulse signals, and obtaining an input current value; inputting the input current value into each neuron of a hidden layer of a reservoir calculation model based on a pulse signal; for each neuron, determining the connection weight of other neurons to the neuron respectively according to pulse signals issued by the other neurons at the previous moment and preset initial connection weights, and taking the connection weights as current connection weights; determining other input potentials of the other neurons input into the neurons according to the determined current connection weight; determining a time scale of decay of the membrane potential of the neuron and determining the decay potential of the neuron based on the time scale of decay; determining a membrane potential of the neuron based on the decay potential, the other input potentials, and the input current value; determining a state vector consisting of membrane potential of each neuron; and inputting the state vector into a readout layer of the storage pool calculation model based on the pulse signals, and determining a detection result of the image to be detected.
The present specification also provides a computer readable storage medium storing a computer program operable to perform a method of training a pool calculation model based on a pulse signal as provided in fig. 1 above.
The present specification also provides a schematic structural diagram of an electronic device corresponding to fig. 1 shown in fig. 5. At the hardware level, as shown in fig. 5, the electronic device includes a processor, an internal bus, a network interface, a memory, and a nonvolatile storage, and may of course include hardware required by other services. The processor reads the corresponding computer program from the non-volatile memory into the memory and then runs to implement the pulse signal based reservoir calculation model training method described above with respect to fig. 1.
Of course, other implementations, such as logic devices or combinations of hardware and software, are not excluded from the present description, that is, the execution subject of the following processing flows is not limited to each logic unit, but may be hardware or logic devices.
In the 90 s of the 20 th century, improvements to one technology could clearly be distinguished as improvements in hardware (e.g., improvements to circuit structures such as diodes, transistors, switches, etc.) or software (improvements to the process flow). However, with the development of technology, many improvements of the current method flows can be regarded as direct improvements of hardware circuit structures. Designers almost always obtain corresponding hardware circuit structures by programming improved method flows into hardware circuits. Therefore, an improvement of a method flow cannot be said to be realized by a hardware entity module. For example, a programmable logic device (Programmable Logic Device, PLD) (e.g., field programmable gate array (Field Programmable Gate Array, FPGA)) is an integrated circuit whose logic function is determined by the programming of the device by a user. A designer programs to "integrate" a digital system onto a PLD without requiring the chip manufacturer to design and fabricate application-specific integrated circuit chips. Moreover, nowadays, instead of manually manufacturing integrated circuit chips, such programming is mostly implemented by using "logic compiler" software, which is similar to the software compiler used in program development and writing, and the original code before the compiling is also written in a specific programming language, which is called hardware description language (Hardware Description Language, HDL), but not just one of the hdds, but a plurality of kinds, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), lava, lola, myHDL, PALASM, RHDL (Ruby Hardware Description Language), etc., VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog are currently most commonly used. It will also be apparent to those skilled in the art that a hardware circuit implementing the logic method flow can be readily obtained by merely slightly programming the method flow into an integrated circuit using several of the hardware description languages described above.
The controller may be implemented in any suitable manner, for example, the controller may take the form of, for example, a microprocessor or processor and a computer readable medium storing computer readable program code (e.g., software or firmware) executable by the (micro) processor, logic gates, switches, application specific integrated circuits (Application Specific Integrated Circuit, ASIC), programmable logic controllers, and embedded microcontrollers, examples of which include, but are not limited to, the following microcontrollers: ARC 625D, atmel AT91SAM, microchip PIC18F26K20, and Silicone Labs C8051F320, the memory controller may also be implemented as part of the control logic of the memory. Those skilled in the art will also appreciate that, in addition to implementing the controller in a pure computer readable program code, it is well possible to implement the same functionality by logically programming the method steps such that the controller is in the form of logic gates, switches, application specific integrated circuits, programmable logic controllers, embedded microcontrollers, etc. Such a controller may thus be regarded as a kind of hardware component, and means for performing various functions included therein may also be regarded as structures within the hardware component. Or even means for achieving the various functions may be regarded as either software modules implementing the methods or structures within hardware components.
The system, apparatus, module or unit set forth in the above embodiments may be implemented in particular by a computer chip or entity, or by a product having a certain function. One typical implementation is a computer. In particular, the computer may be, for example, a personal computer, a laptop computer, a cellular telephone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
For convenience of description, the above devices are described as being functionally divided into various units, respectively. Of course, the functions of each element may be implemented in one or more software and/or hardware elements when implemented in the present specification.
It will be appreciated by those skilled in the art that embodiments of the present description may be provided as a method, system, or computer program product. Accordingly, the present specification may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present description can take the form of a computer program product on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) having computer-usable program code embodied therein.
The present description is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the specification. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In one typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include volatile memory in a computer-readable medium, random Access Memory (RAM) and/or nonvolatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of computer-readable media.
Computer readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of storage media for a computer include, but are not limited to, phase change memory (PRAM), static Random Access Memory (SRAM), dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), read Only Memory (ROM), electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium, which can be used to store information that can be accessed by a computing device. Computer-readable media, as defined herein, does not include transitory computer-readable media (transmission media), such as modulated data signals and carrier waves.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article or apparatus that comprises the element.
It will be appreciated by those skilled in the art that embodiments of the present description may be provided as a method, system, or computer program product. Accordingly, the present specification may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present description can take the form of a computer program product on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) having computer-usable program code embodied therein.
The description may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The specification may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
In this specification, each embodiment is described in a progressive manner, and identical and similar parts of each embodiment are all referred to each other, and each embodiment mainly describes differences from other embodiments. In particular, for system embodiments, since they are substantially similar to method embodiments, the description is relatively simple, as relevant to see a section of the description of method embodiments.
The foregoing is merely exemplary of the present disclosure and is not intended to limit the disclosure. Various modifications and alterations to this specification will become apparent to those skilled in the art. Any modifications, equivalent substitutions, improvements, or the like, which are within the spirit and principles of the present description, are intended to be included within the scope of the claims of the present description.
Claims (10)
1. A method of training a pool calculation model based on pulse signals, comprising:
acquiring an environmental image acquired by historical image acquisition equipment and taking the environmental image as a training sample; taking the image category corresponding to the training sample as the label of the training sample, and determining a target vector according to the label;
inputting the training sample into each neuron of a hidden layer of a storage pool calculation model based on pulse signals to be trained;
For each neuron, determining the connection weight of the other neurons to the neuron according to the pulse signals issued by the other neurons at the previous moment and the preset initial connection weight, taking the connection weight as the current connection weight, and determining other input potentials of the other neurons input into the neuron according to the determined current connection weight;
determining a time scale of decay of the membrane potential of the neuron and determining the decay potential of the neuron based on the time scale of decay;
determining a membrane potential of the neuron based on the decay potential, the other input potentials, and the training sample;
determining a state vector consisting of membrane potential of each neuron;
and taking the state vector as the input of a readout layer of the pulse signal-based storage pool calculation model to be trained, taking the target vector as the target output of the readout layer of the pulse signal-based storage pool calculation model to be trained, and calculating the readout weight of the readout layer of the pulse signal-based storage pool calculation model to be trained by adopting a linear regression algorithm, wherein the trained pulse signal-based storage pool calculation model is used for determining the category result of the image to be detected according to the image to be detected acquired by the image acquisition equipment.
2. The method of claim 1, wherein the pulse signal based pool computing model to be trained further comprises an input layer, the input weights of the input layer being randomly generated within a specified range;
inputting the training sample into each neuron of a hidden layer of a storage pool calculation model to be trained based on pulse signals, wherein the method specifically comprises the following steps:
inputting the training sample into an input layer of a storage pool calculation model to be trained based on pulse signals to obtain an input current value;
inputting the input current value into each neuron of the hidden layer of the reservoir calculation model based on the pulse signals to be trained.
3. The method of claim 2, wherein determining the membrane potential of the neuron based on the decay potential, the other input potentials, and the training sample, comprises:
and determining the membrane potential of the neuron according to the attenuation potential, the other input potentials and the input current value, wherein the larger the input current value is, the larger the membrane potential of the neuron is.
4. The method of claim 1, wherein determining the connection weights of the other neurons to the neurons, respectively, as the current connection weights, according to the pulse signals issued by the other neurons at the previous time and the preset initial connection weights, specifically comprises:
Determining the weight reduction of other neurons to the neurons respectively according to pulse signals issued by the other neurons at the previous moment;
determining the recovery weights of the other neurons to the neurons respectively;
and determining the connection weights of the other neurons to the neurons respectively according to the preset initial connection weights, the recovery weights and the reduction weights, and taking the connection weights as current connection weights.
5. The method of claim 4, wherein determining the recovery weights of the other neurons to the neurons, respectively, comprises:
determining the membrane potential of the other neuron as the other membrane potential;
determining a time scale for recovering the connection weights of the other neurons to the neurons respectively according to the other membrane potentials, wherein the larger the other membrane potentials are, the smaller the time scale is;
and determining the recovery weights of the other neurons to the neurons respectively according to the determined time scale, wherein the smaller the time scale is, the larger the recovery weights are.
6. The method of claim 1, wherein the method further comprises:
when the membrane potential of the neuron is not less than a preset threshold value, issuing pulse signals from the neuron to the other neurons, recording the issuing condition of issuing the pulse signals, and updating the membrane potential of the neuron according to a specified rule;
Determining the weight of the neuron to be reduced to the other neurons according to the issuing condition;
and determining the restoration weights of the neurons to other neurons respectively, and updating the connection weights of the neurons to the other neurons respectively according to the restoration weights and the reduction weights.
7. The method of claim 1, wherein the pulse signal based pool calculation model to be trained further comprises an input layer;
the method further comprises the steps of:
responding to a target detection instruction sent by a user, and determining an image to be detected;
inputting the image to be detected into an input layer of a training storage pool calculation model based on pulse signals, and obtaining an input current value;
inputting the input current value into each neuron of a hidden layer of a reservoir calculation model based on a pulse signal;
for each neuron, determining the connection weight of other neurons to the neuron respectively according to pulse signals issued by the other neurons at the previous moment and preset initial connection weights, and taking the connection weights as current connection weights;
determining other input potentials of the other neurons input into the neurons according to the determined current connection weight;
Determining a time scale of decay of the membrane potential of the neuron and determining the decay potential of the neuron based on the time scale of decay;
determining a membrane potential of the neuron based on the decay potential, the other input potentials, and the input current value;
determining a state vector consisting of membrane potential of each neuron;
and inputting the state vector into a readout layer of the storage pool calculation model based on the pulse signals, and determining a detection result of the image to be detected.
8. An apparatus for a pool calculation model based on pulse signals, comprising:
the acquisition module is used for acquiring the environmental image acquired by the historical image acquisition equipment and taking the environmental image as a training sample; taking the image category corresponding to the training sample as the label of the training sample, and determining a target vector according to the label;
the input module is used for inputting the training sample into each neuron of the hidden layer of the storage pool calculation model based on the pulse signals to be trained;
the weight module is used for determining the connection weight of other neurons to each neuron according to the pulse signals issued by the other neurons at the previous moment and the preset initial connection weight, taking the connection weight of the other neurons to the neurons as the current connection weight, and determining other input potentials of the other neurons input to the neurons according to the determined current connection weight;
A membrane potential module for determining a time scale of decay of a membrane potential of the neuron and determining a decay potential of the neuron according to the time scale of decay; determining a membrane potential of the neuron based on the decay potential, the other input potentials, and the training sample;
a state vector module for determining a state vector composed of membrane potentials of the neurons;
the training module is used for taking the state vector as the input of the readout layer of the pulse signal-based storage pool calculation model to be trained, taking the target vector as the target output of the readout layer of the pulse signal-based storage pool calculation model to be trained, calculating the readout weight of the readout layer of the pulse signal-based storage pool calculation model to be trained by adopting a linear regression algorithm, wherein the trained pulse signal-based storage pool calculation model is used for determining the category result of the image to be detected according to the image to be detected acquired by the image acquisition equipment.
9. A computer-readable storage medium, characterized in that the storage medium stores a computer program which, when executed by a processor, implements the method of any of the preceding claims 1-7.
10. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor implements the method of any of the preceding claims 1-7 when executing the program.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211276694.2A CN115358375A (en) | 2022-10-19 | 2022-10-19 | Pulse neural network reserve pool calculation model construction method and device |
CN2022112766942 | 2022-10-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117195974A true CN117195974A (en) | 2023-12-08 |
Family
ID=84008219
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211276694.2A Withdrawn CN115358375A (en) | 2022-10-19 | 2022-10-19 | Pulse neural network reserve pool calculation model construction method and device |
CN202310971923.0A Pending CN117195974A (en) | 2022-10-19 | 2023-08-02 | Training method and device for reserve pool calculation model based on pulse signals |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211276694.2A Withdrawn CN115358375A (en) | 2022-10-19 | 2022-10-19 | Pulse neural network reserve pool calculation model construction method and device |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN115358375A (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115862338B (en) * | 2023-03-01 | 2023-05-16 | 天津大学 | Airport traffic flow prediction method, airport traffic flow prediction system, electronic equipment and medium |
-
2022
- 2022-10-19 CN CN202211276694.2A patent/CN115358375A/en not_active Withdrawn
-
2023
- 2023-08-02 CN CN202310971923.0A patent/CN117195974A/en active Pending
Also Published As
Publication number | Publication date |
---|---|
CN115358375A (en) | 2022-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108897836B (en) | Method and device for robot to map based on semantics | |
CN117195974A (en) | Training method and device for reserve pool calculation model based on pulse signals | |
CN115600157B (en) | Data processing method and device, storage medium and electronic equipment | |
US20220314980A1 (en) | Obstacle tracking method, storage medium and unmanned driving device | |
CN115618964B (en) | Model training method and device, storage medium and electronic equipment | |
CN111797711A (en) | Model training method and device | |
CN114559951A (en) | Obstacle trajectory prediction method, obstacle trajectory prediction device, storage medium, and electronic device | |
CN113838135A (en) | Pose estimation method, system and medium based on LSTM double-current convolution neural network | |
CN112883871B (en) | Model training and unmanned vehicle motion strategy determining method and device | |
CN116434787B (en) | Voice emotion recognition method and device, storage medium and electronic equipment | |
CN116186330B (en) | Video deduplication method and device based on multi-mode learning | |
CN116308738B (en) | Model training method, business wind control method and device | |
CN116091895B (en) | Model training method and device oriented to multitask knowledge fusion | |
CN111523539A (en) | Character detection method and device | |
CN116824331A (en) | Model training and image recognition method, device, equipment and storage medium | |
CN113642616B (en) | Training sample generation method and device based on environment data | |
CN116403097A (en) | Target detection method and device, storage medium and electronic equipment | |
CN116052250A (en) | Training method, device, equipment and storage medium of detection model | |
CN114187355A (en) | Image calibration method and device | |
CN112712561A (en) | Picture construction method and device, storage medium and electronic equipment | |
CN118468045B (en) | Model training acceleration method, device and storage medium | |
CN114047763B (en) | System, method and device for distinguishing collision barriers by unmanned vehicles and electronic equipment | |
CN117870696B (en) | Path navigation method and device based on perception information fusion and electronic equipment | |
CN118529061A (en) | Intelligent identification method based on event camera and related device | |
CN116758728A (en) | Parking space idle rate prediction method, device, medium and equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |