USH2215H1 - Odor discrimination using binary spiking neural network - Google Patents

Odor discrimination using binary spiking neural network Download PDF

Info

Publication number
USH2215H1
USH2215H1 US10/810,429 US81042904A USH2215H US H2215 H1 USH2215 H1 US H2215H1 US 81042904 A US81042904 A US 81042904A US H2215 H USH2215 H US H2215H
Authority
US
United States
Prior art keywords
spike
counter
bus
odor
pattern classification
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.)
Abandoned
Application number
US10/810,429
Inventor
Jacob Allen
Robert L. Ewing
Hoda S. Abdel-Aty-Zohdy
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
US Air Force
Original Assignee
US Air Force
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by US Air Force filed Critical US Air Force
Priority to US10/810,429 priority Critical patent/USH2215H1/en
Assigned to AIR FORCE, UNITED STATES OF AMERICA, THE, AS REPRESENTED BY THE SECRETARY OF THE reassignment AIR FORCE, UNITED STATES OF AMERICA, THE, AS REPRESENTED BY THE SECRETARY OF THE ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: ABDEL-ATY-ZOHDY, HODA S., EWING, ROBERT L., ALLEN, JACOB
Application granted granted Critical
Publication of USH2215H1 publication Critical patent/USH2215H1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N33/00Investigating or analysing materials by specific methods not covered by groups G01N1/00 - G01N31/00
    • G01N33/0004Gaseous mixtures, e.g. polluted air
    • G01N33/0009General constructional details of gas analysers, e.g. portable test equipment
    • G01N33/0027General constructional details of gas analysers, e.g. portable test equipment concerning the detector
    • G01N33/0031General constructional details of gas analysers, e.g. portable test equipment concerning the detector comprising two or more sensors, e.g. a sensor array
    • G01N33/0034General constructional details of gas analysers, e.g. portable test equipment concerning the detector comprising two or more sensors, e.g. a sensor array comprising neural networks or related mathematical techniques

