Odor discrimination using binary spiking neural network
An odor discrimination method and device for an electronic nose system including olfactory pattern classification based on a binary spiking neural network with the capability to handle many sensor inputs in a noise environment while recognizing a large number of potential odors. The spiking neural networks process a large number of inputs arriving from a chemical sensor array and implemented with efficient use of chip surface area.
Latest The United States of America as represented by the Secretary of the Air Force Patents:
- Mechanochemical based synthesis of perfluoropyridine monomers for polymerization
- Outward swinging door barricade
- Search and rescue device and methods of using the same
- Methods of modulating light using liquid crystal polarization gratings
- Method for determining the actual location of an object in a camera field of view
The invention described herein may be manufactured and used by or for the Government of the United States for all governmental purposes without the payment of any royalty.
BACKGROUND OF THE INVENTIONThe invention relates to electronic nose systems and more specifically to an olfactory classification device.
The mammalian nose has millions of olfactory neurons that are neurologically connected to the olfactory bulb in the brain. Each neuron has a single odor receptor that is stimulated by a specific set of odorants. Odor receptors are not unique, and recent research concludes that the mouse nose, for example, consists of only ˜1000 unique odor receptors. Although odor receptors are randomly distributed throughout the nose, common odor receptors unite in a common location of the olfaction bulb. This phenomenon could be responsible for acute sensitivity. Each odor receptor responds to a unique subset of odorants, and each odorant stimulates a unique subset of odor receptors. Each odorant stimulates a unique combination of odor receptors that form a signature, or prototype pattern, for scent.
Currently, electronic nose systems exist, but major problems include size, cost, speed, portability, and ease of use. The problem domain for the electronic nose is twofold. In the first realm, sensitive sensors are necessary to function as transducers that convert chemical signals into the electrical domain. In the second realm, sensor data needs to be processed for scent recognition in a complex environment. The sensor problem is largely solved and is not a focus of this invention. Some of the more successful transducers include metal oxide sensors, ISFET, polymer resonating sensors, and optical bead sensors. However, olfactory pattern recognition and classification remains a challenge, especially in a complex environment with many sensors contaminated by background noise.
Most electronic nose pattern classification techniques use neural networks or statistical data analysis to classify odors. For example, CHEMFET sensors are known to be used for chemical recognition. Prior art shows successfully creating a reinforcement neural network to differentiate between three volatile organic compounds. Genetic algorithms are also being employed with success. Other hybrid approaches also seem promising. Unfortunately, these algorithms require powerful offline computer resources, are limited to about sixteen sensor inputs, are sensitive to noise, must be trained offline, or only detect a small number of odors.
Artificial neural networks have proven to be a useful tool for olfactory pattern recognition; but most silicon-based implementations have been limited in scale due to inherent constraints on chip real estate and synapse routing. The invention presents a new spiking neural network approach to odorant learning and detection based on new learned information about the mammalian olfaction system. The present invention explores a new olfactory pattern classification technique based on a binary spiking neural network. Spiking networks are suited for the olfactory system because they are close approximations to the biological network being emulated. Further, the spiking network of the present invention is ideal for VLSI because it does not require multiplication and uses efficient signal transmission.
SUMMARY OF THE INVENTIONAn odor discrimination method and device for an electronic nose system including olfactory pattern classification based on a binary spiking neural network with the capability to handle many sensor inputs in a noise environment while recognizing a large number of potential odors. The spiking neural networks process a large number of inputs arriving from a chemical sensor array and implemented with efficient use of chip surface area.
It is therefore an object of the invention to provide an improved odor discrimination method and device including olfactory pattern classification.
It is another object of the invention to provide an odor discrimination method and device for an electronic nose system including olfactory pattern classification based on a binary spiking neural network with the capability to handle many sensor inputs in a noise environment while recognizing a large number of potential odors.
It is another object of the invention to provide an odor discrimination method and device including a spiking neural network that processes a large number of inputs arriving from a chemical sensor array.
It is another object of the invention to provide an odor discrimination method and device including a spiking neural network that processes a large number of inputs arriving from a chemical sensor array and implemented with efficient use of chip surface area.
These and other objects of the invention are described in the description, claims and accompanying drawings and are achieved by a method of olfactory pattern classification comprising the steps of:
-
- sensing odorants using a plurality of odor receptors;
- converting output of said sensing step to binary data;
- inputting binary data from said converting step to a spiking neural network;
- training said spiking neural network to learn most prevalent combination of odor receptors; and
- associating said combination of odor receptors from said training step with an output neuron.
Artificial neural networks have proven to be a useful tool for olfactory pattern recognition; but most silicon-based implementations have been limited in scale due to inherent constraints on chip real estate and synapse routing. The invention presents a new spiking neural network approach to odorant learning and detection based on new learned information about the mammalian olfaction system. The present invention explores a new olfactory pattern classification technique based on a binary spiking neural network. Spiking networks are suited for the olfactory system because they are close approximations to the biological network being emulated.
A proposed electronic nose system is diagrammed in FIG. 1. The first layer of the nose at 100, an odor receptor array, is composed of many IONFET sensors, each with one of 1000 different polymers that closely match mammalian odor receptors, that is—sensors with unique polymers for each odor receptor type. A CHEMFET may be used by way of example and other comparable odor receptors may be employed. A CHEMFET sensor is a good replacement for the mammalian odor receptor because the sensor's polymer coating determines which odorants stimulate the sensor. The spiking network input layer at 102 is where the common odor receptors converge at a single point, are averaged, and passed into the spiking network as binary inputs (stimulated/not stimulated) and then fed as an input to the spiking neural network 103. The spiking network 103 and the scent detection output 104 is where the training for the neural network takes place. Thus, the problem domain becomes learning and recognizing binary patterns in 1000 dimensional space. Through the training module, blocks 103 and 104 in
During training, illustrated in blocks 103 and 104 in
Biological neurons receive input spikes via synapses. In the simplest neuron model, each synapse carries a weight that is added to the neuron's internal counter each time the synapse receives a spike. Once the internal counter reaches a certain threshold, the neuron emits a spike and resets the counter. Interestingly, research is proving that synapses have just two states, where one weight represents potentiation and the other weight represents depression.
To test the spiking network, a simulated environment was created to emulate odor receptor inputs to the spiking network. The test stimulus is a time-variant, bit-vector of 1225 values that represents the state of each odor receptor over time. The environment itself is composed of randomly generated odorant prototypes that represent the odor receptors stimulated by a particular odorant. The environment simulates three kinds of noise: (1) background noise is generated to randomly turn on odor receptors; (2) odor receptors in active odorant prototypes are randomly suppressed; and (3) during simulation, distracting prototypes are shuffled in and out of the stimulus space to simulate interference odorants. For this model, NoisePercentOn, NoisePercentOff, and AverageTransitionPenod characterize the noise affecting odor receptors. NoisePercentOn represents the percentage of time that an odor receptor is turned on due to noise. NoisePercentOff represents the percentage of time that an odor receptor is turned off due to noise, and AverageTransitionPeriod represents the average length of time that a sensor is continuously affected by noise.
It should be noted that learning speed is a function of the noise's AverageTransitionPeriod and little else. Because learning is a sampling process, it can be described in terms of precision with statistical confidence intervals. The accuracy of the sampled proportion depends on the number of statistically independent samples taken by the learning unit. The number of statistically independent samples depends on the average transition period of the noise.
In biology, signals are transmitted as spike trains that fluctuate between a low background spike rate and an active maximum spike rate. In this spiking network, binary inputs from odor receptors are converted into similar spike trains, where SpikeRateMin represents the spikes per second generated by a zero input (off), while SpikeRateMax represents an active input (on). This input logic is easy to implement in VLSI as an adder/comparator combination. Each clock cycle, ActivecountAdd is added to InputCounter when the odor receptor is on. Otherwise, the counter increases by one. When the counter reaches CounterThreshold, a spike is posted to the spike bus, and InputCounter resets to 0.
For a compact VLSI implementation, it is necessary to minimize complexity. In this design, the weight of a synapse that is turned on equals one (WeightPotentiated), and the weight of a synapse that is turned off equals zero (WeightDepressed). The neuron itself is just a counter (NeuronStateCounter), a threshold comparator (NeuronStateThreshold), and a variable length list of potentiated synapses. When a spike is received by a potentiated synapse, WeightPotentiated is added to NeuronStateCounter. If NeuronStateCounter reaches NeuronStateThreshold, then the neuron outputs a spike and NeuronStateCounter resets to zero. For this model, the NeuronStateThreshold is always equal to the total number of potentiated inputs.
Mathematically, the binary spiking neuron acts as an averaging function, where the output spike rate of a neuron is just the average spike rate of its potentiated inputs.
Now consider a neuron that has perfectly learned an odor prototype. In this case, the synapse list exactly matches the odor receptor signature of the prototype. For this neuron, the OutputSpikeRate will be exactly proportional to the number of inputs in the prototype that are turned on (PrototypePercentOn).
OutputSpikeRate=SpikeRateMin+PrototypePercentOn(SpikeRateMax−SpikeRateMin) (4)
Thus, the neuron spike rate is proportional to the PrototypePercentOn, which can be viewed as a hamming distance between a prototype odor and the environmental input space. Finally, we define PrototypePercentOn acceptable to detect an active prototype. From this, we can easily establish a detection threshold for a prototype based on the output spike rate.
HammingDistance=PrototypeSize−PrototypePercentOn*PrototypeSize (5)
OutputSpikeRateThreshold=SpikeRateMin+(SpikeRateMax−SpikeRateMin)*PrototypPercentThreshold (6)
Background noise, or NoisePercentOn, will artificially inflate. OutputSpikeRate and could result in erroneous detections. However, with the addition of another counter and comparator, we can effectively measure the network's average NoisePercentOn and cancel it. Suppose that a neuron spikes at a rate of BackgroundOutputRate due to noise. The excess output rate can be measured as:
(BackgroundOutputRate−SpikeRateMin) N=OutputRateError (7)
However, by adding inhibitory logic to the neuron circuitry, we can subtract OutputRateError from the OutputSpikeRate and increase the neuron's tolerance to noise.
The right hand side of the flow graph of
The target odor environment is at least 1023 inputs, to approximate the number of odor receptors in the mammillae nose, thus the defined size of the spike bus, illustrated at 306 in
The binary spiking network has been simulated in an environment with 1225 inputs and 50 prototypes, where each prototype is composed on 100 randomly selected inputs. Noise in the environment is generated by three sources. Typically, 10% of the inputs are randomly turned on at any given time to simulate background noise. When a prototype is present, 10% of its inputs are randomly turned off to imitate detection noise. Finally, 10 prototypes are randomly present in the environment at any given time to represent distracting stimuli. In this simulated environment, detection and learning functioned as according to theory, even in an extremely noisy stimulus space.
The present invention is an overview of how spiking neural networks, CHEMFET technology, and new research in mammalian olfaction can be combined to solve odor discrimination challenges that exist for a single chip electronic nose. The invention advances biochemical detection research with a number of unique contributions. First, we have demonstrated that spiking networks can process a large number of inputs arriving from a chemical sensor array and still be implemented with low gate counts and efficient use of chip surface area. Additionally, the network modules combine memory and processing into independent cells that allow for nearly unlimited parallel detection of odor prototypes. Further, the system includes online learning so there is no need for offline training. Finally, simulation shows that the algorithms for learning and detection function well in the presence of noise.
While the apparatus and method herein described constitute a preferred embodiment of the invention, it is to be understood that the invention is not limited to this precise form of apparatus or method and that changes may be made therein without departing from the scope of the invention which is defined in the appended claims.
Claims
1. A method of olfactory pattern classification comprising the steps of:
- sensing odorants using a plurality of odor receptors;
- converting output of said sensing step to binary data;
- inputting binary data from said converting step to a spiking neural network;
- training said spiking neural network to learn most prevalent combination of odor receptors; and
- associating said combination of odor receptors from said training step with an output neuron.
2. The method of olfactory pattern classification of claim 1 further comprising the step of converting said binary data into spike trains comprising an adder/comparator combination having an input of zero representing a lack of odorant stimulus and an input of one representing an odorant stimulus.
3. The method of olfactory pattern classification of claim 2 wherein said training step further comprises the steps of:
- summing active inputs to a counter for every clock cycle of said adder/comparator combination;
- adding one to every clock cycle of said adder/comparator for every zero input;
- posting a spike to a spike bus every time said counter reaches a specified threshold; and
- resetting said counter to zero after said posting step.
4. The method of olfactory pattern classification of claim 3 wherein said summing step further comprises summing active inputs to a counter for every 20 KHz clock cycle of said adder/comparator combination.
5. The method of olfactory pattern classification of claim 1 wherein said sensing step further comprises sensing odorants using a plurality of CHEMFET odor receptors.
6. The method of olfactory pattern classification of claim 1 wherein said sensing step further comprises sensing odorants using a plurality of IONFET odor receptors.
7. The method of olfactory pattern classification of claim 1 wherein said training step further comprises the steps of:
- receiving an input signal from an olfactory receptor;
- summing said input from said receiving step;
- adding one to a clock cycle for every input signal from said receiving step;
- comparing values from said summing step and said adding step and comparing to a preselected threshold value;
- inputting an above threshold value from said summing step to a spike bus;
- determining whether value from said inputting step matches data on a synapse listing;
- adding values from said determining step that do not match data on said synapse listing to a noise counter;
- adding values from said determining step that do match data on said synapse list to a spike counter; and
- outputting a signal associated with said spike counter after inputs to said spike counter reach a preselected threshold value.
8. The method of olfactory pattern classification of claim 7 wherein said inputting step further comprises the steps of:
- providing a spike bus including synchronization logic;
- connecting input signal from said receiving step to said spike bus using a priority encoder;
- posting address of said input signal on said spike bus using said priority encoder; and
- connecting neuron modules in parallel to said spike bus by a potentiated synapse list.
9. The method of olfactory pattern classification of claim 7 wherein said determining step further comprises the step of determining whether value from said inputting step matches data on a synapse listing containing odor receptor signatures.
10. A method of olfactory pattern classification comprising the steps of:
- sensing odorants using a plurality of odor receptors;
- first converting output of said sensing step to binary data;
- second converting said binary data into spike trains comprising an adder/comparator combination having an input of zero representing a lack of odorant stimulus and an input of one representing an odorant stimulus;
- summing active inputs to a counter for every clock cycle of said adder/comparator combination;
- adding one to every clock cycle of said adder/comparator for every zero input;
- posting a spike to a spike bus every time said counter reaches a specified threshold;
- resetting said counter to zero after said posting step;
- training said spiking neural network to learn which combination of odor receptors is most prevelant; and
- associating a set of most prevelant ordor receptors with an output neuron.
11. An olfactory pattern classification device comprising:
- a plurality of odor receptors for sensing odorants;
- means for converting output of said odor receptors to binary data;
- a spiking neural network for receiving said binary data comprising: a plurality of potentiated synapses, wherein the weight of an off synapse is zero and the weight of an on synapse is one; a counter for adding positive weights from said potentiated synapses; a threshold comparator for determining when said counter has reached a preselected threshold value;
- a training program for training said spiking neural network to learn which combination of odor receptors is most prevelant; and
- a specified output neuron specified by which set of odor receptors are most prevelant.
12. The olfactory pattern classification device of claim 11 wherein said training program further comprises:
- a spike bus providing synchronization logic;
- a priority encoder for connecting an input signal from said spike bus and for posting address of said input signal on said spike bus; and
- a potentiated synapse list for connecting neuron modules in parallel to said spike bus.
13. The olfactory pattern classification device of claim 12 wherein said potentiated synapse list further comprises a potentiated synapse list comprising odor receptor signatures.
20030144746 | July 31, 2003 | Hsiung et al. |
- ‘MOS Fully Analog Reinforcement Neutral Network Chip’: Al-Nsour, Abdel-Aty-Zohdy, 2001, IEEE, 0-7803-6685-9, 237-240.
- Japan Patent Publication JP 05-187985, Fumihiro, 1992, Japan Patent Office, detailed description section.
- ‘Pulsed Neural Networks’: Maass, Bishop, 1999, MIT Press, xiii-xix, p. 17-18.
Type: Grant
Filed: Mar 29, 2004
Date of Patent: Apr 1, 2008
Assignee: The United States of America as represented by the Secretary of the Air Force (Washington, DC)
Inventors: Jacob Allen (Troy, MI), Robert L. Ewing (Kettering, OH), Hoda S. Abdel-Aty-Zohdy (Rochester Hills, MI)
Primary Examiner: Daniel Pihulic
Attorney: AFMCLO/JAZ
Application Number: 10/810,429
International Classification: G06F 15/18 (20060101);