Back to results
US 11,538,513 B2Granted
Memory element for weight update in a neural network
AssigneeMicron Technology, Inc.
InventorsKarthik Sarpatwari, Fabio Pellizzer
Life of this patent
Estimating the term…
Abstract
An output, representing synaptic weights of a neural network can be received from first memory elements. The output can be compared to a known correct output. A random number can be generated with a tuned bias via second memory elements. The weights can be updated based on the random number and a difference between the output and the known correct output.
Claims25
A method, comprising:
- receiving an output from a first plurality of memory elements representing a plurality of synaptic weights of a neural network;
- comparing the output to a known correct output;
- generating a random number with a tuned bias via a second plurality of memory elements, wherein generating the random number comprises:
- applying a pulse to a quantity of the second plurality of memory elements, the pulse having a magnitude between pulses associated with a RESET state and a pulse associated with a SET state of the second plurality of memory elements;
- defining the quantity based on a difference between the output and the known correct output;
- and
- reading the second plurality of memory elements after applying the pulse;
- and
- updating the plurality of synaptic weights based on the random number and the difference between the output and the known correct output.
6 more elements
An apparatus, comprising:
- a first plurality of memory elements;
- a second plurality of memory elements comprising resistance variable memory elements;
- and
- a controller coupled to the first and the second pluralities of memory elements, wherein the controller is configured to:
- compare an output of the first plurality of memory elements, representing a plurality of synaptic weights of a neural network, to a known correct output;
- cause the second plurality of memory elements to generate a random number with a tuned bias based on a difference between the output of the first plurality of memory elements and the known correct output;
- and
- program the first plurality of memory elements to store an updated plurality of synaptic weights based on the random number.
5 more elements
An apparatus, comprising:
- a first plurality of memory elements;
- a second plurality of memory elements comprising resistance variable memory elements;
- a controller coupled to the first and the second pluralities of memory elements, wherein the controller is configured to:
- compare an output of the first plurality of memory elements, representing a plurality of synaptic weights of a neural network, to a known correct output;
- and
- cause the second plurality of memory elements to generate a random number with a tuned bias based on a difference between the output of the first plurality of memory elements and the known correct output;
- and
- a weight update circuit coupled to the first and the second pluralities of memory elements, wherein the weight update circuit is configured to:
- cause a randomly updated plurality of synaptic weights to be stored in the first plurality of memory elements based on the random number in response to an increase in a difference between the output and the known correct output.
6 more elements
Dependencies are inferred from the claim text.