Output-processing circuit for a neural network and method of using same
AssigneeMotorola, Inc.
InventorShay-Ping Thomas Wang
Life of this patent
Estimating the term…
Abstract
An output-processing circuit for a neural network, which may be implemented on an integrated circuit, comprises at least one latch and at least one adder. Outputs from a plurality of neurons are sequentially received by the output-processing circuit. The output-processing circuit uses gating functions to determine which neuron outputs are summed together to produce neural network outputs.
Claims19
A processing circuit for processing the output of an artificial neuron, said neuron generating a sequence of outputs, said processing circuit being coupled to said neuron outputs and to an output gating function, said processing circuit comprising:
- a latch responsive to one of said neuron outputs and to said output gating function, said latch generating an output representative of said neuron output or zero, depending upon the value of said output gating function;
- and
- an adder circuit for generating an output, said adder circuit being responsive to said latch output and to its own output.
A processing circuit for processing the outputs of a plurality of artificial neurons, each of said neurons generating a sequence of outputs, said processing circuit being coupled to said neuron outputs and to an output gating function, said processing circuit comprising:
- a latch responsive to at least one neuron output and to said output gating function, said latch generating an output representative of said at least one neuron output or zero, depending upon the value of said output gating function;
- and
- an adder circuit for generating an output, said adder circuit being responsive to said latch output and to its own output.
A processing circuit for processing the outputs of a plurality of artificial neurons, each of said neurons generating a sequence of outputs, said processing circuit being coupled to said neuron outputs and to output gating functions, said processing circuit comprising:
- a plurality of latches, each responsive to at least one neuron output and to one of said output gating functions, each latch generating an output representative of said at least one neuron output or zero, depending upon the value of said output gating function;
- and
- a plurality of adder circuits, each responsive to a respective one of said latch outputs and to its own output, for generating a plurality of respective outputs.
A processing circuit for selectively summing the output of an artificial neuron, said neuron generating a sequence of neuron outputs, said processing circuit comprising:
- first latch means, responsive to said sequence of neuron outputs, for selectively storing ones of said neuron outputs and for providing said ones of said neuron outputs as an output thereof;
- second latch means for providing an output;
- an adder circuit for generating a sum, said adder circuit having a first input responsive to the output of said first latch means and a second input responsive to the output of said second latch means;
- wherein said first latch means is further responsive to a plurality of gating functions g.sub.i, there being a gating function g.sub.i corresponding to each of said neuron outputs;
- said first latch means storing a given neuron output if g.sub.i is not 0;
- said given neuron output being applied to the input of said adder circuit and added to said sum if g.sub.i is not 0;
- wherein said second latch means is responsive to said sum for storing said sum and for providing said stored sum as said output thereof;
- and
- wherein said processing circuit generates an output which includes said sum.
A processing circuit for selectively summing the outputs of a plurality of artificial neurons, each of said neurons generating a sequence of neuron outputs, said processing circuit generating a plurality of neural network outputs, and said processing circuit comprising:
- a plurality of summers, each of said summers generating at least one of said neural network outputs, and each of said summers comprising:
- first latch means, responsive to at least one of said neuron outputs, for selectively storing ones of said neuron outputs and for providing said ones of said neuron outputs as an output thereof;
- second latch means for providing an output;
- an adder circuit for generating a sum, said adder circuit having a first input responsive to the output of said first latch means and a second input responsive to the output of said second latch means;
- wherein said first latch means is further responsive to a gating function g.sub.i, there being a gating function g.sub.i corresponding to each of said neuron outputs;
- said first latch means storing a given neuron output if g.sub.i is not 0;
- said given neuron output being applied to the input of said adder circuit and added to said sum if g.sub.i is not 0;
- wherein said second latch means is responsive to said sum for storing said sum and for providing said stored sum as an output thereof;
- and
- wherein said sum is included in said at least one of said neural network outputs.
In a processing circuit receiving a sequence of neuron outputs x.sub.i, wherein i is a positive integer, a method of producing a neural network output comprising the following steps:
- (a) receiving a first of said sequence of neuron outputs;
- (b) applying a first gating function to said neuron output to produce a first gated input;
- (c) adding said first gated input to a sum;
- (d) determining whether all of said sequence of neuron outputs have been received;
- (i) if so, assigning said sum as the output of said processing circuit;
- (ii) if not, proceeding to step (e);
- (e) receiving another of said sequence of neuron outputs;
- (f) applying another gating function to said neuron output to produce another gated input;
- (g) adding said another gated input to said sum to produce a further sum;
- and
- (h) returning to step (d) until all of said sequence of neuron outputs have been received.
In a neural network output-processing circuit responsive to a plurality of artificial neuron outputs x.sub.i, wherein i is a positive integer, said processing circuit generating a plurality of neural network outputs, each neuron output x.sub.i being received, in turn, by each of a plurality of summers, each summer generating at least one of said neural network outputs, a method of producing said plurality of neural network outputs comprising the following steps:
- (a) said processing circuit receiving a first of said plurality of neuron outputs x.sub.i ;
- (b) each of said summers applying a first gating function to said neuron output to produce a first gated input;
- (c) each of said summers adding said first gated input to a sum;
- (d) determining whether all of said plurality of neuron outputs have been received;
- (i) if so, assigning said sum as a corresponding one of said plurality of outputs of said processing circuit;
- (ii) if not, proceeding to step (e);
- (e) said processing circuit receiving another of said plurality of neuron outputs;
- (f) each of said summers applying another gating function to said another neuron output to produce another gated input;
- (g) each of said summers adding said another gated input to said sum to produce a further sum;
- and
- (h) returning to step (d) until all of said plurality of neuron outputs x.sub.i have been received.
Dependencies are inferred from the claim text.