Definitions

  • the 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.
  • 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.
  • 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.
  • 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.
  • FIG. 1 is a block diagram of the electronic nose arrangement of the invention.
  • FIG. 2 is a flow diagram showing independent units that combine logic and memory.
  • FIG. 3 is a flow diagram showing learning and detection.
  • 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 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.
  • the problem domain becomes learning and recognizing binary patterns in 1000 dimensional space.
  • the spiking network can be instructed to learn which combination of odor receptors is most prevalent in the environment and then associate that set with an output neuron. Later, the associated neuron can detect when the learned scent is present.
  • the spiking network handles many parallel inputs and outputs.
  • the system is presented with a scent for about sixty seconds and asked to learn via the training signal. This is similar to the manner in which a bloodhound is presented with the clothing of a missing person to be tracked.
  • the training process assumes that the odor prototype to be learned is more present in the environment than any other prototype.
  • each odor receptor is sampled as a Bernoulli process at a rate of about 10Hz.
  • the inputs that have been the most active are stored in the synapse list of the neuron that has been selected to learn the odor.
  • Biological neurons receive input spikes via synapses.
  • 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.
  • synapses have just two states, where one weight represents potentiation and the other weight represents depression.
  • 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.
  • 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.
  • 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.
  • 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.
  • NeuronStateThreshold is always equal to the total number of potentiated inputs.
  • FIG. 2 illustrates independent units that combine logic and memory to operate in parallel on a digital bus.
  • the input modules 201 are connected to the neuron modules 203 by the spike bus 202 as shown in FIG. 2 .
  • the spike signal from an input is connected to the spike bus 202 using a priority encoder (not shown).
  • the priority encoder posts the address of the input module on the spike bus.
  • the neuron modules 203 are connected in parallel to the spike bus 202 by their potentiated synapse list. Neurons listen for spikes on the spike bus 202 , and the number of listening output neurons can be unlimited. To minimize the logic circuit, the learning mechanism was moved from the neuron module to the input module.
  • 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.
  • OutputSpikeRate ⁇ SynapseCount
  • SynapseIndex 1 ⁇ InputRate SynapseIndex SynapseCount ( 3 )
  • 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.
  • 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)
  • FIG. 3 is a flow diagram showing learning and detection of an odor.
  • the left side of the flow chart of FIG. 3 shows learning samples 300 taken on the rising edge of the learning clock 301 .
  • Each input has a sample counter 302 . If the input is on when a sample is taken, the sample counter is incremented (this happens in parallel for each input).
  • a global counter 303 increments 4 out of every 5 learning clock rising edges (which is, 8 out of 10).
  • every input's sample counter, 302 is compared to the global counter, 303 . If the sample counter 302 is greater than the global counter 303 , then the input was on for at least 80% of the samples. This effectively tests for a sampling proportion of 80% during learning. Any input that was on during 80% of the learning samples is “learned”, and stored in the neuron's address list.
  • the right hand side of the flow graph of FIG. 3 shows detection, that is, a neuron listening to the spike bus.
  • An input 305 communicates a spike by placing its input address 307 on the spike bus 306 .
  • the neuron has a list of address 308 which were learned using the left side of the flow graph of FIG. 3 .
  • Each spike on the spike bus is compared with the address list. (This comparison happens in parallel for all neurons.)
  • the Spike Counter 309 is incremented. Once the Spike Counter reaches a threshold 310 , the neuron emits a spike and resets the Spike Counter to 0.
  • the threshold is equal/proportional to the number of addresses stored in the address list.
  • the time between neuron spikes is measured at 311 .
  • the neuron When the time between spikes is below a certain timing threshold, the neuron is considered ‘on’. When a neuron is ‘on’, it is detecting the odor that it learned. Conversely, when the time between spikes is above a certain threshold, the neuron is considered ‘off’, and the odor learned by the neuron is not present.
  • Noise Counter 312 When a spike address is not in the address list, Noise Counter 312 is incremented. When the Noise Counter 312 reaches a threshold 313 , an amount is subtracted 314 from the Spike Counter. Also, the Noise Counter 312 resets to 0. This subtraction step is effectively inhibition. Subtraction makes it less likely that the neuron will fire before the timing threshold, and makes it more likely that a neuron will be ‘off’. This step helps to cancel the effect of noise in creating false detections.
  • 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 FIG. 3 , is 10 bits wide, plus another bit for the BusClock signal. Each input corresponds to an odor receptor.
  • the system needs a component to convert binary inputs into spike trains.
  • the 11th bit of the spike bus is the ‘Save Address’ bit, and it signals to the synapse when an input should be saved.
  • a synapse only responds to the ‘Save Address’ bit of the spike bus when (a) it is not already loaded with an address and (b) when it is enabled.
  • a synapse is only enabled when the odor to which it belongs is selected.
  • a synapse is only enabled when the synapse before it is loaded. The net result is that one, and only one synapse ever responds to the Save Address bit.
  • the input When the odor receptor is active, the input is active. When the input is active, it spikes at a rate von, and when the input is inactive, it spikes at a rate voff . Therefore, we define a synchronous spike bus that operates at a specified frequency, fspikebus. Inputs communicate spikes by posting their address, or identification number, on the spike bus. The address is only valid during the rising edge of the BusClock signal. For example, the input corresponding to OR 4 would post a binary 4 on the spike bus.
  • the spike bus is defined to be inactive when the address posted is 0. Now that the spike bus is defined, the system needs a component to convert binary inputs into spike trains. Inputs to the network dynamically change state due to noise and fluctuations in the odorant environment, represented by the Noisecounter block at 312 in FIG. 3 , and the “No” logic branch decision in the block for the detection mode. If the Bus Addressed in the Synapse is “true”, for the logic branch of the detection mode the Spike counter 309 , increases each time that a spike is received. Once the Spike counter 309 reaches a present threshold level 310 , the Spike counter 309 is reset to zero, and a decision is made about whether the neuron is active or inactive.
  • InterSpikeIntervalCounter is the time period that it took the Spikecounter to increment from 0 to threshold level.
  • the InterSpikeIntervalCounter directly proportional to the percentage of the neuron's learned inputs that are stimulated, which becomes the output signal.
  • 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.
  • 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.
  • the network modules combine memory and processing into independent cells that allow for nearly unlimited parallel detection of odor prototypes.
  • the system includes online learning so there is no need for offline training.
  • simulation shows that the algorithms for learning and detection function well in the presence of noise.

