| CPC G06N 3/063 (2013.01) [G06N 3/04 (2013.01); G11C 11/54 (2013.01); G11C 13/0004 (2013.01)] | 17 Claims |

|
1. An apparatus, comprising:
an array of memory cells;
a controller coupled to the memory array and configured to:
quantize an original neural network having non-binary elements to generate a first binary neural network including a first plurality of elements each having a value of one or zero;
generate a secondary binary neural network based on the first binary neural network by:
performing a plurality of linear transformations on weights of the first binary neural network to generate a first plurality of vectors;
performing drop out operations on the first plurality of vectors to generate a second plurality of vectors;
performing argmax transformations on at least one of the second plurality of vectors;
wherein the second binary neural network including a second plurality of elements each having a respective non-zero value corresponding to a resistive state storable in a memory cell of the array of memory cells;
store each of the second plurality of elements as a first resistive state or a second resistive state in the array of memory cells; and
execute the second binary neural network on the array by performing vector-matrix multiplication using the resistive states of the memory cells.
|