Landscapes

  • Chemical & Material Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Combustion & Propulsion (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Food Science & Technology (AREA)
  • Medicinal Chemistry (AREA)
  • Analytical Chemistry (AREA)
  • Biochemistry (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Immunology (AREA)
  • Pathology (AREA)
  • Investigating Or Analyzing Materials By The Use Of Electric Means (AREA)

Abstract

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.

Description

RIGHTS OF THE GOVERNMENT
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 INVENTION
The 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 INVENTION
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.
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.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram of the electronic nose arrangement of the invention.
FIG. 2 is a flow diagram showing independent units that combine logic and memory.
FIG. 3 is a flow diagram showing learning and detection.
DETAILED DESCRIPTION
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 FIG. 1, the spiking network can be instructed to learn which combination of odor receptors is most prevalent in the environment and then associate that set with an output neuron. Later, the associated neuron can detect when the learned scent is present. The spiking network handles many parallel inputs and outputs.
During training, illustrated in blocks 103 and 104 in FIG. 1, the system is presented with a scent for about sixty seconds and asked to learn via the training signal. This is similar to the manner in which a bloodhound is presented with the clothing of a missing person to be tracked. The training process assumes that the odor prototype to be learned is more present in the environment than any other prototype. During training, each odor receptor is sampled as a Bernoulli process at a rate of about 10Hz. When training is complete, the inputs that have been the most active are stored in the synapse list of the neuron that has been selected to learn the odor.
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. InputCounterThreshold   :=   ClockRate SpikeRateMin ( 1 ) ActiveCountAdd   :=   ClockRate SpikeRateMinSpikeRateMax
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.
FIG. 2 illustrates independent units that combine logic and memory to operate in parallel on a digital bus. The input modules 201 are connected to the neuron modules 203 by the spike bus 202 as shown in FIG. 2. The spike signal from an input is connected to the spike bus 202 using a priority encoder (not shown). The priority encoder posts the address of the input module on the spike bus. The neuron modules 203 are connected in parallel to the spike bus 202 by their potentiated synapse list. Neurons listen for spikes on the spike bus 202, and the number of listening output neurons can be unlimited. To minimize the logic circuit, the learning mechanism was moved from the neuron module to the input module. This works because only one neuron will undergo training at any given time, plus it has the advantage that a neuron can learn from any input in the system. It should be noted that the clock used to communicate spikes on the bus is much faster than the processing clock, so the number of allowed inputs can scale to a very large number.
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. OutputSpikeRate = SynapseCount SynapseIndex = 1 InputRate SynapseIndex SynapseCount ( 3 )
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.
FIG. 3 is a flow diagram showing learning and detection of an odor. The left side of the flow chart of FIG. 3 shows learning samples 300 taken on the rising edge of the learning clock 301. Each input has a sample counter 302. If the input is on when a sample is taken, the sample counter is incremented (this happens in parallel for each input). A global counter 303 increments 4 out of every 5 learning clock rising edges (which is, 8 out of 10). At the end of learning, 304, every input's sample counter, 302, is compared to the global counter, 303. If the sample counter 302 is greater than the global counter 303, then the input was on for at least 80% of the samples. This effectively tests for a sampling proportion of 80% during learning. Any input that was on during 80% of the learning samples is “learned”, and stored in the neuron's address list.
The right hand side of the flow graph of FIG. 3 shows detection, that is, a neuron listening to the spike bus. An input 305 communicates a spike by placing its input address 307 on the spike bus 306. The neuron has a list of address 308 which were learned using the left side of the flow graph of FIG. 3. Each spike on the spike bus is compared with the address list. (This comparison happens in parallel for all neurons.) When a spike address is in the address list, the Spike Counter 309 is incremented. Once the Spike Counter reaches a threshold 310, the neuron emits a spike and resets the Spike Counter to 0. The threshold is equal/proportional to the number of addresses stored in the address list. The time between neuron spikes is measured at 311. When the time between spikes is below a certain timing threshold, the neuron is considered ‘on’. When a neuron is ‘on’, it is detecting the odor that it learned. Conversely, when the time between spikes is above a certain threshold, the neuron is considered ‘off’, and the odor learned by the neuron is not present. When a spike address is not in the address list, Noise Counter 312 is incremented. When the Noise Counter 312 reaches a threshold 313, an amount is subtracted 314 from the Spike Counter. Also, the Noise Counter 312 resets to 0. This subtraction step is effectively inhibition. Subtraction makes it less likely that the neuron will fire before the timing threshold, and makes it more likely that a neuron will be ‘off’. This step helps to cancel the effect of noise in creating false detections.
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 FIG. 3, is 10 bits wide, plus another bit for the BusClock signal. Each input corresponds to an odor receptor. Once the spike bus is defined, the system needs a component to convert binary inputs into spike trains. The 11th bit of the spike bus is the ‘Save Address’ bit, and it signals to the synapse when an input should be saved. A synapse only responds to the ‘Save Address’ bit of the spike bus when (a) it is not already loaded with an address and (b) when it is enabled. A synapse is only enabled when the odor to which it belongs is selected. Only one synapse can ever be selected. Further, a synapse is only enabled when the synapse before it is loaded. The net result is that one, and only one synapse ever responds to the Save Address bit. When the odor receptor is active, the input is active. When the input is active, it spikes at a rate von, and when the input is inactive, it spikes at a rate voff . Therefore, we define a synchronous spike bus that operates at a specified frequency, fspikebus. Inputs communicate spikes by posting their address, or identification number, on the spike bus. The address is only valid during the rising edge of the BusClock signal. For example, the input corresponding to OR4 would post a binary 4 on the spike bus. The spike bus is defined to be inactive when the address posted is 0. Now that the spike bus is defined, the system needs a component to convert binary inputs into spike trains. Inputs to the network dynamically change state due to noise and fluctuations in the odorant environment, represented by the Noisecounter block at 312 in FIG. 3, and the “No” logic branch decision in the block for the detection mode. If the Bus Addressed in the Synapse is “true”, for the logic branch of the detection mode the Spike counter 309, increases each time that a spike is received. Once the Spike counter 309 reaches a present threshold level 310, the Spike counter 309 is reset to zero, and a decision is made about whether the neuron is active or inactive. The decision is based on the inter-spike-interval, InterSpikeIntervalCounter, which is the time period that it took the Spikecounter to increment from 0 to threshold level. The InterSpikeIntervalCounter directly proportional to the percentage of the neuron's learned inputs that are stimulated, which becomes the output signal.
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 (13)

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.
US10/810,429 2004-03-29 2004-03-29 Odor discrimination using binary spiking neural network Abandoned USH2215H1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/810,429 USH2215H1 (en) 2004-03-29 2004-03-29 Odor discrimination using binary spiking neural network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/810,429 USH2215H1 (en) 2004-03-29 2004-03-29 Odor discrimination using binary spiking neural network

Publications (1)

Publication Number Publication Date
USH2215H1 true USH2215H1 (en) 2008-04-01

Family

ID=39227454

Family Applications (1)

Application Number Title Priority Date Filing Date
US10/810,429 Abandoned USH2215H1 (en) 2004-03-29 2004-03-29 Odor discrimination using binary spiking neural network

Country Status (1)

Country Link
US (1) USH2215H1 (en)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8510239B2 (en) 2010-10-29 2013-08-13 International Business Machines Corporation Compact cognitive synaptic computing circuits with crossbar arrays spatially in a staggered pattern
US20150286924A1 (en) * 2012-07-30 2015-10-08 International Business Machines Corporation Scalable neural hardware for the noisy-or model of bayesian networks
US20160030320A1 (en) * 2011-05-26 2016-02-04 The Procter & Gamble Company Compositions comprising an efficient perfume bloom
US9665822B2 (en) 2010-06-30 2017-05-30 International Business Machines Corporation Canonical spiking neuron network for spatiotemporal associative memory
RU171691U1 (en) * 2016-12-28 2017-06-09 федеральное государственное автономное образовательное учреждение высшего образования "Национальный исследовательский университет "Высшая школа экономики" Small-sized electronic nose device for recognizing the smell of a wide class of chemicals
WO2017105517A1 (en) * 2015-12-18 2017-06-22 Hewlett Packard Enterprise Development Lp Memristor crossbar arrays to activate processors
US10416138B2 (en) 2016-09-29 2019-09-17 International Business Machines Corporation Sensing and adjusting the olfactory characteristics of a sample
US10412985B2 (en) 2016-09-29 2019-09-17 International Business Machines Corporation Identifying components based on observed olfactory characteristics
CN114586546A (en) * 2022-03-14 2022-06-07 西南大学 Automatic strawberry picking device based on electronic nose and image recognition and control method thereof
WO2023035745A1 (en) * 2021-09-08 2023-03-16 汉王科技股份有限公司 Olfactory receptor screening method and apparatus, model training method and apparatus, and wine product identification method and apparatus
US11636870B2 (en) 2020-08-20 2023-04-25 Denso International America, Inc. Smoking cessation systems and methods
US11760169B2 (en) 2020-08-20 2023-09-19 Denso International America, Inc. Particulate control systems and methods for olfaction sensors
US11760170B2 (en) 2020-08-20 2023-09-19 Denso International America, Inc. Olfaction sensor preservation systems and methods
US11813926B2 (en) 2020-08-20 2023-11-14 Denso International America, Inc. Binding agent and olfaction sensor
US11828210B2 (en) 2020-08-20 2023-11-28 Denso International America, Inc. Diagnostic systems and methods of vehicles using olfaction
US11881093B2 (en) 2020-08-20 2024-01-23 Denso International America, Inc. Systems and methods for identifying smoking in vehicles
US11932080B2 (en) 2020-08-20 2024-03-19 Denso International America, Inc. Diagnostic and recirculation control systems and methods
US12017506B2 (en) 2020-08-20 2024-06-25 Denso International America, Inc. Passenger cabin air control systems and methods

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030144746A1 (en) * 2000-03-10 2003-07-31 Chang-Meng Hsiung Control for an industrial process using one or more multidimensional variables

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030144746A1 (en) * 2000-03-10 2003-07-31 Chang-Meng Hsiung Control for an industrial process using one or more multidimensional variables

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Japan Patent Publication JP 05-187985, Fumihiro, 1992, Japan Patent Office, detailed description section. *
'MOS Fully Analog Reinforcement Neutral Network Chip': Al-Nsour, Abdel-Aty-Zohdy, 2001, IEEE, 0-7803-6685-9, 237-240. *
'Pulsed Neural Networks': Maass, Bishop, 1999, MIT Press, xiii-xix, p. 17-18. *

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9665822B2 (en) 2010-06-30 2017-05-30 International Business Machines Corporation Canonical spiking neuron network for spatiotemporal associative memory
US11176445B2 (en) 2010-06-30 2021-11-16 International Business Machines Corporation Canonical spiking neuron network for spatiotemporal associative memory
US11138492B2 (en) 2010-06-30 2021-10-05 International Business Machines Corporation Canonical spiking neuron network for spatiotemporal associative memory
US8510239B2 (en) 2010-10-29 2013-08-13 International Business Machines Corporation Compact cognitive synaptic computing circuits with crossbar arrays spatially in a staggered pattern
US20160030320A1 (en) * 2011-05-26 2016-02-04 The Procter & Gamble Company Compositions comprising an efficient perfume bloom
US9364409B2 (en) * 2011-05-26 2016-06-14 The Procter & Gamble Company Compositions comprising an efficient perfume bloom
US10449131B2 (en) 2011-05-26 2019-10-22 The Procter And Gamble Company Compositions comprising an efficient perfume bloom
US10198692B2 (en) 2012-07-30 2019-02-05 International Business Machines Corporation Scalable neural hardware for the noisy-OR model of Bayesian networks
US9189729B2 (en) * 2012-07-30 2015-11-17 International Business Machines Corporation Scalable neural hardware for the noisy-OR model of Bayesian networks
US20150286924A1 (en) * 2012-07-30 2015-10-08 International Business Machines Corporation Scalable neural hardware for the noisy-or model of bayesian networks
US11238343B2 (en) 2012-07-30 2022-02-01 International Business Machines Corporation Scalable neural hardware for the noisy-OR model of Bayesian networks
US11579677B2 (en) 2015-12-18 2023-02-14 Hewlett Packard Enterprise Development Lp Memristor crossbar arrays to activate processors
WO2017105517A1 (en) * 2015-12-18 2017-06-22 Hewlett Packard Enterprise Development Lp Memristor crossbar arrays to activate processors
US10416138B2 (en) 2016-09-29 2019-09-17 International Business Machines Corporation Sensing and adjusting the olfactory characteristics of a sample
US10412985B2 (en) 2016-09-29 2019-09-17 International Business Machines Corporation Identifying components based on observed olfactory characteristics
RU171691U1 (en) * 2016-12-28 2017-06-09 федеральное государственное автономное образовательное учреждение высшего образования "Национальный исследовательский университет "Высшая школа экономики" Small-sized electronic nose device for recognizing the smell of a wide class of chemicals
US11636870B2 (en) 2020-08-20 2023-04-25 Denso International America, Inc. Smoking cessation systems and methods
US11760169B2 (en) 2020-08-20 2023-09-19 Denso International America, Inc. Particulate control systems and methods for olfaction sensors
US11760170B2 (en) 2020-08-20 2023-09-19 Denso International America, Inc. Olfaction sensor preservation systems and methods
US11813926B2 (en) 2020-08-20 2023-11-14 Denso International America, Inc. Binding agent and olfaction sensor
US11828210B2 (en) 2020-08-20 2023-11-28 Denso International America, Inc. Diagnostic systems and methods of vehicles using olfaction
US11881093B2 (en) 2020-08-20 2024-01-23 Denso International America, Inc. Systems and methods for identifying smoking in vehicles
US11932080B2 (en) 2020-08-20 2024-03-19 Denso International America, Inc. Diagnostic and recirculation control systems and methods
US12017506B2 (en) 2020-08-20 2024-06-25 Denso International America, Inc. Passenger cabin air control systems and methods
WO2023035745A1 (en) * 2021-09-08 2023-03-16 汉王科技股份有限公司 Olfactory receptor screening method and apparatus, model training method and apparatus, and wine product identification method and apparatus
CN114586546A (en) * 2022-03-14 2022-06-07 西南大学 Automatic strawberry picking device based on electronic nose and image recognition and control method thereof

Similar Documents

Publication Publication Date Title
USH2215H1 (en) Odor discrimination using binary spiking neural network
Ghiassi et al. A dynamic artificial neural network model for forecasting time series events
CN108600212A (en) Threat information credibility method of discrimination and device based on the credible feature of various dimensions
Peraković et al. Artificial neuron network implementation in detection and classification of DDoS traffic
Dorado-Moreno et al. Robust estimation of wind power ramp events with reservoir computing
CN110231447A (en) The method, apparatus and terminal device of water quality abnormality detection
Kim et al. Untangling the contribution of input parameters to an artificial intelligence PM2. 5 forecast model using the layer-wise relevance propagation method
Delsy et al. Feasibility of Recurrent Neural Network for the Binary classification of Non stationary signals
Ojha et al. Identifying hazardousness of sewer pipeline gas mixture using classification methods: a comparative study
Yamazaki et al. Classification of vintages of wine by an artificial nose with neural networks
Bailey et al. Bioassessment of stream ecosystems enduring a decade of simulated degradation: lessons for the real world
Chang et al. Mote-based online anomaly detection using echo state networks
Ferreira et al. A new evolutionary method for time series forecasting
CN105160248A (en) Correlation pruning neural network based identification system and method for malicious process of Xen virtual machine
CN111950852A (en) User behavior analysis and guidance method and device, electronic equipment and readable storage device
Pornpanomchai et al. Beer classification by electronic nose
CN113378935B (en) Intelligent olfactory sensation identification method for gas
Allen et al. Spiking networks for biochemical detection
Sreelatha et al. Patten recognition for toxic gases based on electronic nose using artificial neural networks
Noroozi et al. Generation of Lyapunov functions by neural networks
Abdel-Aty-Zohdy et al. Plastic NNs for biochemical detection
CN104516858B (en) Phase diagram matrix method for nonlinear dynamic behavior analysis
CN112285541A (en) Fault diagnosis method for current frequency conversion circuit
Abdel-Aty-Zohdy Artificial neural network electronic nose for volatile organic compounds
Abdel-Aty-Zohdy et al. Spiking neural network e-nose classifier chip

Legal Events

Date Code Title Description
AS Assignment

Owner name: AIR FORCE, UNITED STATES OF AMERICA, THE, AS REPRE

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ALLEN, JACOB;EWING, ROBERT L.;ABDEL-ATY-ZOHDY, HODA S.;REEL/FRAME:015311/0043;SIGNING DATES FROM 20040405 TO 20040413

STCF Information on status: patent grant

Free format text: PATENTED CASE